I am using rethinkdb-driver 2.4.2 in spring boot java application, I am making a query to get some list of data but i can see 100+ thread are in waiting.
Memory Dump Log
"https-jsse-nio-52020-exec-190" #295 daemon prio=5 os_prio=0 tid=0x00007fe4d410b000 nid=0x6b29 waiting on condition [0x00007fe494685000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000d1fedd88> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at com.rethinkdb.net.Result.next(Result.java:259)
at com.rethinkdb.net.Result.forEach(Result.java:338)
at com.rethinkdb.net.Result.forEachRemaining(Result.java:350)
at com.rethinkdb.net.Result.collect(Result.java:179)
at com.rethinkdb.net.Result.toList(Result.java:159)
at com.mycode.socket.manager.ignite.RethinkManager.getACD(RethinkManager.java:75)
Code snipit
public String getACD(String idd, String namee) {
//r.db('esl').table('table').filter({"id":"4","name":"abc.com"}).getField("id1").nth(0)
String id = "1";
try{
rethinkDBConnectionFactory.reInitDbACD();
GetField vdnSkillPBXFilter = rethinkDBConnectionFactory.getSkill().filter(row -> row.g("id").eq(idd)).filter(row -> row.g("name").eq(namee)).getField("id1");
try(Result<String> acdIdListObj = vdnSkillPBXFilter.run(rethinkDBConnectionFactory.getConn(),String.class);){
List<String> acdIdList = acdIdListObj.toList();
}
}catch(Exception e){
e.printStackTrace();
}
return id;
}