Are you reaching any of the ulimits for the user running your application? On Wed, 10 Oct 2018, 17:00 Hemal Parekh, <he...@bitscopic.com> wrote:
> We have an analytical application running concurrent phoenix queries > against Hortonworks HDP 2.6 cluster. Application uses phoenix JDBC > connection to run queries. Often times, concurrent queries fail with > "java.lang.OutOfMemoryError: unable to create new native thread" error. > JDBC connection sets following phoenix properties. > > connectionProps.setProperty("phoenix.query.threadPoolSize", "2000") > connectionProps.setProperty("phoenix.query.querySize", "40000") > > Phoenix version is 4.7 and Hbase version is 1.1.2, The HDP cluster has six > regionservers on six data nodes. Concurrent queries run against different > phoenix tables, some are small having few million records and some are big > having few billions records. Most of the queries do not have joins, where > clause includes conditions on rowkey and few nonkey columns. Queries with > joins (which are on small tables) have used USE_SORT_MERGE_JOIN hint. > > Are there other phoenix properties which need to be set on JDBC > connection? Are above values for phoenix.query.threadPoolSize and > phoenix.query.querySize > enough to handle concurrent query use case? We have changed these two > properties couple of times to increase their values but the error still > remains the same. > > > Thanks, > > Hemal Parekh > > > >