SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 57013: Load-balancing problems can occur if a SAS® Stored Process Server process fails to start

DetailsHotfixAboutRate It

If a SAS Stored Process Server MultiBridge port is in use when the SAS Object Spawner is started, you might encounter load-balancing problems.

The SAS Object Spawner is designed to attempt to restart SAS Stored Process Server processes that have previously failed to start on a specific port. A server that previously failed to start has its state cleared so that the Object Spawner will see that it can now be used again.

A problem has been reported whereby the Object Spawner incorrectly clears the states of successfully started and running servers. This cleared state causes the Object Spawner to attempt to launch these server processes again. Then, the server processes fail because they have dedicated listen ports that are currently in use by the successfully started process.

The problem is most likely to occur when the Object Spawner is restarted. The prior execution of the Object Spawner should have stopped any Stored Process Server processes that were still running when the Object Spawner was told to shut down. However, in some cases (such as when a Stored Process Server process is in a "hung" state), the request to stop the Stored Process Server might fail to actually stop the process. Then, the running process will still be holding on to the listen port when the Object Spawner attempts to restart. When this problem occurs, the Object Spawner log contains the following error:

The TCP/IP tcpSockBind support routine failed with error 98 (The specified address is already in use.). Bridge Protocol Engine Socket Access Method was unable to bind the listen socket to port xxxx.

If you encounter this problem, complete these steps:

  1. Stop the Object Spawner.
  2. Check whether any Stored Process Server processes are still running.
    • Under Linux or UNIX (if your Stored Process Server is running on the default "sassrv" user account), use the following command:
           > ps -ef | grep "sassrv"
          
    • Under Windows, use Windows Task Manager:
      1. Select the Command Line column in order to see the command that was used to launch processes.
      2. Look for processes that are running under the "sassrv" user account.
    For more information, see SAS Note 17488: "Tips for identifying Process IDs associated with Stored Process Servers."
  3. If you find any Stored Process Server processes that are still running, then "kill" these processes.
  4. Restart the Object Spawner.
  5. Check the Object Spawner log file to make sure that it does not contain any messages that state "The specified address is already in use."

A hot fix has been planned for this issue.



Operating System and Release Information

Product FamilyProductSystemSAS Release
ReportedFixed*
SAS SystemSAS Integration TechnologiesMicrosoft® Windows® for x649.3 TS1M09.4 TS1M3
Microsoft Windows Server 2003 Datacenter Edition9.3 TS1M0
Microsoft Windows Server 2003 Enterprise Edition9.3 TS1M0
Microsoft Windows Server 2003 Standard Edition9.3 TS1M0
Microsoft Windows Server 2003 for x649.3 TS1M0
Microsoft Windows Server 20089.3 TS1M09.4 TS1M3
Microsoft Windows Server 2008 R29.3 TS1M09.4 TS1M3
Microsoft Windows Server 2008 for x649.3 TS1M09.4 TS1M3
Microsoft Windows XP Professional9.3 TS1M0
Windows 7 Enterprise 32 bit9.3 TS1M09.4 TS1M3
Windows 7 Enterprise x649.3 TS1M09.4 TS1M3
Windows 7 Home Premium 32 bit9.3 TS1M09.4 TS1M3
Windows 7 Home Premium x649.3 TS1M09.4 TS1M3
Windows 7 Professional 32 bit9.3 TS1M09.4 TS1M3
Windows 7 Professional x649.3 TS1M09.4 TS1M3
Windows 7 Ultimate 32 bit9.3 TS1M09.4 TS1M3
Windows 7 Ultimate x649.3 TS1M09.4 TS1M3
Windows Vista9.3 TS1M0
Windows Vista for x649.3 TS1M0
64-bit Enabled AIX9.3 TS1M09.4 TS1M3
64-bit Enabled HP-UX9.3 TS1M09.4 TS1M3
64-bit Enabled Solaris9.3 TS1M09.4 TS1M3
HP-UX IPF9.3 TS1M09.4 TS1M3
Linux9.3 TS1M09.4 TS1M3
Linux for x649.3 TS1M09.4 TS1M3
Solaris for x649.3 TS1M09.4 TS1M3
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.