SAS Technical Support has received reports of previously working SAS Stored Process Servers becoming unresponsive over time for unknown reasons. Unresponsive means that the SAS Stored Process Server is running, but no requests from client applications are getting through to the server. These servers might also be referred to as hung or orphaned SAS processes.
What do you do?
Addressing this issue begins as a "put out the fire" situation in which Technical Support offers suggestions to confirm that the servers are down or unresponsive and to clean up and recover from the problem immediately.
For instructions on how to recover from the immediate problem of unresponsive servers, see SAS KB0039797, "Tips for addressing unresponsive SAS® 9.4 Stored Process Servers, Part 1."
If the problem of unresponsive stored process servers persists, then a long-term strategy is needed to gather information and determine why the problem occurs. This SAS KB article provides a suggested long-term strategy to facilitate this evaluation.
To examine this problem over time, you must add logging information to the object spawner and stored process server logs. You are not looking only for obvious errors in the logs but also for clues that show a pattern to the problem. For example, what was the last step or program that successfully executed? What is the last entry that was written in the log? The following SAS articles provide instructions for enabling verbose logging:
After enabling verbose logging for the SAS Object Spawner and SAS Stored Process Server, you must wait for the problem to occur again.
If stored processes begin generally failing again, gather the ObjectSpawner_yyyy-mm-dd_servername_pid.log file, ObjectSpawner_console_servername.log file (UNIX only), and all of the SAS Stored Process Server logs that correspond to the same time frame when the problem occurred.
Note: Be sure to collect the ObjectSpawner_console_servername.log file before you restart the object spawner or it will be overwritten.
Review the SAS Object Spawner and SAS Stored Process Server log files for errors, warnings, or unusual log entries that correspond to the time frame before and during the stored process failures. For a log error checking tool to help with log review, see SAS Note 44852, "SAS Log Error Checking Tool is available for download."
Consider the following questions to try to understand what is causing the problem to occur:
If the problem can be isolated to a particular stored process or sequence of stored processes, use the macro code described in SAS Note 19573, " Macro that helps when debugging 'hanging' Stored Process Server problems" to help identify the problematic step in the program.
If you cannot determine the cause of the unresponsive SAS Stored Process Servers using the above tips, complete the following steps:
You can use the Log Sweeper tool to collect SAS Stored Process Server and SAS Object Spawner log files and configuration files and save them as ZIP files in a specified location. The SAS Communities article "Sweep up my SAS logs" introduces the Log Sweeper tool and provides screen shots. For instructions on how to download, extract, and run the tool, see SAS Note 54813, "Using the LogConfigSweeper tool for automated log and configuration data collection for SAS® 9.4 Server Services."
If you are experiencing unresponsive stored process servers using SAS® 9.3, refer to the following article:
If you are experiencing unresponsive stored process servers using SAS® 9.2, refer to the following articles:
If you are experiencing unresponsive stored process servers using SAS 9.1.3, refer to the following articles: