I have been trying to set up our Oracle databases to work in shared server (multi-threaded server) mode. We have Oracle 9i databases running on IBM servers with AIX 5.2.

I put the mts parameters into the init.ora files and restarted the listeners and the databases. On the dev and test servers the dispatchers registered with the listener automatically and connections are now being processed by the shared server processes.

However, on the primary server the dispatchers are not registering with the listener.

The Dispatchers and Shared Servers have been started correctly on all the servers.

The listener.ora files on all the servers are virtually the same and as I understand it do not require any editing to get the shared server mode working.

The listener.log file on the dev server is reporting successful connections and every few minutes has the following lines

25-JAN-2005 07:10:29 * service_update * IFSAND * 0
25-JAN-2005 07:10:56 * service_update * IFSL * 0

However the listener.log on the primary server is reporting the following every minute

25-JAN-2005 00:07:21 * service_register * IFST * 0
25-JAN-2005 00:07:21 * service_died * IFST * 12537
25-JAN-2005 00:07:34 * service_register * IFSL * 0
25-JAN-2005 00:07:34 * service_died * IFSL * 12537

I put the trace on for the listener processes on both dev and primary servers. At the point in the trace where the Dispatchers are being registered the trace from the primary server has the following entry which does not appear in the dev trace :-

[25-JAN-2005 13:31:21:051] nsglgrDoRegister: Failed locality check for bequeath handler.

The only difference between the primary server and the dev and test servers is that primary is in an HACMP failover cluster with a backup server.

I cannot find anything about this error and would welcome any help.