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

[Backport] [2.x] [Concurrent Segment Search]: Add new query profile collector fields with concurrent search execution (#7898) #7975

Merged
merged 3 commits into from
Jun 9, 2023

Conversation

ticheng-aws
Copy link
Contributor

@ticheng-aws ticheng-aws commented Jun 8, 2023

(cherry picked from commit c58dc1a)

Description

Backport of #7898 to 2.x branch.

To show high-level concurrent execution details, we bring min_slice_time_in_nanos, max_slice_time_in_nanos, and slice_count etc. fields into the query response. With these new fields, users can quickly determine query performance and skew issues.

Definition of existing collector fields

name: A more friendly representation of the collector's class name.
reason: A "hint" to help provide some context about this collector.
time_in_nanos: The total elapsed time for this collector. In the concurrent search case, this is the total time across all slices (i.e. max(slice_end_time) - min(slice_start_time))
children: A list of children collectors "embedded" inside this collector.

Definition of new collector fields with concurrent execution

reduce_time_in_nanos: The elapsed time in the reduce phase.
min_slice_time_in_nanos: The minimum slice time for this collector manager.
max_slice_time_in_nanos: The maximum slice time for this collector manager.
avg_slice_time_in_nanos: The average slice time for this collector manager.
slice_count: The segment slice count for this collector manager.

Related Issues

Resolves #7355
Doc update issue: opensearch-project/documentation-website#4281

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.

…on (opensearch-project#7898)

* Bringing new query profile collector fields with concurrent search execution

Signed-off-by: Ticheng Lin <[email protected]>

* Update CHANGELOG.md and fix gradle check format violations

Signed-off-by: Ticheng Lin <[email protected]>

* Change query profile collector field data types to primitives and add more tests

Signed-off-by: Ticheng Lin <[email protected]>

---------

Signed-off-by: Ticheng Lin <[email protected]>
Signed-off-by: Ticheng Lin <[email protected]>
(cherry picked from commit c58dc1a)
Signed-off-by: Ticheng Lin <[email protected]>
@github-actions
Copy link
Contributor

github-actions bot commented Jun 8, 2023

Gradle Check (Jenkins) Run Completed with:

…ctorResult.java

Co-authored-by: Andriy Redko <[email protected]>
Signed-off-by: Ticheng Lin <[email protected]>
@ticheng-aws ticheng-aws requested a review from reta June 8, 2023 21:01
@github-actions
Copy link
Contributor

github-actions bot commented Jun 8, 2023

Gradle Check (Jenkins) Run Completed with:

@github-actions
Copy link
Contributor

github-actions bot commented Jun 8, 2023

Gradle Check (Jenkins) Run Completed with:

  • RESULT: UNSTABLE ❕
  • TEST FAILURES:
      1 org.opensearch.search.SearchWeightedRoutingIT.testStrictWeightedRoutingWithCustomString

@ticheng-aws ticheng-aws force-pushed the backport-7898-to-2.x branch from f9a1dd6 to 52fd08e Compare June 8, 2023 22:06
@github-actions
Copy link
Contributor

github-actions bot commented Jun 8, 2023

Gradle Check (Jenkins) Run Completed with:

@ticheng-aws ticheng-aws force-pushed the backport-7898-to-2.x branch from 52fd08e to fa83dc5 Compare June 8, 2023 22:50
@github-actions
Copy link
Contributor

github-actions bot commented Jun 8, 2023

Gradle Check (Jenkins) Run Completed with:

  • RESULT: UNSTABLE ❕
  • TEST FAILURES:
      1 org.opensearch.search.SearchWeightedRoutingIT.testStrictWeightedRoutingWithCustomString

@codecov
Copy link

codecov bot commented Jun 8, 2023

Codecov Report

Merging #7975 (0f59e8b) into 2.x (3df1733) will increase coverage by 0.13%.
The diff coverage is 92.52%.

@@             Coverage Diff              @@
##                2.x    #7975      +/-   ##
============================================
+ Coverage     70.61%   70.75%   +0.13%     
- Complexity    56566    56649      +83     
============================================
  Files          4681     4681              
  Lines        268060   268158      +98     
  Branches      39656    39668      +12     
============================================
+ Hits         189301   189737     +436     
+ Misses        62438    62084     -354     
- Partials      16321    16337      +16     
Impacted Files Coverage Δ
...ensearch/search/profile/query/CollectorResult.java 94.53% <87.71%> (-5.47%) ⬇️
...profile/query/InternalProfileCollectorManager.java 96.42% <97.61%> (+1.19%) ⬆️
...search/profile/query/InternalProfileCollector.java 85.18% <100.00%> (+0.56%) ⬆️
...nsearch/search/profile/query/ProfileCollector.java 100.00% <100.00%> (ø)

... and 468 files with indirect coverage changes

@github-actions
Copy link
Contributor

github-actions bot commented Jun 9, 2023

Gradle Check (Jenkins) Run Completed with:

@github-actions
Copy link
Contributor

github-actions bot commented Jun 9, 2023

Gradle Check (Jenkins) Run Completed with:

  • RESULT: UNSTABLE ❕
  • TEST FAILURES:
      1 org.opensearch.indices.replication.SegmentReplicationIT.testScrollCreatedOnReplica

…ctorResult.java

Co-authored-by: Andriy Redko <[email protected]>
Signed-off-by: Ticheng Lin <[email protected]>
@ticheng-aws ticheng-aws force-pushed the backport-7898-to-2.x branch from be44fd5 to 0f59e8b Compare June 9, 2023 02:48
@github-actions
Copy link
Contributor

github-actions bot commented Jun 9, 2023

Gradle Check (Jenkins) Run Completed with:

@reta reta merged commit bb4883b into opensearch-project:2.x Jun 9, 2023
gaiksaya pushed a commit to gaiksaya/OpenSearch that referenced this pull request Jun 26, 2023
…ollector fields with concurrent search execution (opensearch-project#7898) (opensearch-project#7975)

* Add new query profile collector fields with concurrent search execution (opensearch-project#7898)

* Bringing new query profile collector fields with concurrent search execution

Signed-off-by: Ticheng Lin <[email protected]>

* Update CHANGELOG.md and fix gradle check format violations

Signed-off-by: Ticheng Lin <[email protected]>

* Change query profile collector field data types to primitives and add more tests

Signed-off-by: Ticheng Lin <[email protected]>

---------

Signed-off-by: Ticheng Lin <[email protected]>
Signed-off-by: Ticheng Lin <[email protected]>
(cherry picked from commit c58dc1a)
Signed-off-by: Ticheng Lin <[email protected]>

* Update server/src/main/java/org/opensearch/search/profile/query/CollectorResult.java

Co-authored-by: Andriy Redko <[email protected]>
Signed-off-by: Ticheng Lin <[email protected]>

* Update server/src/main/java/org/opensearch/search/profile/query/CollectorResult.java

Co-authored-by: Andriy Redko <[email protected]>
Signed-off-by: Ticheng Lin <[email protected]>

---------

Signed-off-by: Ticheng Lin <[email protected]>
Signed-off-by: Ticheng Lin <[email protected]>
Co-authored-by: Andriy Redko <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants