thanks. Im running the following test code from two different sessions. Odd thing is 
when I run the signal routine once nothing happens. However, when i run it the second 
time, my waiting routine executes on it? 

I run this first: 

declare
  vname varchar2(10) := 'myalert';
  vmessage varchar2(50) := 'NOTHING';
  vstatus number;
begin
 dbms_alert.register('myalert');
for i in 1.. 10 loop
  dbms_alert.waitany(vname,vmessage,vstatus);
  dbms_output.put_line('messag  '||vname||' '||vmessage||' '||vstatus||' '||i);
  end loop;
end;
/

I run this with a '/', nothing happens in the other session the first time. When I do 
another '/' my other session gets woken up???? Any ideas? 

declare
  vname varchar2(10) := 'myalert';
  vmessage varchar2(20) := 'SUCCEED';
begin
 for i in 1.. 10 loop
  dbms_alert.signal(vname,vmessage);
  commit;
  end loop;
end;
/
> 
> From: "Jamadagni, Rajendra" <[EMAIL PROTECTED]>
> Date: 2003/08/15 Fri PM 02:24:23 EDT
> To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]>
> Subject: RE: using dbms_alert to manage multiple processes
> 
> Will all processes signal one named alert or a process specific alert? If it
> is one alert then keep counting as you receive, if they are individually
> named alerts, keep a local pl/sql table and mark as you receive them. When
> you have alerts, dbms_lock for the same purpose is like riding a bike while
> it is being towed.
> 
> Raj
> ----------------------------------------------------------------------------
> ----
> Rajendra dot Jamadagni at nospamespn dot com
> All Views expressed in this email are strictly personal.
> QOTD: Any clod can have facts, having an opinion is an art !
> 
> 
> -----Original Message-----
> Sent: Friday, August 15, 2003 1:44 PM
> To: Multiple recipients of list ORACLE-L
> 
> 
> I have a coordinator package that is going to run alot of long running batch
> processes through dbms_job. Could be as many as 300 of them. I know to set
> my job_queue_processes = 36. 
> 
> however, I want to 'wait' until all of these are done. My concern is with
> concurrency. 
> 
> here is pseudo code:
> 
> max number := 0;
> counter number := 0;
> loop
>   dbms_job.submit....
>   dbms_alert.register...
>   max := max + 1;
> exit when finished submitted
> 
> for i in 1.. max LOOP
>   dbms_alert.waitany(... stuff...)
> end loop;
> 
> my concern is in the split second while my coordinate is awake, that another
> dbms_alert could get issued and Ill never reach my max counter in the loop.
> 
> do I need to use dbms_lock to serialize this? Its not that big of a deal, Im
> just hoping that oracle serializes it for me. 
> 
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> -- 
> Author: <[EMAIL PROTECTED]
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 
> ********************************************************************This e-mail 
> message is confidential, intended only for the named recipient(s) above and may 
> contain information that is privileged, attorney work product or exempt from 
> disclosure under applicable law. If you have received this message in error, or are 
> not the named recipient(s), please immediately notify corporate MIS at (860) 
> 766-2000 and delete this e-mail message from your computer, Thank 
> you.*********************************************************************2
> 
> 
Title: RE: using dbms_alert to manage multiple processes

Will all processes signal one named alert or a process specific alert? If it is one alert then keep counting as you receive, if they are individually named alerts, keep a local pl/sql table and mark as you receive them. When you have alerts, dbms_lock for the same purpose is like riding a bike while it is being towed.

Raj
--------------------------------------------------------------------------------
Rajendra dot Jamadagni at nospamespn dot com
All Views expressed in this email are strictly personal.
QOTD: Any clod can have facts, having an opinion is an art !


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Friday, August 15, 2003 1:44 PM
To: Multiple recipients of list ORACLE-L
Subject: using dbms_alert to manage multiple processes


I have a coordinator package that is going to run alot of long running batch processes through dbms_job. Could be as many as 300 of them. I know to set my job_queue_processes = 36.

however, I want to 'wait' until all of these are done. My concern is with concurrency.

here is pseudo code:

max number := 0;
counter number := 0;
loop
  dbms_job.submit....
  dbms_alert.register...
  max := max + 1;
exit when finished submitted

for i in 1.. max LOOP
  dbms_alert.waitany(... stuff...)
end loop;

my concern is in the split second while my coordinate is awake, that another dbms_alert could get issued and Ill never reach my max counter in the loop.

do I need to use dbms_lock to serialize this? Its not that big of a deal, Im just hoping that oracle serializes it for me.

--
Please see the official ORACLE-L FAQ: http://www.orafaq.net
--
Author: <[EMAIL PROTECTED]
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to