Tempo fa mi sono imbatutto in questo errore, la cosa particolare è che questo problema si presentava in fase di INSERT di un record che solitamente non è la causa più frequente nei problemi di lock.
Non poteva trattarsi del tentativo di inserire la stesso id (non ancora committato) della chiave primaria in tabella dato che per ottenere l'id tutti i processi utilizzavano una sequence.
Dato che la transazione utilizzava un dblink il timeout per rilevare il lock era di molto inferiore alla soglia di quello delle sessioni che non sfruttano dblink (il DISTRIBUTED_LOCK_TIMEOUT infatti è impostato di default a 60 secondi).