Hallo Frank,
das verursachende Statement kannst du zur Laufzeit leicht identifizieren, indem du die Queries in try except einfasst und ein log file führst. In der
IDE genügt das Anhalten bei Sprach-Exceptions (Debugging-Optionen).
Dein Fehler dürfte dadurch begünstigt werden, dass du Connection und Cursor länger als unbedingt nötig offen hältst. Vielleicht solltest du dein Konzept an der Stelle mal überprüfen.
Bei konkurrierenden Zugriffen ist der Transaction Isolation Level sicher eine weitere Überlegung wert.
Grüße vom marabu