Folgende Konstellation:

Programm A läuft in benannter Aktivierungsgruppe und ruft die Prozedur P eines Serviceprogramms auf, das in Aktivierungsgruppe *CALLER läuft.

Die Prozedur macht ein Update auf einen Satz der Tabelle T und sperrt diesen richtigerweise. Dies wird auch bei den Teildateisperren des Jobs angezeigt:

DATEN *SHRUPD HELD

Programm A setzt direkt nach dem Prozeduraufrud einen sql commit ab. Nach meinem Verständnis müsste dieser den Datensatz wieder freigeben, tut er aber nicht.

sqlcod nach update und commit ist beidesmal 0.

Hat jemand eine Erklärung?