Die SQL-Umgebung ist ggf. noch aktiv, sowie dein Programm (Aktivierungsgruppen).
Schließt du den Cursor ?
Verläßt du das Programm mit *INLR = *ON ?

Das Problem ist hier der SQL-Optimizer, der ODP's offenhält um wiederkehrende Zugriffe zu beschleunigen.
Solange also die Aktivierungsgruppe aktiv bleibt, bleibt auch der ODP offen.

Lösung: RCLACTGRP