Home » Server Options » RAC & Failsafe » TAF tests and question
TAF tests and question [message #255986] Thu, 02 August 2007 11:31 Go to next message
t1-oracle
Messages: 4
Registered: December 2006
Junior Member
Hi all,
I'm doing some tests with a 2 nodes RAC to experience with fail over (TAF). I'm using sqlplus from another machine and its version and the database version are 10.2.0.3, these are my tests:
- I log me, I reboor 1 of nodes the session survive and I can continue to work = OK
- I log me and I do this stupid test :
select count(*) rom (
select * from DBA_SOURCE union select * from DBA_SOURCE union
.............
);
I reboot 1 node, the session fail over correctly and it continues the count. OK

When I try to do some more complex tests, they crash.

I fill a table with some numbers:
declare
x NUMBER;
begin
delete NUM_TABLE;
commit;
for x in 1 .. 10000 loop
insert into NUM_TABLE (NUM) values (x);
end loop;
commit;
end;

or when I try to use the cursors (I don't post my code ....) the fail over doesn't work. Usually I have this message: "ORA-25408 can not safely replay call "
My tnsnames is:

RACTESTSRV =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = node1-vip.domain)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = node2-vip.domain)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ractestsrv.domain)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
(RETRIES = 20)
(DELAY = 15)
)
)
)

I read in the Oracle's documentation that the TYPE = SELECT means:
"select: Set to enable users with open cursors to continue
fetching on them after failure. However, this mode
involves overhead on the client side in normal select
operations."

Why it doesn't work in my tests?


bye Federico
Re: TAF tests and question [message #256001 is a reply to message #255986] Thu, 02 August 2007 13:04 Go to previous messageGo to next message
Michel Cadot
Messages: 68625
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
ora-25408: can not safely replay call
 *Cause:  The connection was lost while doing this call. It may not be
          safe to replay it after failover.
 *Action: Check to see if the results of the call have taken place, and then
          replay it if desired.

Not all calls can be recover.
In this case, the application has to be able to reissue it.

Regards
Michel
Re: TAF tests and question [message #389522 is a reply to message #256001] Mon, 02 March 2009 07:47 Go to previous message
dba4bank
Messages: 49
Registered: October 2007
Location: TURKEY
Member
Hi,

if you want to use TAF, You must use failover-aware API calls from the Oracle Call Interface (OCI). Because OCI is restarting interrupt transaction etc..


Gökhan Dedeler
DBA

[Updated on: Mon, 02 March 2009 07:47]

Report message to a moderator

Previous Topic: RAC beginner
Next Topic: ocfs2 on openSuse 11.1
Goto Forum:
  


Current Time: Thu Mar 28 13:16:01 CDT 2024