dbms_lock
From: <mh_at_pixar.com>
Date: 08 Aug 2009 10:53:20 GMT
Message-ID: <4a7d5920$0$1465$586efd2_at_news.usenetserver.com>
I have a server program that should run in active/standby mode:
Date: 08 Aug 2009 10:53:20 GMT
Message-ID: <4a7d5920$0$1465$586efd2_at_news.usenetserver.com>
I have a server program that should run in active/standby mode:
- a copy of the program is running on two different computers
- only one copy should be active
- if the active copy exits, fails, etc, the standby should take over and become the active
- when the original active resumes, it is now the standby
Using a dbms_lock makes this quite simple, put this code at the top of the program:
dbms_lock.allocate_unique('myserver', v_lockhandle); v_result := dbms_lock.request(v_lockhandle, dbms_lock.x_mode);
- Is there any problem with holding a lock for a long time? The active may stay active for months on end.
- If there is a problem with holding a lock for a long time, what is a "reasonable" time to keep a lock open?
- The most common way this lock will be released is for the process or the computer to die. Are there any problems related to this?
Many TIA,
Mark
-- Mark Harrison Pixar Animation StudiosReceived on Sat Aug 08 2009 - 05:53:20 CDT