diff --git a/build/scripts/scripts.fsproj b/build/scripts/scripts.fsproj index e7a485e6c34..6cce8b04b6f 100644 --- a/build/scripts/scripts.fsproj +++ b/build/scripts/scripts.fsproj @@ -34,7 +34,6 @@ make-release-notes.yml - diff --git a/src/Elastic.Clients.Elasticsearch/Elastic.Clients.Elasticsearch.csproj b/src/Elastic.Clients.Elasticsearch/Elastic.Clients.Elasticsearch.csproj index 4cf6bbb67de..877361099ae 100644 --- a/src/Elastic.Clients.Elasticsearch/Elastic.Clients.Elasticsearch.csproj +++ b/src/Elastic.Clients.Elasticsearch/Elastic.Clients.Elasticsearch.csproj @@ -20,6 +20,10 @@ + + all + runtime; build; native; contentfiles; analyzers + diff --git a/src/Elastic.Clients.Elasticsearch/Helpers/BulkAllObservable.cs b/src/Elastic.Clients.Elasticsearch/Helpers/BulkAllObservable.cs index 513985b0362..e086768de86 100644 --- a/src/Elastic.Clients.Elasticsearch/Helpers/BulkAllObservable.cs +++ b/src/Elastic.Clients.Elasticsearch/Helpers/BulkAllObservable.cs @@ -56,6 +56,7 @@ private void BulkAll(IObserver observer) var documents = _partitionedBulkRequest.Documents; var partitioned = new PartitionHelper(documents, _bulkSize); #pragma warning disable 4014 +#pragma warning disable VSTHRD110 // Observe result of async calls partitioned.ForEachAsync( #pragma warning restore 4014 (buffer, page) => BulkAsync(buffer, page, 0), @@ -63,6 +64,7 @@ private void BulkAll(IObserver observer) ex => OnCompleted(ex, observer), _maxDegreeOfParallelism ); +#pragma warning restore VSTHRD110 // Observe result of async calls } private void OnCompleted(Exception exception, IObserver observer) @@ -152,7 +154,7 @@ private async Task BulkAsync(IList buffer, long page, int ba _bulkResponseCallback?.Invoke(response); if (!response.ApiCall.Success) - return await HandleBulkRequest(buffer, page, backOffRetries, response).ConfigureAwait(false); + return await HandleBulkRequestAsync(buffer, page, backOffRetries, response).ConfigureAwait(false); var retryableDocuments = new List(); var droppedDocuments = new List>(); @@ -171,7 +173,7 @@ private async Task BulkAsync(IList buffer, long page, int ba HandleDroppedDocuments(droppedDocuments, response); if (retryableDocuments.Count > 0 && backOffRetries < _backOffRetries) - return await RetryDocuments(page, ++backOffRetries, retryableDocuments).ConfigureAwait(false); + return await RetryDocumentsAsync(page, ++backOffRetries, retryableDocuments).ConfigureAwait(false); if (retryableDocuments.Count > 0) throw ThrowOnBadBulk(response, $"Bulk indexing failed and after retrying {backOffRetries} times"); @@ -193,7 +195,7 @@ private void HandleDroppedDocuments(List> dropped throw ThrowOnBadBulk(response, $"{nameof(BulkAll)} halted after receiving failures that can not be retried from _bulk"); } - private async Task HandleBulkRequest(IList buffer, long page, int backOffRetries, BulkResponse response) + private async Task HandleBulkRequestAsync(IList buffer, long page, int backOffRetries, BulkResponse response) { var clientException = response.ApiCall.OriginalException as TransportException; var failureReason = clientException?.FailureReason; @@ -205,7 +207,7 @@ private async Task HandleBulkRequest(IList buffer, long page throw ThrowOnBadBulk(response, $"{nameof(BulkAll)} halted after attempted bulk failed over all the active nodes"); ThrowOnExhaustedRetries(); - return await RetryDocuments(page, ++backOffRetries, buffer).ConfigureAwait(false); + return await RetryDocumentsAsync(page, ++backOffRetries, buffer).ConfigureAwait(false); case PipelineFailure.CouldNotStartSniffOnStartup: case PipelineFailure.BadAuthentication: case PipelineFailure.NoNodesAttempted: @@ -218,7 +220,7 @@ private async Task HandleBulkRequest(IList buffer, long page case PipelineFailure.BadRequest: default: ThrowOnExhaustedRetries(); - return await RetryDocuments(page, ++backOffRetries, buffer).ConfigureAwait(false); + return await RetryDocumentsAsync(page, ++backOffRetries, buffer).ConfigureAwait(false); } void ThrowOnExhaustedRetries() @@ -231,7 +233,7 @@ void ThrowOnExhaustedRetries() } } - private async Task RetryDocuments(long page, int backOffRetries, IList retryDocuments) + private async Task RetryDocumentsAsync(long page, int backOffRetries, IList retryDocuments) { _incrementRetries(); await Task.Delay(_backOffTime, _compositeCancelToken).ConfigureAwait(false); diff --git a/src/Elastic.Clients.Elasticsearch/packages.lock.json b/src/Elastic.Clients.Elasticsearch/packages.lock.json index 64d049d21c1..f4dc782f6e7 100644 --- a/src/Elastic.Clients.Elasticsearch/packages.lock.json +++ b/src/Elastic.Clients.Elasticsearch/packages.lock.json @@ -37,6 +37,12 @@ "Microsoft.SourceLink.Common": "1.0.0" } }, + "Microsoft.VisualStudio.Threading.Analyzers": { + "type": "Direct", + "requested": "[17.1.46, )", + "resolved": "17.1.46", + "contentHash": "7pImoMcQaWZYAwu1aDBB8yBkvgad13yjrRHQ65pwHMX757vZ49OrNaEuRSLDu2PjZGonsTkQAJK8JK4W/wW4bw==" + }, "Microsoft.Build.Tasks.Git": { "type": "Transitive", "resolved": "1.0.0", @@ -129,6 +135,12 @@ "Microsoft.SourceLink.Common": "1.0.0" } }, + "Microsoft.VisualStudio.Threading.Analyzers": { + "type": "Direct", + "requested": "[17.1.46, )", + "resolved": "17.1.46", + "contentHash": "7pImoMcQaWZYAwu1aDBB8yBkvgad13yjrRHQ65pwHMX757vZ49OrNaEuRSLDu2PjZGonsTkQAJK8JK4W/wW4bw==" + }, "Microsoft.Bcl.AsyncInterfaces": { "type": "Transitive", "resolved": "6.0.0", @@ -266,6 +278,12 @@ "Microsoft.SourceLink.Common": "1.0.0" } }, + "Microsoft.VisualStudio.Threading.Analyzers": { + "type": "Direct", + "requested": "[17.1.46, )", + "resolved": "17.1.46", + "contentHash": "7pImoMcQaWZYAwu1aDBB8yBkvgad13yjrRHQ65pwHMX757vZ49OrNaEuRSLDu2PjZGonsTkQAJK8JK4W/wW4bw==" + }, "NETStandard.Library": { "type": "Direct", "requested": "[2.0.3, )", @@ -509,6 +527,12 @@ "Microsoft.SourceLink.Common": "1.0.0" } }, + "Microsoft.VisualStudio.Threading.Analyzers": { + "type": "Direct", + "requested": "[17.1.46, )", + "resolved": "17.1.46", + "contentHash": "7pImoMcQaWZYAwu1aDBB8yBkvgad13yjrRHQ65pwHMX757vZ49OrNaEuRSLDu2PjZGonsTkQAJK8JK4W/wW4bw==" + }, "Microsoft.Bcl.AsyncInterfaces": { "type": "Transitive", "resolved": "6.0.0", @@ -631,6 +655,12 @@ "Microsoft.SourceLink.Common": "1.0.0" } }, + "Microsoft.VisualStudio.Threading.Analyzers": { + "type": "Direct", + "requested": "[17.1.46, )", + "resolved": "17.1.46", + "contentHash": "7pImoMcQaWZYAwu1aDBB8yBkvgad13yjrRHQ65pwHMX757vZ49OrNaEuRSLDu2PjZGonsTkQAJK8JK4W/wW4bw==" + }, "Microsoft.Build.Tasks.Git": { "type": "Transitive", "resolved": "1.0.0", @@ -714,6 +744,12 @@ "Microsoft.SourceLink.Common": "1.0.0" } }, + "Microsoft.VisualStudio.Threading.Analyzers": { + "type": "Direct", + "requested": "[17.1.46, )", + "resolved": "17.1.46", + "contentHash": "7pImoMcQaWZYAwu1aDBB8yBkvgad13yjrRHQ65pwHMX757vZ49OrNaEuRSLDu2PjZGonsTkQAJK8JK4W/wW4bw==" + }, "Microsoft.Build.Tasks.Git": { "type": "Transitive", "resolved": "1.0.0",