Hello. I am trying out the Pinot Connector in Trin...
# troubleshooting
t
Hello. I am trying out the Pinot Connector in Trino and I am facing the an error on a simple select query like
Copy code
select * from pinot.default.table limit 10
This is the stacktrace of the error. Can anyone please help? Did anyone face a similar issue before?
Copy code
java.lang.NullPointerException: null value in entry: Server_server-2.server-headless.pinot.svc.cluster.local_8098=null
	at com.google.common.collect.CollectPreconditions.checkEntryNotNull(CollectPreconditions.java:32)
	at com.google.common.collect.SingletonImmutableBiMap.<init>(SingletonImmutableBiMap.java:42)
	at com.google.common.collect.ImmutableBiMap.of(ImmutableBiMap.java:72)
	at com.google.common.collect.ImmutableMap.of(ImmutableMap.java:119)
	at com.google.common.collect.ImmutableMap.copyOf(ImmutableMap.java:454)
	at com.google.common.collect.ImmutableMap.copyOf(ImmutableMap.java:433)
	at io.trino.plugin.pinot.PinotSegmentPageSource.queryPinot(PinotSegmentPageSource.java:221)
	at io.trino.plugin.pinot.PinotSegmentPageSource.fetchPinotData(PinotSegmentPageSource.java:182)
	at io.trino.plugin.pinot.PinotSegmentPageSource.getNextPage(PinotSegmentPageSource.java:150)
	at io.trino.operator.TableScanOperator.getOutput(TableScanOperator.java:311)
	at io.trino.operator.Driver.processInternal(Driver.java:387)
	at io.trino.operator.Driver.lambda$processFor$9(Driver.java:291)
	at io.trino.operator.Driver.tryWithLock(Driver.java:683)
	at io.trino.operator.Driver.processFor(Driver.java:284)
	at io.trino.execution.SqlTaskExecution$DriverSplitRunner.processFor(SqlTaskExecution.java:1076)
	at io.trino.execution.executor.PrioritizedSplitRunner.process(PrioritizedSplitRunner.java:163)
	at io.trino.execution.executor.TaskExecutor$TaskRunner.run(TaskExecutor.java:484)
	at io.trino.$gen.Trino_362____20211126_004329_2.run(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:829)
Our pinot is deployed on Kubernetes and every component has a headless service and a
ClusterIP
service. Also I am able to query that table directly from Pinot UI. But the query doesn’t work on trino.
m
What version of Pinot and Trino?
Some possibilities - a) Setup issue b) Connectivity issue c) Version mismatch
t
trino - 362. Pinot - 0.9.0 Connectivity is there between two services. I am able to run metadata queries such as
Copy code
show table from pinot.default
m
I found similar thing discussed a while back: https://www.mail-archive.com/dev@pinot.apache.org/msg02789.html
Search for
PinotSegmentPageSource
in that link
cc @Elon
e
Can you try trino 365? It is compatible with pinot 0.8.0
t
Sure. Will upgrade and let you know.
e
We are working on updating to be compatible with pinot 0.9.0
t
So we are on 0.9.0 for pInot. Will it work with Trino 365 now? Or would I have to downgrade to pinot 0.8.0?
e
It should - it looks like the api's from 0.8.0 to 0.9.0 that trino connector uses are similar
I think pinot 0.9.0 has some really great features, no need to downgrade.
🙌 1
t
Thanks this is working.