The following lines contain the word 'select', 'insert', 'update' or 'delete':
select parameter_value
from pay_action_parameters
where parameter_name = 'LOGGING';
,p_update_name varchar2
,p_batch_size number
,p_upg_proc varchar2
,p_upgrade_id varchar2)
Is
l_start_rowid rowid;
ad_parallel_updates_pkg.initialize_rowid_range(
ad_parallel_updates_pkg.ROWID_RANGE,
p_table_owner,
p_table_name,
p_update_name,
p_this_worker_num,
p_total_num_workers,
p_batch_size, 0);
ad_parallel_updates_pkg.get_rowid_range(
l_start_rowid,
l_end_rowid,
l_any_rows_to_process,
p_batch_size,
TRUE); --Restart Flag
ad_parallel_updates_pkg.processed_rowid_range(
l_rows_processed,
l_end_rowid);
ad_parallel_updates_pkg.get_rowid_range(
l_start_rowid,
l_end_rowid,
l_any_rows_to_process,
p_batch_size,
FALSE); --Restart Flag
,p_update_name varchar2
,p_batch_size number
,p_upg_proc varchar2
,p_upgrade_id varchar2
,p_use_rowid varchar2)
is
l_start_pkid number;
l_plsql := 'select count(distinct '||p_pkid_column||'),
min('||p_pkid_column||'),
max('||p_pkid_column||'),
min(rowid),
max(rowid)
from '||p_table_name;
,p_update_name
,p_batch_size
,p_upg_proc
,p_upgrade_id
) ;
ad_parallel_updates_pkg.initialize_id_range(
ad_parallel_updates_pkg.ID_RANGE,
p_table_owner,
p_table_name,
p_update_name,
p_pkid_column,
p_this_worker_num,
p_total_num_workers,
p_batch_size,
0 -- debug level
);
ad_parallel_updates_pkg.get_id_range(
l_start_pkid,
l_end_pkid,
l_any_rows_to_process,
p_batch_size,
TRUE -- Restart flag
);
ad_parallel_updates_pkg.processed_id_range(
l_rows_processed,
l_end_pkid);
** Commit the updates....
*/
commit;
ad_parallel_updates_pkg.get_id_range(
l_start_pkid,
l_end_pkid,
l_any_rows_to_process,
p_batch_size,
FALSE -- Restart flag
);
** work so don't use the AD large table update utilities instead
** do the call directly but only if this is the first worker. This means
** the other threads should exit without doing anything.
*/
if p_this_worker_num = 1 then
if p_upgrade_id is null then
l_plsql := 'begin '||p_upg_proc||'(:CTRL, :START, :END, :ROWCOUNT); end;';
select parameter_value
into l_number_of_threads
from pay_action_parameters
where parameter_name = 'THREADS';
writeLog('Doing large table update.', 'G', FALSE, 20);
p_update_name => p_param4,
p_batch_size => p_param5,
p_upg_proc => p_process_to_call,
p_upgrade_id => p_param6,
p_use_rowid => p_param10);