pinot: Mulitstage queries doesn't run locally

I am trying to run multistage queries locally but always ends up in this error:

java.io.IOException: Failed : HTTP error code : 500. Root Cause: <html><head><title>Grizzly 2.4.4</title><style><!--div.header {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#003300;font-size:22px;-moz-border-radius-topleft: 10px;border-top-left-radius: 10px;-moz-border-radius-topright: 10px;border-top-right-radius: 10px;padding-left: 5px}div.body {font-family:Tahoma,Arial,sans-serif;color:black;background-color:#FFFFCC;font-size:16px;padding-top:10px;padding-bottom:10px;padding-left:10px}div.footer {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#666633;font-size:14px;-moz-border-radius-bottomleft: 10px;border-bottom-left-radius: 10px;-moz-border-radius-bottomright: 10px;border-bottom-right-radius: 10px;padding-left: 5px}BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;}B {font-family:Tahoma,Arial,sans-serif;color:black;}A {color : black;}HR {color : #999966;}--></style> </head><body><div class="header">Request failed.</div><div class="body">Request failed.</div><div class="footer">Grizzly 2.4.4</div></body></html>

This happens when i run the quick start script for colocated_join / multi_stage and try to run this query: select * from userAttributes limit 10 option(useMultistageEngine=true)

The query works fine without the multistage query option as it uses Http calls b/w broker and server. I understand this is happening during grpc call between broker and server and the call never reaches from broker -> server. It happens exactly at this point of code - https://github.com/apache/pinot/blob/9bb3cbb3d6ebf5a9fcd8a5410a5794aee02c7ee4/pinot-query-runtime/src/main/java/org/apache/pinot/query/service/dispatch/DispatchClient.java#L57

I have tried this out in multiple laptops by cloning and building pinot and trying to run multistage queries but everytime it gets stuck here. Do we need to additionally install anything to get it working?

Full stack trace - https://gist.github.com/tibrewalpratik17/41e49d1769b957ab5e4c8100d27647bb

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 18 (18 by maintainers)

Most upvoted comments

I tried using maven-central for clean-building my repo and it worked. Previously i was using our company’s internal artifactory where i think the grpc packages are not proper.

Thanks for the help @walterddr @xiangfu0!

I am able to root-cause the issue. The issue is happening because of conflicting NameResolver class in com.google.android:annotations:4.1.1.4 (annotations-4.1.1.4.jar). Attached screenshot shows that the ManagedChannelImpl class is using the NameResolver from annotations-4.1.1.4.jar which doesn’t have setOverrideAuthority method and ends up in NoSuchMethodError.

Screenshot 2023-07-13 at 11 58 31 PM