-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement interface changes for s3 plugin to read/write blob with obj… #13113
Implement interface changes for s3 plugin to read/write blob with obj… #13113
Conversation
❌ Gradle check result for fe8ba21: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
Compatibility status:Checks if related components are compatible with change e947a3c Incompatible componentsSkipped componentsCompatible componentsCompatible components: [https://github.com/opensearch-project/custom-codecs.git, https://github.com/opensearch-project/asynchronous-search.git, https://github.com/opensearch-project/neural-search.git, https://github.com/opensearch-project/flow-framework.git, https://github.com/opensearch-project/job-scheduler.git, https://github.com/opensearch-project/security-analytics.git, https://github.com/opensearch-project/reporting.git, https://github.com/opensearch-project/cross-cluster-replication.git, https://github.com/opensearch-project/opensearch-oci-object-storage.git, https://github.com/opensearch-project/k-nn.git, https://github.com/opensearch-project/geospatial.git, https://github.com/opensearch-project/notifications.git, https://github.com/opensearch-project/observability.git, https://github.com/opensearch-project/common-utils.git, https://github.com/opensearch-project/performance-analyzer-rca.git, https://github.com/opensearch-project/anomaly-detection.git, https://github.com/opensearch-project/index-management.git, https://github.com/opensearch-project/security.git, https://github.com/opensearch-project/alerting.git, https://github.com/opensearch-project/sql.git, https://github.com/opensearch-project/ml-commons.git, https://github.com/opensearch-project/performance-analyzer.git] |
fe8ba21
to
4ac7006
Compare
❌ Gradle check result for 4ac7006: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
…ect metadata Signed-off-by: Sandeep Kumawat <skumwt@amazon.com>
4ac7006
to
ca99c35
Compare
❕ Gradle check result for ca99c35: UNSTABLE
Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #13113 +/- ##
============================================
+ Coverage 71.42% 71.51% +0.09%
- Complexity 59978 60529 +551
============================================
Files 4985 5027 +42
Lines 282275 284598 +2323
Branches 40946 41219 +273
============================================
+ Hits 201603 203538 +1935
- Misses 63999 64253 +254
- Partials 16673 16807 +134 ☔ View full report in Codecov by Sentry. |
@skumawat2025 nit - Instead of non-async, you can mention it as sync.
Which plugin is it? |
libs/common/src/main/java/org/opensearch/common/io/InputStreamContainer.java
Outdated
Show resolved
Hide resolved
plugins/repository-s3/src/main/java/org/opensearch/repositories/s3/async/UploadRequest.java
Show resolved
Hide resolved
plugins/repository-s3/src/main/java/org/opensearch/repositories/s3/S3BlobContainer.java
Outdated
Show resolved
Hide resolved
plugins/repository-s3/src/main/java/org/opensearch/repositories/s3/S3BlobContainer.java
Show resolved
Hide resolved
plugins/repository-s3/src/main/java/org/opensearch/repositories/s3/S3BlobContainer.java
Outdated
Show resolved
Hide resolved
plugins/repository-s3/src/main/java/org/opensearch/repositories/s3/S3RetryingInputStream.java
Outdated
Show resolved
Hide resolved
...s/repository-s3/src/main/java/org/opensearch/repositories/s3/async/AsyncTransferManager.java
Outdated
Show resolved
Hide resolved
...s/repository-s3/src/main/java/org/opensearch/repositories/s3/async/AsyncTransferManager.java
Outdated
Show resolved
Hide resolved
...pository-s3/src/test/java/org/opensearch/repositories/s3/S3BlobContainerMockClientTests.java
Outdated
Show resolved
Hide resolved
.../repository-s3/src/test/java/org/opensearch/repositories/s3/S3BlobContainerRetriesTests.java
Show resolved
Hide resolved
Signed-off-by: Sandeep Kumawat <skumwt@amazon.com>
❕ Gradle check result for f6d01db: UNSTABLE
Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure. |
Flaky Test: #10558 |
❕ Gradle check result for 38903af: UNSTABLE
Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure. |
38903af
to
8247c56
Compare
❌ Gradle check result for 8247c56: FAILURE Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change? |
8247c56
to
44be3f2
Compare
...s/repository-s3/src/main/java/org/opensearch/repositories/s3/async/AsyncTransferManager.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/opensearch/common/blobstore/FetchBlobResult.java
Show resolved
Hide resolved
Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
❕ Gradle check result for e947a3c: UNSTABLE
Please review all flaky tests that succeeded after retry and create an issue if one does not already exist to track the flaky failure. |
The backport to
To backport manually, run these commands in your terminal: # Navigate to the root of your repository
cd $(git rev-parse --show-toplevel)
# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add ../.worktrees/OpenSearch/backport-2.x 2.x
# Navigate to the new working tree
pushd ../.worktrees/OpenSearch/backport-2.x
# Create a new branch
git switch --create backport/backport-13113-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 73453718a1c85565a3f7e4309d6fa83bf9a30522
# Push it to GitHub
git push --set-upstream origin backport/backport-13113-to-2.x
# Go back to the original working tree
popd
# Delete the working tree
git worktree remove ../.worktrees/OpenSearch/backport-2.x Then, create a pull request where the |
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com> Co-authored-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: Sandeep Kumawat <2025sandeepkumawat@gmail.com>
opensearch-project#13113) (opensearch-project#13765) * Implement interface changes for s3 plugin to read/write blob with object metadata --------- Signed-off-by: Sandeep Kumawat <skumwt@amazon.com> Signed-off-by: kkewwei <kkewwei@163.com>
…ect metadata
Description
This PR is a sub task of feature request #13022. And is being tracked here #13091.
This PR implement interfaces changes for s3 plugin introduced as part of PR #13023 to read/write blob object with object metadata.
This PR includes changes for following flows -
asyncBlobUpload()
) (currently in use for translog/segments upload in s3 plugin)writeBlobAtomic()
) (currently in use for other blob stores Azure, GCP)readBlob()
) (currently in use for translog download in s3 plugin)Related Issues
Resolves #13093
Check List
Commit changes are listed out in CHANGELOG.md file (See: Changelog)Public documentation issue/PR createdBy submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.