-
Notifications
You must be signed in to change notification settings - Fork 2.3k
[Pull-based Ingestion] Support all-active mode in pull-based ingestion #19316
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
[Pull-based Ingestion] Support all-active mode in pull-based ingestion #19316
Conversation
73068b4 to
202c295
Compare
|
❌ Gradle check result for 202c295: 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? |
202c295 to
99993fd
Compare
|
❌ Gradle check result for 99993fd: 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? |
99993fd to
c613264
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #19316 +/- ##
============================================
- Coverage 72.89% 72.86% -0.04%
+ Complexity 69870 69809 -61
============================================
Files 5673 5674 +1
Lines 320754 320831 +77
Branches 46367 46383 +16
============================================
- Hits 233824 233758 -66
- Misses 68012 68093 +81
- Partials 18918 18980 +62 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
…atible Signed-off-by: Varun Bharadwaj <[email protected]>
fb57948 to
6152478
Compare
|
❌ Gradle check result for 6152478: null 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? |
|
❌ Gradle check result for 6152478: 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? |
6152478 to
08a64bc
Compare
server/src/main/java/org/opensearch/indices/pollingingest/IngestionEngineFactory.java
Outdated
Show resolved
Hide resolved
08a64bc to
eceb1d0
Compare
Signed-off-by: Varun Bharadwaj <[email protected]>
eceb1d0 to
9b0bdf8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
opensearch-project#19316) Support docrep equivalent in pull-based ingestion --------- Signed-off-by: Varun Bharadwaj <[email protected]> Co-authored-by: Marc Handalian <[email protected]>
opensearch-project#19316) Support docrep equivalent in pull-based ingestion --------- Signed-off-by: Varun Bharadwaj <[email protected]> Co-authored-by: Marc Handalian <[email protected]> Signed-off-by: Ankit Jain <[email protected]>
opensearch-project#19316) Support docrep equivalent in pull-based ingestion --------- Signed-off-by: Varun Bharadwaj <[email protected]> Co-authored-by: Marc Handalian <[email protected]> Signed-off-by: Ankit Jain <[email protected]>
opensearch-project#19316) Support docrep equivalent in pull-based ingestion --------- Signed-off-by: Varun Bharadwaj <[email protected]> Co-authored-by: Marc Handalian <[email protected]>
opensearch-project#19316) Support docrep equivalent in pull-based ingestion --------- Signed-off-by: Varun Bharadwaj <[email protected]> Co-authored-by: Marc Handalian <[email protected]>
opensearch-project#19316) Support docrep equivalent in pull-based ingestion --------- Signed-off-by: Varun Bharadwaj <[email protected]> Co-authored-by: Marc Handalian <[email protected]>
Description
Pull-based ingestion today only supports segment replication. This PR adds an all-active mode where the replica also indexes the documents. This is done by having the replica shards ingest from the streaming source independently and process the messages when the all-active ingestion mode is enabled. The replicas will continue to use the peer recovery mode during shard reinitialization. Note that there is no replication or coordination between the primary and replicas in this mode, as each of them will ingest and index independently.
This mode can be expected to support better throughput in comparison to traditional doc-rep, and also provide better freshness as there is no replication delays.
The GetIngestionState API is enhanced to include primary and node name in the response to differentiate in the response.
Related Issues
Resolves #19287
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.