Operating System - HP-UX
1748070 Members
5184 Online
108758 Solutions
New Discussion юеВ

Re: Reg: ORA-03106: fatal two-task communication protocol error

 
Rajkumar_3
Regular Advisor

Reg: ORA-03106: fatal two-task communication protocol error

Hi All ,

I am facing an serious Problem while executing as below.

#svrmgrl
Oracle Server Manager Release 3.1.7.0.0 - Production

Copyright (c) 1997, 1999, Oracle Corporation. All Rights Reserved.

ORA-03106: fatal two-task communication protocol error
SVRMGR>

I have exported all the parameters related to hrms database including SID.

Previously when i shutdown the same database while it was running i recived an "Post write failed message."

After that when i try to startup this database i got the Fatal Error as said Above.

I have atttached the alert & trace file messages.

Would Appreciate if any one could solve this problem.

Its very Urgent.

Ra
Oracle DBA
10 REPLIES 10
Carlos Fernandez Riera
Honored Contributor

Re: Reg: ORA-03106: fatal two-task communication protocol error

It seem that the semaphore that controls access to your database is still live, and the owner is not the same you are using.

Run:

ps -aef | grep lgwr | grep $ORACLE_SID

to see if database is still open, and the owner.


run

ipcs -s | grep owner ( owner from previous list).

If the database is not running you can kill semaphore with iprm -s SEM_IDENTIFIER


And try to startup again.
HTH.


unsupported
Rajkumar_3
Regular Advisor

Re: Reg: ORA-03106: fatal two-task communication protocol error

Hi Carlos,

Thank for your reply.

The required database is already shutdown.I issued ps -ef |grep $ORACLE_SID & "owner" also .But nothing was displayed.

On that there are so many databases running currently with different partitions.

Is there any unix command to find out which SID belong to .Because the permission that i have set for that parameter file like "chmod 775" to other 2 Unix Users also.So they can also start the database.

Is there any alternative method of starting the database ???

Ra
Oracle DBA
Carlos Fernandez Riera
Honored Contributor

Re: Reg: ORA-03106: fatal two-task communication protocol error

I use the same only user to startup database, so i cant help you with that...


ipcs -ma shows the owner and group, and also the process that created that segment ( CPID), this is the srvmgrl that started the db. The PID of lgwr_$ORACLE_SID should be close to that CPID. LTIME shows last time accesed, and LPID last PID that accessed.

For each started database should be one shared segment of memory and one semaphore, owned by a knownable database user/admin.

Among all these data i think you will find if there is any semaphore or sahred segment that needs to be clean.


( i am still thinking if this helps..)

unsupported
Wodisch
Honored Contributor

Re: Reg: ORA-03106: fatal two-task communication protocol error

Hi,

try "unset TWOTASK" and start "svrmgrl" again...
The environment variable "TWOTASK" is a relic from the times of the dinosaurs and Oracle SQL-Net v1 (today we have Oracle Net8 = SQL*Net v3).

HTH,
Wodisch
Rajkumar_3
Regular Advisor

Re: Reg: ORA-03106: fatal two-task communication protocol error

Hi Wodisch,

Thank you for your reply.

TO unset the TWO_TASK , it was not set that variable.

The Problem still exists.

I have started the database as Below:

#export ORACLE_SID=ORCL
#svrmgrl
svrmgrl>startup pfile=/../../init.ora

The required database was started.But when i issue
#ps -ef | grep $ORACLE_SID
ITs showing the processes with only the instance name "ORCL"

After starting the database i issued
svrmgrl>select name from v$database;

Its shows the database name I want to start.

Why this fatal error was occuring.I think this problem might be with "Linking Library Files"

If you find any other option please let me know.This is really required help from your side.

Raj

Oracle DBA
SHABU KHAN
Trusted Contributor

Re: Reg: ORA-03106: fatal two-task communication protocol error

Hi Raj,

Did you try the dbstart utility ?

$ORACLE_HOME/bin/dbstart
$ORACLE_HOME/bin/dbshut

SA's usually use this to startup and shutdown databases... again these scripts call the srvrmgrl utility ..

I usually put these in the startup scripts /sbin/init.d/db.ora (is the name of the script that I use)

/sbin/init.d/youroraclescript start
/sbin/init.d/youroraclescript stop

As mentioned earlier TWO_TASK variable can interfere with the oracle startup stuff (but in your case it is not set right ?)

If you stll have problems ... it could be related to kernel parameters ... do a search on "oracle" and sort it by date ... I remember reading about similar oracle problems in the forums recently ...

Good Luck ..

Thanks,
Shabu
Rajkumar_3
Regular Advisor

Re: Reg: ORA-03106: fatal two-task communication protocol error

Hi all,

I have tried with all the options which you have mentioned.But its not working.I might have to take oracle support for this issue.

Thank you all for sharing your views.

Thank you very much

Raj
Oracle DBA
T G Manikandan
Honored Contributor

Re: Reg: ORA-03106: fatal two-task communication protocol error

I got some information reg. the error.
Might be useful.
//*
ORA-03106
========
Possible reasons for the ORA-03106 errors include:

1. Incompatibilities between the client application and the RDBMS server. For
example, version incompatibilities, or a client trying to use a feature not
supported by the database kernel.

2. When using database links or gateways.

3. Network or SQL*Net problems.

4. Corruptions.

5. PL/SQL - language related.


RDBMS - Troubleshooting two-task common errors
==============================================

1. Check for NLS incompatibilities between the client and server. This is
a very popular cause of the ORA-03106 error.

2. Check the alert log and RDBMS trace files for any pertinent information /
errors that coincide with receiving the ORA-03106 error.

3. Try to get a testcase and reproduce the problem in-house.

4. If a testcase is not possible, ask for SQL*Net trace files, SQL traces, and
try setting event 3106 to obtain the error stack.

5. In extreme circumstances, this could indicate that a shared memory segment
used by Oracle is corrupted. You will have to shut down the database,
possibly using the abort option. Make sure all semaphores have been
released by using the IPCS command on Unix. Oracle uses semaphores to
control concurrency between all of the background processes (pmon, smon,
drwr, lgwr, and oracle shadow processes). Semaphores are also used to
control Two-Task communication between the user process and the shadow
process.

6. Try and narrow down the code that may be causing it. For example it might
have started to happen after increasing the number of parameters in a PL/SQL
block or when using certain values for bind variables, etc.

7. If we still do not make headway, file a bug under RDBMS, but we still may
need some or all of the above information as indicated above


*//
Rajkumar_3
Regular Advisor

Re: Reg: ORA-03106: fatal two-task communication protocol error

Hi All,

This error was occured for another database.I have attached the trace file generated in the alertlog file.after this error was occured i reboot the Unix server.Then when i started up i was that database was started.And then i again i shutdown and tries to startup the "fatal error was occured.I was not able to understood that file.

There was not semiphores running on that database.

Please suggest me to proceed.

Raj
Oracle DBA