Using oracle 188.8.131.52 and finding that on sat early mornings (3.30 a.m. a table cannot be updated due to an exclusive lock.
merge into table concerned.
Nothing else we are aware of accessing table at this time due some process must be due to ORA-00054 - resource busy.
Is there a way we can identify what caused the lock/causing the lock - happenening each week.
You can't get it from history, when you get the lock again then query the table mentioned above. Also, to check any kind of session blocking issue use that query.
select b.session_id ,a.SERIAL#, a.username "Blocker Details"
from v$session a,dba_lock b
where b.session_id = a.sid
and b.blocking_others = 'Blocking';