-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[Multi-stage] Optimize query plan serialization #12370
Conversation
@@ -92,3 +72,7 @@ message MailboxMetadata { | |||
repeated string virtualAddress = 2; | |||
map<string, string> customProperty = 3; | |||
} | |||
|
|||
message Properties { |
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.
this is not used.
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.
This is used to ser/de the map
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #12370 +/- ##
============================================
- Coverage 61.71% 61.69% -0.03%
Complexity 207 207
============================================
Files 2426 2425 -1
Lines 132776 132707 -69
Branches 20541 20529 -12
============================================
- Hits 81946 81871 -75
- Misses 44817 44823 +6
Partials 6013 6013
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
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. only reviewed the non-test portion.
@@ -17,24 +17,6 @@ | |||
// under the License. | |||
// | |||
|
|||
/** |
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.
lol we should do license check better
@@ -92,8 +92,9 @@ public static OpChain compileLeafStage(OpChainExecutionContext executionContext, | |||
DistributedStagePlan distributedStagePlan, HelixManager helixManager, ServerMetrics serverMetrics, | |||
QueryExecutor leafQueryExecutor, ExecutorService executorService) { | |||
long queryArrivalTimeMs = System.currentTimeMillis(); | |||
ServerPlanRequestContext serverContext = new ServerPlanRequestContext(distributedStagePlan, leafQueryExecutor, | |||
executorService, executionContext.getPipelineBreakerResult()); | |||
ServerPlanRequestContext serverContext = |
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.
seems like all auto-formatting? (skipping most of these kinds)
@@ -204,6 +213,18 @@ void submit(long requestId, DispatchableSubPlan dispatchableSubPlan, long timeou | |||
} | |||
} | |||
|
|||
private static class StageInfo { |
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.
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.
This is a simple helper class to help organize the info for each stage.
|
||
@BeforeMethod | ||
@BeforeClass |
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.
was this change related to Ser/De or just test optimization?
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.
Moving the per method setup to per class is test optimization
bb47fb1
to
8b13ea0
Compare
8b13ea0
to
9de696f
Compare
9de696f
to
af2c506
Compare
Optimize the query plan ser-de by:
Backward Incompatible
This PR changes the proto object structure, which will cause backward incompatibility when broker and server are running different version. Since we are not maintaining backward compatibility for multi-stage engine as of now, user should upgrade both brokers and servers, then start querying.