"object locked by another process in same transaction"
*Cause: A database link is being used in the cluster database environment
that loops back to the same instance. One session is trying
to convert a lock that was obtained by the other session.
*Action: Get the more restrictive lock first. For example, if
session 1 gets a share lock and session 2 gets an exclusive lock
on the same object, get the exclusive lock first. Or, simply
use the same session to access the object.