You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Presto查询Pinot表时触发PINOT_UNABLE_TO_FIND_BROKER错误:无可用Broker问题排查求助

Troubleshooting "No valid brokers found for test" in Presto-Pinot Integration

Let's break down why you can see metadata (catalogs, schemas, tables) but can't run SELECT queries, and walk through the fixes I've used for this exact issue:

1. The Pinot Controller is returning unreachable Broker addresses

Presto relies on the Pinot Controller to fetch the list of active Brokers for query routing. If your Pinot Broker is configured to report a hostname or localhost instead of the accessible IP (10.184.160.52), the Presto server won't be able to resolve or reach it.

Fix steps:

  • Check your Pinot Broker's configuration file (pinot-broker.conf) for the pinot.broker.host setting. Make sure it's set to 10.184.160.52 (not localhost or a hostname the Presto server can't resolve).
  • If you need to keep using a hostname, add an entry to /etc/hosts on your Presto server (10.184.160.53) mapping the Broker's hostname to 10.184.160.52.

2. Your Presto Pinot Connector isn't explicitly configured to use the Broker

By default, Presto pulls Broker info from the Controller, but sometimes this flow breaks (even when metadata works). You can bypass this by hardcoding the Broker address in your Presto catalog config.

Fix steps:

  • Edit your presto/etc/catalog/pinot.properties file to add this line:
    pinot.broker-urls=10.184.160.52:8000
    
  • Restart the Presto service with bin/launcher restart and test your SELECT query again. This forces Presto to use the specified Broker directly instead of querying the Controller for it.

3. The Pinot Broker isn't online or reachable

Even if metadata loads, the Broker might be offline or not properly registered with the Controller.

Fix steps:

  • Verify the Broker's health by accessing http://10.184.160.52:8000/health from the Presto server (use curl or a browser if you have access). You should get a healthy response.
  • Check the Pinot Controller UI (http://10.184.160.52:9000) to confirm the Broker is listed as Online under the Brokers tab. If it's offline, restart the Pinot Broker service.

4. The test table isn't assigned to any active Broker

Occasionally, a Pinot table might not have any Brokers assigned to handle queries for it, even if the Broker itself is online.

Fix steps:

  • In the Pinot Controller UI, navigate to the test table's details page. Check the "Brokers" section to ensure at least one active Broker is assigned.
  • If no Brokers are listed, try reloading the table or restarting the Pinot Controller to trigger a re-assignment.

After trying these fixes, run a small test query like SELECT * FROM test LIMIT 10 to confirm it works. If you're still stuck, check the Presto logs again to see what Broker address the Controller is returning—this will help narrow down if the issue is with address resolution or availability.

内容的提问来源于stack exchange,提问作者Sonu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 17:24:11