DocumentClient.Dispose()

时间:2019-02-07 22:40:43

标签: azure-cosmosdb

我们遇到了一个问题,即在使用CosmosDb之后,如果不久之后尝试处置DocumentClient,则会发生异常。在处理之前等待几秒钟不会导致异常。我们已经确认,每个异步调用都使用await。

伪代码:

using(DocumentClient documentClient = new DocumentClient(...params)) {
    IOrderedQueryable<T> query = this.documentClient.CreateDocumentQuery<T>(...params);

    IList<T> documents;
    using (IDocumentQuery<T> documentQuery = query.AsDocumentQuery()) {
        documents = (await documentQuery.ExecuteNextAsync<T>()).ToList();
    }
    // Processing...
}

该异常指出:

LoadBalancingChannel rntbd://[ip].documents.azure.com:[port]/ in use

在调用DocumentClient.Dispose之前,已成功返回调用的API(正确返回了所有文档)。 有人见过这种例外吗?搜索未找到任何结果。

1 个答案:

答案 0 :(得分:0)

如果DocumentClient在待处理请求期间被处置,则可能发生。此问题已在SDK版本2.2.2中解决,请升级到最新的SDK版本。