DBA Data[Home] [Help]

APPS.FND_OAM_DSCRAM_ARGS_PKG dependencies on DBMS_LOCK

Line 1066: -- For locking the arg, we use a dbms_lock based lock instead of a FOR UPDATE to allow all of the sources/stores to happen in the parent

1062: x_return_msg OUT NOCOPY VARCHAR2);
1063:
1064: -- Private: obtains value for the argument using either the local state, external sources or the arg context.
1065: -- If it's writable, also writes out retrieved value to proper location based on write_policy using STORE.
1066: -- For locking the arg, we use a dbms_lock based lock instead of a FOR UPDATE to allow all of the sources/stores to happen in the parent
1067: -- transaction so that stored values are discarded if the results are discarded. Values are stored autonomously if p_force_store_autonomously is set.
1068: -- Allow_sourcing and release_arg_lock can be manipulated to perform a shallow get to see if an arg already has a value and if not, maintain the lock
1069: -- so that the caller can update the arg and release the lock. This is used in the UPDATE_WRITABLE-like procedures to default values.
1070: PROCEDURE GET_CANONICAL_ARG_VALUE(px_arg IN OUT NOCOPY arg,

Line 1470: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);

1466: IF p_release_arg_lock AND
1467: ((px_arg.write_policy <> FND_OAM_DSCRAM_UTILS_PKG.G_WRITE_POLICY_ONCE) OR
1468: (px_arg.write_policy = FND_OAM_DSCRAM_UTILS_PKG.G_WRITE_POLICY_ONCE AND NOT l_value_requires_store)) THEN
1469: IF l_lock_handle IS NOT NULL THEN
1470: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);
1471: IF l_retval <> 0 THEN
1472: fnd_oam_debug.log(6, l_ctxt, 'Failed to release arg lock: '||l_retval);
1473: END IF;
1474: END IF;

Line 1495: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);

1491: fnd_oam_debug.log(2, l_ctxt, 'EXIT');
1492: EXCEPTION
1493: WHEN GET_FAILED THEN
1494: IF l_lock_handle IS NOT NULL THEN
1495: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);
1496: IF l_retval <> 0 THEN
1497: fnd_oam_debug.log(6, l_ctxt, 'Failed to release arg lock: '||l_retval);
1498: END IF;
1499: END IF;

Line 1527: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);

1523: WHEN OTHERS THEN
1524: fnd_oam_debug.log(6, l_ctxt, 'Exception while storing failed arg fetch: (Code('||SQLCODE||'), Message("'||SQLERRM||'"))');
1525: END;
1526: IF l_lock_handle IS NOT NULL THEN
1527: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);
1528: IF l_retval <> 0 THEN
1529: fnd_oam_debug.log(6, l_ctxt, 'Failed to release arg lock: '||l_retval);
1530: END IF;
1531: END IF;

Line 2530: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);

2526: END IF;
2527:
2528: --release the lock if we have one
2529: IF l_lock_handle IS NOT NULL THEN
2530: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);
2531: IF l_retval <> 0 THEN
2532: fnd_oam_debug.log(6, l_ctxt, 'Failed to release arg lock: '||l_retval);
2533: END IF;
2534: END IF;

Line 2546: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);

2542: EXCEPTION
2543: WHEN OTHERS THEN
2544: --make sure there isn't a lock hanging around
2545: IF l_lock_handle IS NOT NULL THEN
2546: l_retval := DBMS_LOCK.RELEASE(l_lock_handle);
2547: IF l_retval <> 0 THEN
2548: fnd_oam_debug.log(6, l_ctxt, 'Failed to release arg lock: '||l_retval);
2549: END IF;
2550: END IF;