Wobei der Select RRN ganz schön dauert, da hier grundsätzlich kein Index verwendet wird.
Eine schnelle und vor allem gute Lösung ist das nicht.

Was ich mich allerdings frage, wieso der SELECT gesperrte Sätze nicht liest ?
Einen Fehler gibts eigentlich erst beim UPDATE/DELETE oder der gesperrte Satz wird einfach überlesen.