OpenSearch
OpenSearch copied to clipboard
[Remote Store] Add support to separate segment infos snapshot from metadata
Description
- Currently, in remote backed index, we upload segment metadata to remote store which also contains
SegmentInfosSnapshot. - This was done as part of https://github.com/opensearch-project/OpenSearch/pull/7777 to keep metadata and SegmentInfos consistent with each other.
- By combining metadata and SegmentInfosSnapshot, we are combining data and metadata and this coupling will create issue s where we try to use separate remote stores for data and metadata (https://github.com/opensearch-project/OpenSearch/pull/12993)
- The inconsistency problem existed as we used to overwrite metadata and SegmentInfosSnapshot files for a given segment generation.
- In https://github.com/opensearch-project/OpenSearch/pull/8363, we made metadata file immutable.
- Using the same concept of immutability, we can separate out SegmentInfosSnapshot and avoid the inconsistency problem.
- In this PR, we provide a setting that controls if the SegmentInfosSnapshot can be combined with the metadata or not.
Related Issues
Resolves #13129
Check List
- [x] New functionality includes testing.
- [x] All tests pass
- [ ] ~New functionality has been documented.~
- [ ] ~New functionality has javadoc added~
- [ ] ~Failing checks are inspected and point to the corresponding known issue(s) (See: Troubleshooting Failing Builds)~
- [x] Commits are signed per the DCO using --signoff
- [x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)
- [ ] ~Public documentation issue/PR created~
By 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.
:x: Gradle check result for 7052acaf4be4af8a68ed1d4e50b4b50766435efb: 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 d097388
Incompatible components
Skipped components
Compatible components
Compatible components: [https://github.com/opensearch-project/custom-codecs.git, https://github.com/opensearch-project/flow-framework.git, https://github.com/opensearch-project/neural-search.git, https://github.com/opensearch-project/cross-cluster-replication.git, https://github.com/opensearch-project/observability.git, https://github.com/opensearch-project/job-scheduler.git, https://github.com/opensearch-project/security-analytics.git, https://github.com/opensearch-project/opensearch-oci-object-storage.git, https://github.com/opensearch-project/geospatial.git, https://github.com/opensearch-project/notifications.git, https://github.com/opensearch-project/k-nn.git, https://github.com/opensearch-project/asynchronous-search.git, https://github.com/opensearch-project/ml-commons.git, https://github.com/opensearch-project/reporting.git, https://github.com/opensearch-project/sql.git, https://github.com/opensearch-project/common-utils.git, https://github.com/opensearch-project/index-management.git, https://github.com/opensearch-project/anomaly-detection.git, https://github.com/opensearch-project/security.git, https://github.com/opensearch-project/alerting.git, https://github.com/opensearch-project/performance-analyzer-rca.git, https://github.com/opensearch-project/performance-analyzer.git]
:white_check_mark: Gradle check result for a4cc193f156f4dc85c0ef909d10c29ac7982cfd0: SUCCESS
Codecov Report
Attention: Patch coverage is 44.18605% with 24 lines in your changes missing coverage. Please review.
Project coverage is 71.36%. Comparing base (
b15cb0c) to head (a4cc193). Report is 443 commits behind head on main.
:exclamation: Current head a4cc193 differs from pull request most recent head d097388
Please upload reports for the commit d097388 to get more accurate results.
Additional details and impacted files
@@ Coverage Diff @@
## main #13114 +/- ##
============================================
- Coverage 71.42% 71.36% -0.06%
- Complexity 59978 60453 +475
============================================
Files 4985 5026 +41
Lines 282275 284553 +2278
Branches 40946 41218 +272
============================================
+ Hits 201603 203072 +1469
- Misses 63999 64704 +705
- Partials 16673 16777 +104
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
:x: Gradle check result for 9cef8ae085e544bd068d758b47dcce3c1986238c: 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?
:x: Gradle check result for a9d1269c40be4022a6ff7e127793f11447f4006c: 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?
:x: Gradle check result for 84557bc6ab633d37e578a1ed1da812c5157f3253: 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?
:x: Gradle check result for d605254f50f89f45153a52dbae19f2634f8d6c4b: 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?
:x: Gradle check result for a2cb249c83e9251dbd3b9c6d37aee19877544218: 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?
:x: Gradle check result for 65656af33659f0e25d7d7c13ab0b5825c01740b8: 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?
:x: Gradle check result for 40206cbe27e85f5e9a834a364bdf3991a6944a6e: 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?
:x: Gradle check result for d09738820ea615ced49aa90abacbc3f2abd2b45a: 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?
@sachinpkale can we please tag this to an opensearch release?
[Storage Triage - attendees 1 2 3 4 5 6 7 8 9 10 11 12 13]
@sachinpkale Thanks for opening this PR. Lets resolve the conflicts and update the new release target label
This PR is stalled because it has been open for 30 days with no activity.
This PR is stalled because it has been open for 30 days with no activity.