117:
118: if (g_cache.lock_name <> l_lock_name OR
119: g_cache.lock_handle is null) THEN
120:
121: dbms_lock.allocate_unique(l_lock_name, g_cache.lock_handle);
122: g_cache.lock_name := l_lock_name;
123:
124: end if;
125:
124: end if;
125:
126: l_CommitRelease := nvl(X_CommitRelease, TRUE);
127:
128: l_reqid := dbms_lock.request(g_cache.lock_handle,
129: dbms_lock.x_mode, dbms_lock.maxwait,
130: l_CommitRelease);
131:
132: IF (l_reqid <> 0) THEN
125:
126: l_CommitRelease := nvl(X_CommitRelease, TRUE);
127:
128: l_reqid := dbms_lock.request(g_cache.lock_handle,
129: dbms_lock.x_mode, dbms_lock.maxwait,
130: l_CommitRelease);
131:
132: IF (l_reqid <> 0) THEN
133: raise_application_error(-20001,
130: l_CommitRelease);
131:
132: IF (l_reqid <> 0) THEN
133: raise_application_error(-20001,
134: 'dbms_lock.request('|| g_cache.lock_handle ||
135: ', ' || dbms_lock.x_mode ||
136: ', ' || dbms_lock.maxwait ||
137: ', TRUE) returned : ' || l_reqid);
138: END IF;
131:
132: IF (l_reqid <> 0) THEN
133: raise_application_error(-20001,
134: 'dbms_lock.request('|| g_cache.lock_handle ||
135: ', ' || dbms_lock.x_mode ||
136: ', ' || dbms_lock.maxwait ||
137: ', TRUE) returned : ' || l_reqid);
138: END IF;
139: END lock_table;
132: IF (l_reqid <> 0) THEN
133: raise_application_error(-20001,
134: 'dbms_lock.request('|| g_cache.lock_handle ||
135: ', ' || dbms_lock.x_mode ||
136: ', ' || dbms_lock.maxwait ||
137: ', TRUE) returned : ' || l_reqid);
138: END IF;
139: END lock_table;
140:
155: raise_application_error(-20001, 'Invalid lock name : '||
156: l_lock_name);
157: end if;
158:
159: l_reqid := dbms_lock.release(g_cache.lock_handle);
160:
161: IF (l_reqid <> 0) THEN
162: raise_application_error(-20001,
163: 'dbms_lock.release('|| g_cache.lock_handle ||
159: l_reqid := dbms_lock.release(g_cache.lock_handle);
160:
161: IF (l_reqid <> 0) THEN
162: raise_application_error(-20001,
163: 'dbms_lock.release('|| g_cache.lock_handle ||
164: ') returned : ' || l_reqid);
165: END IF;
166: END unlock_table;
167: