След много тестове отстранихме този проблем. Това е комбинация от начина, по който използвахме пролетната рамка и клиента на oracle и базата данни на oracle. Създавахме нови SimpleJDBCCalls, които използваха извиквания за метаданни на клиента JDBC на oracle, които бяха върнати като курсори, които не бяха затворени и изчистени. Считам това за грешка в Spring JDBC рамката в начина, по който извиква метаданни, но след това не затваря курсора. Spring трябва да копира метаданните от курсора и да го затвори правилно. Не съм си правил труда да отварям проблем с jira с spring, защото ако използвате най-добрата практика, грешката не се показва.
Промяната на OPEN_CURSORS или някой от другите параметри е грешен начин за отстраняване на този проблем и само забавя появата му.
Заобиколихме го/поправихме го, като преместихме SimpleJDBCCall в единична DAO, така че да има само един отворен курсор за всяка процедура на oracle, която извикваме. Тези курсори са отворени през целия живот на приложението - което считам за грешка. Докато OPEN_CURSORS е по-голям от броя на обектите SimpleJDBCCall, тогава няма да има проблеми.