Hi,
I'm Running 11.2.0.1 Ent. Edition on Windows 2008 Server.
I have a program that executes a procedure with 1 argument, let's call it "do_something".
I created a few disabled jobs (not scheduled, to be run on demand only) which run the program with a certain value, like do_something_1 with value 1, do_something_2 with value 2 etc.
I also created a "do_everything" program that performs a query and according to its result decide which do_something_x jobs to run. something like:
DECLARE
cursor crs is
select ...;
BEGIN
FOR job_to_run_rec in crs LOOP
dbms_scheduler.run_job('DO_SOMETHING_' || job_to_run_rec.value, false);
END LOOP;
COMMIT;
END;
On this program I created a job called "do_everything_job" that runs once a minute.
The "do_everything_job" succeed almost 99% of the times, but sometimes (about once an hour) I get the following strange error (from additional_info column of user_scheduler_job_run_details):
ORA-20001: comma-separated list invalid near <server-name>
ORA-06512: at "SYS.DBMS_UTILITY", line 239
ORA-06512: at "SYS.DBMS_UTILITY", line 272
ORA-06512: at "SYS.DBMS_SCHEDULER", line 482
ORA-06512: at line 12 --this is the line that runs dbms_scheduler.run_job
For testing purposes, the cursor always return the same values so the same jobs are being run every single time. 99% it works, 1% it fails.
What's causing this?
How can I debug this error?
Thanks,