In some cases the utility_db cannot be started due to the following error:
I. 04/20 02:18:25. Adaptive Server IQ I. 04/20 02:18:25. Version 12.7 I. 04/20 02:18:25. (64bit mode) I. 04/20 02:18:25. Copyright 1992-2008 by Sybase, Inc. All rights reserved I. 04/20 02:18:25. I. 04/20 02:18:25. 40 physical processor(s) detected. I. 04/20 02:18:25. Running on SunOS 5.10 Generic_138888-07 I. 04/20 02:18:25. 49152K of memory used for caching I. 04/20 02:18:25. Minimum cache size: 49152K, maximum cache size: 262008K I. 04/20 02:18:25. Using a maximum page size of 4096 bytes I. 04/20 02:18:25. Database server started at Tue Apr 20 2010 02:18 I. 04/20 02:18:25. Trying to start SharedMemory link ... I. 04/20 02:18:25. SharedMemory link started successfully I. 04/20 02:18:25. Trying to start TCPIP link ... I. 04/20 02:18:25. Starting on port 2638 I. 04/20 02:18:25. Server name already in use I. 04/20 02:18:25. TCPIP communication link not started E. 04/20 02:18:25. A database server with that name has already started I. 04/20 02:18:25. Database server stopped at Tue Apr 20 2010 02:18 DBSPAWN ERROR: -85 Communication error
Possible reasons:
1. The server port number is already in use
Check the output of netstat -a | grep <PortNumber>
2. IQ server with the same server name already exists on the subnet
Add the -z option to the start script (e.g. start_asiq -n utility_db -z), check the network diagnostic messages below and try to find another IQ server with the same name on the subnet (ping -s <BroadcastAddress>).
I. 04/20 11:05:35. Looking for server with name utility_db I. 04/20 11:05:35. Sending broadcast to find server I. 04/20 11:05:35. Using broadcast address of: 140.16.48.255:2638 I. 04/20 11:05:35. Looking for server with name utility_db I. 04/20 11:05:35. Sending broadcast to find server I. 04/20 11:05:35. Using broadcast address of: 127.0.0.1:2638 I. 04/20 11:05:35. Server name already in use
Workarounds:
1. Make the IQ server name unique on the network
2. Disable sending broadcasts - start IQ with the “DoBroadcast=no” network protocol option
3. Disable receiving broadcasts - start IQ with the “–sb 0” server option or use “BroadcastListener=no” as the network protocol option
Annoyingly it was later possible to start up two utility_db with the same name in the subnet later. But it would seem sensible to start the utility_db with "DoBroadcast=no" in the future to avoid this problem.
Examples:
1. Start utility_db@host_name using default "Brodacast" options...
> start_asiq -n utility_db –z (you have to use the –z server option) … I. 04/20 11:05:35. Looking for server with name utility_db I. 04/20 11:05:35. Sending broadcast to find server I. 04/20 11:05:35. Using broadcast address of: 140.16.48.255:2638 I. 04/20 11:05:35. Looking for server with name utility_db I. 04/20 11:05:35. Sending broadcast to find server I. 04/20 11:05:35. Using broadcast address of: 127.0.0.1:2638 I. 04/20 11:05:35. Server name already in use I. 04/20 11:05:35. TCPIP communication link not started
2. Start utility_db@host_name using the option (DoBroadcast=no).
> start_asiq -n utility_db -x tcpip{DoBroadcast=no} –z
…
I. 04/20 10:52:22. Trying to start TCPIP link ...
I. 04/20 10:52:22. Starting TCP listener on IP address 0.0.0.0:2638
I. 04/20 10:52:22. Starting on port 2638
I. 04/20 10:52:22. Not performing a broadcast