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

GRPC broker request handler #7838

Merged
merged 7 commits into from
Dec 11, 2021
Merged

Conversation

walterddr
Copy link
Contributor

@walterddr walterddr commented Nov 29, 2021

Currently there's no way to use the GRPC server request from broker side.

Adding a framework of GRPCBrokerResponseHandler parallel to the SingleConnectionBrokerRequestHandler

This handler handles data streaming back from server and process reduce in a streaming fashion.

@walterddr walterddr changed the title GRPC broker request handler that streams data back from server GRPC broker request handler Nov 30, 2021
@codecov-commenter
Copy link

codecov-commenter commented Nov 30, 2021

Codecov Report

Merging #7838 (f4c122a) into master (c999a23) will increase coverage by 6.18%.
The diff coverage is 51.29%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master    #7838      +/-   ##
============================================
+ Coverage     65.07%   71.26%   +6.18%     
  Complexity     4082     4082              
============================================
  Files          1538     1587      +49     
  Lines         79993    82032    +2039     
  Branches      12035    12259     +224     
============================================
+ Hits          52057    58460    +6403     
+ Misses        24219    19603    -4616     
- Partials       3717     3969     +252     
Flag Coverage Δ
integration1 29.12% <49.35%> (?)
integration2 27.69% <50.32%> (?)
unittests1 68.35% <47.28%> (-0.14%) ⬇️
unittests2 14.41% <1.29%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...roker/requesthandler/BaseBrokerRequestHandler.java 71.08% <ø> (+49.49%) ⬆️
...roker/requesthandler/GrpcBrokerRequestHandler.java 0.00% <0.00%> (ø)
.../pinot/core/query/reduce/ResultReducerFactory.java 75.00% <0.00%> (-17.31%) ⬇️
...re/query/reduce/SelectionOnlyStreamingReducer.java 0.00% <0.00%> (ø)
...inot/core/query/reduce/StreamingReduceService.java 0.00% <0.00%> (ø)
...va/org/apache/pinot/spi/utils/CommonConstants.java 23.63% <ø> (ø)
...rg/apache/pinot/core/transport/ServerInstance.java 44.64% <23.52%> (+26.69%) ⬆️
...e/pinot/broker/broker/helix/BaseBrokerStarter.java 74.15% <71.42%> (+1.32%) ⬆️
...che/pinot/core/query/reduce/BaseReduceService.java 94.07% <94.07%> (ø)
...thandler/SingleConnectionBrokerRequestHandler.java 87.03% <100.00%> (+75.71%) ⬆️
... and 370 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c999a23...f4c122a. Read the comment docs.

@walterddr walterddr marked this pull request as ready for review November 30, 2021 18:20
@@ -235,14 +236,21 @@ public void start()
// Configure TLS for netty connection to server
TlsConfig tlsDefaults = TlsUtils.extractTlsConfig(_brokerConf, Broker.BROKER_TLS_PREFIX);

if (_brokerConf.getProperty(Broker.BROKER_NETTYTLS_ENABLED, false)) {
if (_brokerConf.getProperty(Broker.BROKER_REQUEST_HANDLER_TYPE, Broker.DEFAULT_BROKER_REQUEST_HANDLER_TYPE)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shall we consider have both handlers created and have a query runtime switch to pick the non-default request handler?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes I will enable both once I have all other reducer service up and running (probably in the next 1-2 PRs)

@walterddr walterddr force-pushed the add_broker_grpc branch 2 times, most recently from 503f6f5 to 5e85a04 Compare December 3, 2021 16:57
Copy link
Contributor

@Jackie-Jiang Jackie-Jiang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM otherwise. Good job extracting the common code

@siddharthteotia
Copy link
Contributor

siddharthteotia commented Dec 8, 2021

I'd just like to go through this PR once. Can we please hold off mergin for a day or so ?

@walterddr
Copy link
Contributor Author

addressed diff comments, any additionl feedback @siddharthteotia @Jackie-Jiang

@Jackie-Jiang Jackie-Jiang merged commit 12edbdb into apache:master Dec 11, 2021
kriti-sc pushed a commit to kriti-sc/incubator-pinot that referenced this pull request Dec 12, 2021
Adding a framework of GRPCBrokerResponseHandler parallel to the SingleConnectionBrokerRequestHandler

This handler handles data streaming back from server and process reduce in a streaming fashion.
@walterddr walterddr deleted the add_broker_grpc branch December 6, 2023 16:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants