Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> Job occasionally not running as expected.

Job occasionally not running as expected.

From: Stuart Clowes <stuart.clowes_at_gmail.com>
Date: Fri, 14 Jul 2006 15:12:20 +0100
Message-ID: <8cb0040f0607140712l17bba6f8j7b0df4d33f6ed439@mail.gmail.com>


Summary:

We have a job that is supposed to run every 3 seconds. It actually runs every 5 seconds (no worries there), but occasionally doesn't seem to run at all for a period of up to approx 3 minutes.

Detail:

Our software suppliers have a job in their/our database.

       JOB LOG_USER                       PRIV_USER

---------- ------------------------------ ------------------------------
SCHEMA_USER LAST_DATE LAST_SEC THIS_DATE THIS_SEC
NEXT_DATE
------------------------------ --------- -------- --------- --------


NEXT_SEC TOTAL_TIME B
-------- ---------- -
INTERVAL

  FAILURES

WHAT

NLS_ENV
MISC_ENV                                                           INSTANCE

---------------------------------------------------------------- ----------
339 MANHATTEN MANHATTEN MANHATTEN 14-JUL-06 14:50:17
14-JUL-06
14:50:20 1014568 N
SYSDATE + 3/86400
         0
BEGIN manhatten_com.poll_label; END;
NLS_LANGUAGE='AMERICAN' NLS_TERRITORY='AMERICA' NLS_CURRENCY='$' NLS_ISO_CURRENC
Y='AMERICA' NLS_NUMERIC_CHARACTERS='.,' NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
NLS_DATE_LANGUAGE='AMERICAN' NLS_SORT='BINARY'
0102000000000000                                                          0




As you can see, the intention is to run every 3 seconds. The jobs usually takes a very small fraction of a

second, but occasionally takes up to 15 seconds. This is as we expect.

Also, as _job_queue_interval=5, we actually see this usually run every 5 seconds, as evidenced by running

this SQL in a loop. (The loop has a sleep 2 in it, I've taken out some of the repeated data in the data given

below).

select what, to_char(last_date,'DD-MON-YYYY HH24:MI:SS') last_date , to_char(next_date,'DD-MON-YYYY HH24:MI:SS') next_date, to_char(this_date,'DD-MON-YYYY HH24:MI:SS') this_date, decode(this_date,null,null,'EXECUTING')
from dba_jobs
where what like '%poll_label%'
order by next_date
/

WHAT



LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 11:32:40 14-JUL-2006 11:32:43 WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 11:32:45 14-JUL-2006 11:32:48 WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 11:32:50 14-JUL-2006 11:32:53 WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 11:32:55 14-JUL-2006 11:32:58 So far, so good. However, every so often, the job 'appears' not to run for a few minutes.

WHAT



LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:31 14-JUL-2006 12:50:34 WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:31 14-JUL-2006 12:50:34 14-JUL-2006 12:50:36 EXECUTING WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:31 14-JUL-2006 12:50:34 14-JUL-2006 12:50:36 EXECUTING WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:31 14-JUL-2006 12:50:34 14-JUL-2006 12:50:36 EXECUTING WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:31 14-JUL-2006 12:50:34 14-JUL-2006 12:50:36 EXECUTING .... job finishes, next_date is set to three seconds in the future.

WHAT



LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:36 14-JUL-2006 12:50:39 WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:36 14-JUL-2006 12:50:39 .... repeated approx 30 times....... We've gone way beyond 12:50:39 - why hasn't my job
executed?

WHAT



LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:36 14-JUL-2006 12:50:39 WHAT

LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:50:36 14-JUL-2006 12:50:39 .... and finally, it appear to have executed again.

WHAT



LAST_DATE NEXT_DATE THIS_DATE DECODE(TH
-------------------- -------------------- -------------------- ---------
BEGIN manhatten_com.poll_label; END;
14-JUL-2006 12:54:01 14-JUL-2006 12:54:04 Additional info:

SCLOWES @ pkxxl> show parameter job_q

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------
job_queue_processes integer 35
SCLOWES @ pkxxl> select count(*) from dba_jobs;

  COUNT(*)


        24

I don't ever see non-zero values in FAILURES column.

Can anybody give some pointers as to what may be happening here?

Stuart

--
http://www.freelists.org/webpage/oracle-l
Received on Fri Jul 14 2006 - 09:12:20 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US