Improve the Explain Plan accuracy#8738
Conversation
…rbose mode, b) deepest operator tree in normal mode based on some precedence ordering
Codecov Report
@@ Coverage Diff @@
## master #8738 +/- ##
============================================
+ Coverage 69.65% 69.70% +0.05%
- Complexity 4612 4615 +3
============================================
Files 1730 1732 +2
Lines 90314 90596 +282
Branches 13421 13476 +55
============================================
+ Hits 62904 63152 +248
- Misses 23042 23050 +8
- Partials 4368 4394 +26
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
|
@Jackie-Jiang / @richardstartin - please help take a look at the improvements here when you get a chance. I have offline worked with @somandal on the changes before putting out the PR. |
pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java
Outdated
Show resolved
Hide resolved
pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java
Outdated
Show resolved
Hide resolved
…o use on Broker side
|
Since the EXPLAIN PLAN output now gives a much broader picture, I am wondering if it makes sense to delineate the steps between server, broker, and segment a bit more, i.e. replacing the |
|
The issue #8607 should be fixed by this PR |
@amrishlal this is a good idea, thanks for the suggestion! Discussed with @siddharthteotia and we decided to pick this up as a future enhancement (we plan to add additional explain nodes and other improvements). I'll create a ticket and a TODO for this. |
|
Rather than prefix the names for the different components, why not add another column with the component? |
|
Can you document how to toggle verbose mode? |
richardstartin
left a comment
There was a problem hiding this comment.
This is going to be very useful, thank you
Yup, that's a great idea. I'll pick this up as part of my other Explain plan improvements. Thanks for the suggestion! |
I've updated the comment to show the query option for verbose vs. non-verbose. Is there somewhere else this needs to be documented? |
|
@somandal we can update the Pinot user docs explaining the new behavior and how to use verbose mode. I can help you do that offline. |
A vast majority of the code changes are in the tests.
The existing behavior for EXPLAIN PLAN has the following limitations:
This PR address the above limitations by the following changes:
Example query (verbose enabled):
Here's an example of the Explain Plan output with verbose mode enabled:
Example query (verbose disabled):
With verbose mode disabled, only the first plan will be selected as it has the deepest tree:
cc @siddharthteotia