Skip to content
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

[Concurrent Segment Search]: Implement concurrent aggregations support without profile option #7514

Merged
merged 5 commits into from Jun 6, 2023

Conversation

sohami
Copy link
Collaborator

@sohami sohami commented May 11, 2023

Description

Implementation to support non global aggregations with concurrent segment search execution path. This change enables queries with aggregation clause to run with concurrent search model. It currently still uses sequential path for global aggregation as this is handled separately. Also search request with profile option is not handled in this PR and will be done in a follow-up PR.

This PR is updated to support Global Aggregations as well in concurrent mode

Related Issues

#7353

Check List

  • New functionality includes testing.
    • All tests pass
  • New functionality has been documented.
    • New functionality has javadoc added
  • Commits are signed per the DCO using --signoff
  • Commit changes are listed out in CHANGELOG.md file (See: Changelog)

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.

@sohami
Copy link
Collaborator Author

sohami commented May 11, 2023

@reta @nknize @andrross @kotwanikunal Tagging to get some review feedback

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

  • RESULT: UNSTABLE ❕
  • TEST FAILURES:
      1 org.opensearch.search.SearchModuleTests.testIndexSearcher
      1 org.opensearch.remotestore.SegmentReplicationRemoteStoreIT.testPitCreatedOnReplica
      1 org.opensearch.remotestore.SegmentReplicationRemoteStoreIT.classMethod

@codecov-commenter
Copy link

codecov-commenter commented May 11, 2023

Codecov Report

Merging #7514 (62005f7) into main (ecd0879) will decrease coverage by 0.01%.
The diff coverage is 73.87%.

❗ Current head 62005f7 differs from pull request most recent head 355fcb7. Consider uploading reports for the commit 355fcb7 to get more accurate results

@@             Coverage Diff              @@
##               main    #7514      +/-   ##
============================================
- Coverage     70.74%   70.74%   -0.01%     
- Complexity    56201    56220      +19     
============================================
  Files          4687     4695       +8     
  Lines        266242   266362     +120     
  Branches      39096    39105       +9     
============================================
+ Hits         188364   188446      +82     
- Misses        61905    61969      +64     
+ Partials      15973    15947      -26     
Impacted Files Coverage Δ
...pensearch/action/search/TransportSearchAction.java 70.56% <0.00%> (-0.44%) ⬇️
...search/aggregations/SearchContextAggregations.java 100.00% <ø> (ø)
...nsearch/search/internal/FilteredSearchContext.java 9.17% <0.00%> (-0.09%) ⬇️
.../org/opensearch/search/internal/SearchContext.java 37.20% <ø> (ø)
...main/java/org/opensearch/search/SearchService.java 71.99% <25.00%> (ø)
...arch/aggregations/DefaultAggregationProcessor.java 48.78% <48.78%> (ø)
...va/org/opensearch/search/DefaultSearchContext.java 78.68% <50.00%> (-0.24%) ⬇️
.../GlobalAggCollectorManagerWithSingleCollector.java 62.50% <62.50%> (ø)
...h/aggregations/ConcurrentAggregationProcessor.java 70.00% <70.00%> (ø)
...arch/aggregations/AggregationCollectorManager.java 72.72% <72.72%> (ø)
... and 15 more

... and 458 files with indirect coverage changes

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

  • RESULT: UNSTABLE ❕
  • TEST FAILURES:
      1 org.opensearch.search.SearchModuleTests.testIndexSearcher

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

  • RESULT: UNSTABLE ❕
  • TEST FAILURES:
      1 org.opensearch.remotestore.SegmentReplicationRemoteStoreIT.testScrollWithOngoingSegmentReplication
      1 org.opensearch.remotestore.RemoteStoreRefreshListenerIT.testRemoteRefreshRetryOnFailure

@github-actions
Copy link
Contributor

github-actions bot commented Jun 2, 2023

Gradle Check (Jenkins) Run Completed with:

  • RESULT: UNSTABLE ❕
  • TEST FAILURES:
      1 org.opensearch.search.backpressure.SearchBackpressureIT.testSearchShardTaskCancellationWithHighCpu

@gashutos
Copy link
Contributor

gashutos commented Jun 5, 2023

@sohami it looks pretty good (at least to me), I have a few minor comments to get rid of assertions for null values but LGTM otherwise! 👏 👏 👏 @nknize @gashutos have time to look?

Ack @reta ! Will be taking a look by today/tomorrow

Apologies, just started looking (with very limited bandwidth until Thursday) but I think I will take some time to go over, but given this PR is open since long and reviewed by Reta, please go ahead and merge, I will still review post merge and suggest changes if get some better way...

@sohami
Copy link
Collaborator Author

sohami commented Jun 6, 2023

@sohami it looks pretty good (at least to me), I have a few minor comments to get rid of assertions for null values but LGTM otherwise! 👏 👏 👏 @nknize @gashutos have time to look?

Ack @reta ! Will be taking a look by today/tomorrow

Apologies, just started looking (with very limited bandwidth until Thursday) but I think I will take some time to go over, but given this PR is open since long and reviewed by Reta, please go ahead and merge, I will still review post merge and suggest changes if get some better way...

@reta Can we merge this PR if it looks good to you ? I can address comments from @gashutos when he gets chance to take a look.

@reta reta merged commit c81668c into opensearch-project:main Jun 6, 2023
8 checks passed
@reta
Copy link
Collaborator

reta commented Jun 6, 2023

@sohami we are backporting it to 2.x?

@reta reta added the Search Search query, autocomplete ...etc label Jun 6, 2023
@sohami
Copy link
Collaborator Author

sohami commented Jun 6, 2023

@sohami we are backporting it to 2.x?

Yes. Should I cherry-pick all the commits to 2.x and create another PR for that ?

@reta reta added the backport 2.x Backport to 2.x branch label Jun 6, 2023
@opensearch-trigger-bot
Copy link
Contributor

The backport to 2.x failed:

The process '/usr/bin/git' failed with exit code 128

To backport manually, run these commands in your terminal:

# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add ../.worktrees/backport-2.x 2.x
# Navigate to the new working tree
pushd ../.worktrees/backport-2.x
# Create a new branch
git switch --create backport/backport-7514-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 c81668c917323b928afcf13ddd3d1db644057680
# Push it to GitHub
git push --set-upstream origin backport/backport-7514-to-2.x
# Go back to the original working tree
popd
# Delete the working tree
git worktree remove ../.worktrees/backport-2.x

Then, create a pull request where the base branch is 2.x and the compare/head branch is backport/backport-7514-to-2.x.

@reta
Copy link
Collaborator

reta commented Jun 6, 2023

@sohami ^^ yeah, automation failed, please send pull request manually, thank you

sohami added a commit to sohami/OpenSearch that referenced this pull request Jun 6, 2023
…t without profile option (opensearch-project#7514)

* Refactoring of AggregationReduceContext to use in SearchContext. This will be used for performing shard level reduce of aggregations during concurrent segment search usecase

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Support for non global aggregations with concurrent segment search. This PR does not include the support for
profile option with aggregations to work with concurrent model

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Implement AggregationCollectorManager's reduce

Signed-off-by: Andriy Redko <andriy.redko@aiven.io>

* Use CollectorManager for both concurrent and non concurrent use case
Add CollectorManager for Global Aggregations to support concurrent use case

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>
sohami added a commit to sohami/OpenSearch that referenced this pull request Jun 7, 2023
…t without profile option (opensearch-project#7514)

* Refactoring of AggregationReduceContext to use in SearchContext. This will be used for performing shard level reduce of aggregations during concurrent segment search usecase

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Support for non global aggregations with concurrent segment search. This PR does not include the support for
profile option with aggregations to work with concurrent model

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Implement AggregationCollectorManager's reduce

Signed-off-by: Andriy Redko <andriy.redko@aiven.io>

* Use CollectorManager for both concurrent and non concurrent use case
Add CollectorManager for Global Aggregations to support concurrent use case

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address serializing pipelineTree in QueryResult in 2.x for bwc and fix the new tests as well

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>
@sohami
Copy link
Collaborator Author

sohami commented Jun 7, 2023

@sohami ^^ yeah, automation failed, please send pull request manually, thank you

@reta Created #7948 for backport PR

sohami added a commit to sohami/OpenSearch that referenced this pull request Jun 8, 2023
…t without profile option (opensearch-project#7514)

* Refactoring of AggregationReduceContext to use in SearchContext. This will be used for performing shard level reduce of aggregations during concurrent segment search usecase

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Support for non global aggregations with concurrent segment search. This PR does not include the support for
profile option with aggregations to work with concurrent model

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Implement AggregationCollectorManager's reduce

Signed-off-by: Andriy Redko <andriy.redko@aiven.io>

* Use CollectorManager for both concurrent and non concurrent use case
Add CollectorManager for Global Aggregations to support concurrent use case

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address serializing pipelineTree in QueryResult in 2.x for bwc and fix the new tests as well

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>
reta added a commit that referenced this pull request Jun 8, 2023
…gregations support without profile option (#7948)

* [Concurrent Segment Search]: Implement concurrent aggregations support without profile option (#7514)

* Refactoring of AggregationReduceContext to use in SearchContext. This will be used for performing shard level reduce of aggregations during concurrent segment search usecase

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Support for non global aggregations with concurrent segment search. This PR does not include the support for
profile option with aggregations to work with concurrent model

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Implement AggregationCollectorManager's reduce

Signed-off-by: Andriy Redko <andriy.redko@aiven.io>

* Use CollectorManager for both concurrent and non concurrent use case
Add CollectorManager for Global Aggregations to support concurrent use case

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address serializing pipelineTree in QueryResult in 2.x for bwc and fix the new tests as well

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>
sandeshkr419 pushed a commit to sandeshkr419/OpenSearch that referenced this pull request Jun 8, 2023
…t without profile option (opensearch-project#7514)

* Refactoring of AggregationReduceContext to use in SearchContext. This will be used for performing shard level reduce of aggregations during concurrent segment search usecase

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Support for non global aggregations with concurrent segment search. This PR does not include the support for
profile option with aggregations to work with concurrent model

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Implement AggregationCollectorManager's reduce

Signed-off-by: Andriy Redko <andriy.redko@aiven.io>

* Use CollectorManager for both concurrent and non concurrent use case
Add CollectorManager for Global Aggregations to support concurrent use case

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>
gaiksaya pushed a commit to gaiksaya/OpenSearch that referenced this pull request Jun 26, 2023
…gregations support without profile option (opensearch-project#7948)

* [Concurrent Segment Search]: Implement concurrent aggregations support without profile option (opensearch-project#7514)

* Refactoring of AggregationReduceContext to use in SearchContext. This will be used for performing shard level reduce of aggregations during concurrent segment search usecase

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Support for non global aggregations with concurrent segment search. This PR does not include the support for
profile option with aggregations to work with concurrent model

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Implement AggregationCollectorManager's reduce

Signed-off-by: Andriy Redko <andriy.redko@aiven.io>

* Use CollectorManager for both concurrent and non concurrent use case
Add CollectorManager for Global Aggregations to support concurrent use case

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address serializing pipelineTree in QueryResult in 2.x for bwc and fix the new tests as well

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>
Bukhtawar added a commit that referenced this pull request Jul 23, 2023
I have nominated and maintainers have agreed to invite Sorabh Hamirwasia(@sohami) to be a co-maintainer. Sorabh has kindly accepted.

Sorabh has led the design and implementation of multiple features like query cancellation, concurrent segment search for aggregations and snapshot inter-operability w/remote storage in OpenSearch. Some significant issues and PRs authored by Sorabh for this effort are as follows:

Feature proposals
Concurrent segment search for aggregations : #6798
Searchable Remote Index : #2900

Implementations
Concurrent segment search for aggregations: #7514
Lucene changes to leaf slices for concurrent search: apache/lucene#12374
Moving concurrent search to core : #7203
Query cancellation support : #986
In total, Sorabh has authored 14 PRs going back to Aug 2021. He also frequently reviews contributions from others and has reviewed nearly 20 PRs in the same time frame. I believe Sorabh will be a valuable addition as a maintainer of OpenSearch and will continue to contribute to the success of the project going forward.

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
opensearch-trigger-bot bot pushed a commit that referenced this pull request Jul 23, 2023
I have nominated and maintainers have agreed to invite Sorabh Hamirwasia(@sohami) to be a co-maintainer. Sorabh has kindly accepted.

Sorabh has led the design and implementation of multiple features like query cancellation, concurrent segment search for aggregations and snapshot inter-operability w/remote storage in OpenSearch. Some significant issues and PRs authored by Sorabh for this effort are as follows:

Feature proposals
Concurrent segment search for aggregations : #6798
Searchable Remote Index : #2900

Implementations
Concurrent segment search for aggregations: #7514
Lucene changes to leaf slices for concurrent search: apache/lucene#12374
Moving concurrent search to core : #7203
Query cancellation support : #986
In total, Sorabh has authored 14 PRs going back to Aug 2021. He also frequently reviews contributions from others and has reviewed nearly 20 PRs in the same time frame. I believe Sorabh will be a valuable addition as a maintainer of OpenSearch and will continue to contribute to the success of the project going forward.

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
(cherry picked from commit 7769682)
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Bukhtawar pushed a commit that referenced this pull request Jul 24, 2023
I have nominated and maintainers have agreed to invite Sorabh Hamirwasia(@sohami) to be a co-maintainer. Sorabh has kindly accepted.

Sorabh has led the design and implementation of multiple features like query cancellation, concurrent segment search for aggregations and snapshot inter-operability w/remote storage in OpenSearch. Some significant issues and PRs authored by Sorabh for this effort are as follows:

Feature proposals
Concurrent segment search for aggregations : #6798
Searchable Remote Index : #2900

Implementations
Concurrent segment search for aggregations: #7514
Lucene changes to leaf slices for concurrent search: apache/lucene#12374
Moving concurrent search to core : #7203
Query cancellation support : #986
In total, Sorabh has authored 14 PRs going back to Aug 2021. He also frequently reviews contributions from others and has reviewed nearly 20 PRs in the same time frame. I believe Sorabh will be a valuable addition as a maintainer of OpenSearch and will continue to contribute to the success of the project going forward.


(cherry picked from commit 7769682)

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
baba-devv pushed a commit to baba-devv/OpenSearch that referenced this pull request Jul 29, 2023
I have nominated and maintainers have agreed to invite Sorabh Hamirwasia(@sohami) to be a co-maintainer. Sorabh has kindly accepted.

Sorabh has led the design and implementation of multiple features like query cancellation, concurrent segment search for aggregations and snapshot inter-operability w/remote storage in OpenSearch. Some significant issues and PRs authored by Sorabh for this effort are as follows:

Feature proposals
Concurrent segment search for aggregations : opensearch-project#6798
Searchable Remote Index : opensearch-project#2900

Implementations
Concurrent segment search for aggregations: opensearch-project#7514
Lucene changes to leaf slices for concurrent search: apache/lucene#12374
Moving concurrent search to core : opensearch-project#7203
Query cancellation support : opensearch-project#986
In total, Sorabh has authored 14 PRs going back to Aug 2021. He also frequently reviews contributions from others and has reviewed nearly 20 PRs in the same time frame. I believe Sorabh will be a valuable addition as a maintainer of OpenSearch and will continue to contribute to the success of the project going forward.

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
kaushalmahi12 pushed a commit to kaushalmahi12/OpenSearch that referenced this pull request Sep 12, 2023
I have nominated and maintainers have agreed to invite Sorabh Hamirwasia(@sohami) to be a co-maintainer. Sorabh has kindly accepted.

Sorabh has led the design and implementation of multiple features like query cancellation, concurrent segment search for aggregations and snapshot inter-operability w/remote storage in OpenSearch. Some significant issues and PRs authored by Sorabh for this effort are as follows:

Feature proposals
Concurrent segment search for aggregations : opensearch-project#6798
Searchable Remote Index : opensearch-project#2900

Implementations
Concurrent segment search for aggregations: opensearch-project#7514
Lucene changes to leaf slices for concurrent search: apache/lucene#12374
Moving concurrent search to core : opensearch-project#7203
Query cancellation support : opensearch-project#986
In total, Sorabh has authored 14 PRs going back to Aug 2021. He also frequently reviews contributions from others and has reviewed nearly 20 PRs in the same time frame. I believe Sorabh will be a valuable addition as a maintainer of OpenSearch and will continue to contribute to the success of the project going forward.

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
Signed-off-by: Kaushal Kumar <ravi.kaushal97@gmail.com>
brusic pushed a commit to brusic/OpenSearch that referenced this pull request Sep 25, 2023
I have nominated and maintainers have agreed to invite Sorabh Hamirwasia(@sohami) to be a co-maintainer. Sorabh has kindly accepted.

Sorabh has led the design and implementation of multiple features like query cancellation, concurrent segment search for aggregations and snapshot inter-operability w/remote storage in OpenSearch. Some significant issues and PRs authored by Sorabh for this effort are as follows:

Feature proposals
Concurrent segment search for aggregations : opensearch-project#6798
Searchable Remote Index : opensearch-project#2900

Implementations
Concurrent segment search for aggregations: opensearch-project#7514
Lucene changes to leaf slices for concurrent search: apache/lucene#12374
Moving concurrent search to core : opensearch-project#7203
Query cancellation support : opensearch-project#986
In total, Sorabh has authored 14 PRs going back to Aug 2021. He also frequently reviews contributions from others and has reviewed nearly 20 PRs in the same time frame. I believe Sorabh will be a valuable addition as a maintainer of OpenSearch and will continue to contribute to the success of the project going forward.

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
Signed-off-by: Ivan Brusic <ivan.brusic@flocksafety.com>
shiv0408 pushed a commit to Gaurav614/OpenSearch that referenced this pull request Apr 25, 2024
…t without profile option (opensearch-project#7514)

* Refactoring of AggregationReduceContext to use in SearchContext. This will be used for performing shard level reduce of aggregations during concurrent segment search usecase

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Support for non global aggregations with concurrent segment search. This PR does not include the support for
profile option with aggregations to work with concurrent model

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Implement AggregationCollectorManager's reduce

Signed-off-by: Andriy Redko <andriy.redko@aiven.io>

* Use CollectorManager for both concurrent and non concurrent use case
Add CollectorManager for Global Aggregations to support concurrent use case

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

* Address review comments

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>

---------

Signed-off-by: Sorabh Hamirwasia <sohami.apache@gmail.com>
Signed-off-by: Andriy Redko <andriy.redko@aiven.io>
Co-authored-by: Andriy Redko <andriy.redko@aiven.io>
Signed-off-by: Shivansh Arora <hishiv@amazon.com>
shiv0408 pushed a commit to Gaurav614/OpenSearch that referenced this pull request Apr 25, 2024
I have nominated and maintainers have agreed to invite Sorabh Hamirwasia(@sohami) to be a co-maintainer. Sorabh has kindly accepted.

Sorabh has led the design and implementation of multiple features like query cancellation, concurrent segment search for aggregations and snapshot inter-operability w/remote storage in OpenSearch. Some significant issues and PRs authored by Sorabh for this effort are as follows:

Feature proposals
Concurrent segment search for aggregations : opensearch-project#6798
Searchable Remote Index : opensearch-project#2900

Implementations
Concurrent segment search for aggregations: opensearch-project#7514
Lucene changes to leaf slices for concurrent search: apache/lucene#12374
Moving concurrent search to core : opensearch-project#7203
Query cancellation support : opensearch-project#986
In total, Sorabh has authored 14 PRs going back to Aug 2021. He also frequently reviews contributions from others and has reviewed nearly 20 PRs in the same time frame. I believe Sorabh will be a valuable addition as a maintainer of OpenSearch and will continue to contribute to the success of the project going forward.

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
Signed-off-by: Shivansh Arora <hishiv@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 2.x Backport to 2.x branch Search Search query, autocomplete ...etc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Concurrent Segment Search] - Implement concurrent aggregations support without profile option
4 participants