You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Segment Replication - Fix NoSuchFileException errors caused when computing metadata snapshot on primary shards. (opensearch-project#4366)
* Segment Replication - Fix NoSuchFileException errors caused when computing metadata snapshot on primary shards.
This change fixes the errors that occur when computing metadata snapshots on primary shards from the latest in-memory SegmentInfos. The error occurs when a segments_N file that is referenced by the in-memory infos is deleted as part of a concurrent commit. The segments themselves are incref'd by IndexWriter.incRefDeleter but the commit file (Segments_N) is not. This change resolves this by ignoring the segments_N file when computing metadata for CopyState and only sending incref'd segment files to replicas.
Signed-off-by: Marc Handalian <[email protected]>
* Fix spotless.
Signed-off-by: Marc Handalian <[email protected]>
* Update StoreTests.testCleanupAndPreserveLatestCommitPoint to assert additional segments are deleted.
Signed-off-by: Marc Handalian <[email protected]>
* Rename snapshot to metadataMap in CheckpointInfoResponse.
Signed-off-by: Marc Handalian <[email protected]>
* Refactor segmentReplicationDiff method to compute off two maps instead of MetadataSnapshots.
Signed-off-by: Marc Handalian <[email protected]>
* Fix spotless.
Signed-off-by: Marc Handalian <[email protected]>
* Revert catchall in SegmentReplicationSourceService.
Signed-off-by: Marc Handalian <[email protected]>
* Revert log lvl change.
Signed-off-by: Marc Handalian <[email protected]>
* Fix SegmentReplicationTargetTests
Signed-off-by: Marc Handalian <[email protected]>
* Cleanup unused logger.
Signed-off-by: Marc Handalian <[email protected]>
Signed-off-by: Marc Handalian <[email protected]>
Co-authored-by: Suraj Singh <[email protected]>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1
Original file line number
Diff line number
Diff line change
@@ -53,6 +53,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
53
53
-[Segment Replication] Extend FileChunkWriter to allow cancel on transport client ([#4386](https://github.com/opensearch-project/OpenSearch/pull/4386))
54
54
-[Segment Replication] Fix NoSuchFileExceptions with segment replication when computing primary metadata snapshots ([#4366](https://github.com/opensearch-project/OpenSearch/pull/4366))
55
55
-[Segment Replication] Fix timeout issue by calculating time needed to process getSegmentFiles ([#4434](https://github.com/opensearch-project/OpenSearch/pull/4434))
56
+
-[Segment Replication] Update replicas to commit SegmentInfos instead of relying on segments_N from primary shards.
0 commit comments