Bug with Database Looping node

Hello KNIMErs,

I am facing a weird issue where executing one Database Looping uses one Oracle session and using two in parallel tries to open up more than the remaining available ones.

KNIME-side setup:

  • Windows Server 2008 R2 Standard SP1 x64
  • Java 1.7.0_25
  • KNIME 2.9.4
  • oracle.jdbc.driver.OracleDriver ojdbc6
  • Oracle client 11.2

DB-side setup:

  • Windows Server 2008 R2 Standard SP1 x64
  • Oracle server 11.2
  • Max number of sessions: 248

Before executing the one DB Looping node, querying the number of opened sessions returns n (73)
During execution, it returns n+1 (74)

Since I have quite a few rows in the input table, I am using a Row Splitter node to divide and execute the exact same DB Looping node in parallel, each on half the number of rows.

During the execution of the parallel DB Looping nodes, I hit the following error:
ORA-12516, TNS:listener could not find available handler with matching protocol stack
and the max number of sessions is reached.

  1. Does anybody know what is causing this issue?
  2. How can I fix it or is there a workaround?



Edited to make the subject more explicit.