2017-05-23 80 views
1

我最近設置了一個JDBC驅動程序來使用Apache Phoenix連接到Hadoop db。松鼠的基本查詢運行良好(例如,「從數據文件中選擇*」),但只要我問一個稍微複雜的查詢(即「從列data1 where column2 ='filter1'」選擇column1,我遇到此錯誤:在客戶端實現ThreadPoolSize的更改 - JDBC驅動程序Apache Phoenix

org.apache.phoenix.exception.PhoenixIOException: Task 
org.apache.phoenix.job.JobManager$InstrumentedJobFutureTask rejected from 
org.apache.phoenix.job.JobManager[Running, pool size = 128, active threads = 
128, queued tasks = 5000, completed tasks = 5132] 

從一些搜索,似乎我應該增加ThreadPoolSize Apache的鳳凰hbase.xml配置文件中爲了避免這種錯誤,我都做了,從128增加它512然而,它似乎沒有注意到這種變化,錯誤仍然存​​在,並且在池中的「池大小」仍然爲128.

在Squirrel的Phoenix驅動程序設置中,我已經指出了hbase和hdfs的位置包含安裝程序中「額外類路徑」下的.xml配置文件。

有什麼辦法讓驅動程序「注意」ThreadPoolSize已經改變了嗎?

謝謝!

回答

0

幾件事情要檢查

  1. 確保您的客戶端鳳罐子是兼容的版本與您鳳服務器。
  2. 從您的Hbase主節點獲取hbase-site.xml文件(確保phoenix threadpool的大小與主節點同步設置適當)並添加到phoenix jar文件(使用7zip)並嘗試再次運行松鼠客戶端。