try SQL below instead
SELECT Decode(request, 0, 'Holder: ',
FROM v$lock vl,
WHERE ( id1, id2, vl.TYPE ) IN (SELECT id1,
WHERE request > 0)
AND vl.sid = vs.sid
ORDER BY id1,
Henry, what version of Oracle and is this a RAC or non-RAC environment? Are there an FK on the objects in question? Are the FK indexed? How does the select for update process in question work?
What might be wrong is a little hard to say since we know knowing about your environment and the original situation is almost surely long resolved by now.
HTH -- Mark D Powell --