Efter mange tests har vi løst dette problem. Det er en kombination af, hvordan vi brugte springrammerne og oracle-klienten og oracle DB. Vi var ved at oprette nye SimpleJDBCCalls, som brugte oracle JDBC-klientens metadatakald, som blev returneret som markører, der ikke blev lukket og ryddet op. Jeg betragter dette som en fejl i Spring JDBC-rammerne i, hvordan det kalder metadata, men derefter ikke lukker markøren. Spring bør kopiere metadataene ud af markøren og lukke dem korrekt. Jeg har ikke gidet at åbne et jira-problem med fjeder, for hvis du bruger bedste praksis, vises fejlen ikke.
Justering af OPEN_CURSORS eller en af de andre parametre er den forkerte måde at løse dette problem på og forsinker det blot i at blive vist.
Vi arbejdede omkring det/rettede det ved at flytte SimpleJDBCCall til en singleton DAO, så der kun er én markør åben for hver oracle proc, som vi kalder. Disse markører er åbne i hele appens levetid - hvilket jeg betragter som en fejl. Så længe OPEN_CURSORS er større end antallet af SimpleJDBCCall-objekter, vil der ikke være besvær.