When we alter a job the class is not correctly been set. Also when we script pl/sql block changes the scripting is not correctly scripting the modifications.
The job class was incorrectly trying to match a string object to a AFJobClass object. Will not match there string values. PL/SQL block modifications where scripting incorrectly after escaping quotes. Both issues are now fixed.
Committed revision: 49329
Below is a script to create a job that if you alter it the job class should now match the correct class
BEGIN sys.dbms_scheduler.create_job ( job_name => 'C##DB_LEFT.MY_JOB1', job_type => 'PLSQL_BLOCK', job_action => 'BEGIN DBMS_STATS.GATHER_TABLE_STATS(''C##DB_LEFT'',''CUSTOMER''); END;', repeat_interval => 'FREQ=DAILY', job_class => 'DEFAULT_JOB_CLASS', auto_drop => TRUE, enabled =>TRUE); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'job_priority', value =>3); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'max_runs', value =>3); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'max_failures', value =>3); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'logging_level', value =>DBMS_SCHEDULER.LOGGING_OFF); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'job_weight', value =>1); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'instance_stickiness', value =>TRUE); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'restartable', value =>FALSE); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'stop_on_window_close', value =>FALSE); END; GO
Below is a script to create a job that if you alter it the job class should now match the correct class
BEGIN sys.dbms_scheduler.create_job ( job_name => 'C##DB_LEFT.MY_JOB1', job_type => 'PLSQL_BLOCK', job_action => 'BEGIN DBMS_STATS.GATHER_TABLE_STATS(''C##DB_LEFT'',''CUSTOMER''); END;', repeat_interval => 'FREQ=DAILY', job_class => 'DEFAULT_JOB_CLASS', auto_drop => TRUE, enabled =>TRUE); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'job_priority', value =>3); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'max_runs', value =>3); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'max_failures', value =>3); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'logging_level', value =>DBMS_SCHEDULER.LOGGING_OFF); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'job_weight', value =>1); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'instance_stickiness', value =>TRUE); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'restartable', value =>FALSE); sys.dbms_scheduler.set_attribute(name=> '"C##DB_LEFT"."MY_JOB1"', attribute => 'stop_on_window_close', value =>FALSE); END; GO
Issue #14380 |
Closed |
Fixed |
Resolved |
Completion |
No due date |
Fixed Build v17.0.3-28, v18.0.0-devi-106 |
No time estimate |
The job class was incorrectly trying to match a string object to a AFJobClass object. Will not match there string values. PL/SQL block modifications where scripting incorrectly after escaping quotes. Both issues are now fixed.
Committed revision: 49329