Spool Service
(AS-ABAP)
This section describes the possible reasons for failure in the spool service and describes how you can increase its availability.
Each of the following components is involved in the SAP spool service and each can fail:
· Spool work process (this prepares the output data and processes the print job)
· Database service and file system of operating system
· Number range service
· Transfer program (SAPLPD).
· Destination host
· Host spool system
· Output device (for example, printer)
The spool service does not work with transactions, as happens in the database service. Therefore, if a printout is incomplete due to a failure in the output device, the printout is not rolled back in the same way that database transactions can be rolled back. Instead, such a spool request is in most cases marked as “completed” in SAP.
The spool service
needs the database service
to function. Control information for the spool requests and, if so configured,
the output print data itself, are stored in database tables. Output print data
is stored in the Temporary Sequential Objects (TemSe) database. To improve
system performance and reduce the size of the database, you can move the TemSe
database to the file system. For more information, see
Administering the
TemSe Database.
The spool work process is responsible for preparing the output data, processing the output request, and passing the output request data to the host spool system. Spool work processes run on the spool server. A single spool server can support multiple spool work processes.

Monitor the spool
system to identify problems before they affect the availability of your
spool service.
· When a spool server fails
An output device is tied to a single spool server. Do the following:
¡
Re-assign printers
from a failed spool server to a new spool server. Refer to
Assigning Output
Devices to Another Server.
¡
To anticipate the
problem, set up multiple and alternate
spool servers to
increase the availability of your spool service. You can also implement load
balancing for the spool service.
· When the database service fails
If the database service fails, no further spool requests can be generated and the following applies:
¡ Existing spool requests that have not yet been processed are not lost but they cannot be processed.
¡ Spool requests for which output requests have already been passed to the host spooler or SAPLPD (the transfer program) before the failure of the database service are processed by the host spool system. However, it is not possible to write a corresponding entry indicating “success” in the log table for the spool request.
For more
information about SAPLD, see
Setting Up SAPLPD for
Printers and Fax Devices.
¡ The spool service is unavailable for the period when the database is down.
You must now
check the
consistency of the spool database.
· When SAPLPD, the destination host, or the host spool system fail
In this case the spool request cannot be successfully processed. Such requests are sometimes set to “failed” in the corresponding spool table entries and you can manually restart them, once you have fixed the original problem (that is, the failure in the program SAPLPD, destination host, host spool system).
For more
information, see
Problem Analysis:
Print-Out Missing or Incorrect.
· When the spool work process fails
In this case the dispatcher restarts the failed spool work process. Then the relevant “administration transaction” on the database is rolled back, so that the uncompleted spool requests are not deleted. The new spool work process then takes over the work of the terminated one.
· When the output device (for example, printer) fails
In this case the spool request is usually not set to “failed” in the log table. Instead it is normally set to “completed”. For example, this situation might arise because the host spool system incorrectly reports successful processing or because the host spool system does not report anything and processing is assumed to be complete, once the output request has been passed to the host spool system.
So that you can manually restart such spool requests, do the following:
¡ Do not set the flag “delete after print”.
¡ Set the “retention period” to a high value (for example, 8 days), so that these spool requests are not deleted.
For more
information, see
Displaying and
Changing Spool Request Information.
You can avoid the manual restart if the host spool system itself automatically repeats the output request, once the existing device has been repaired or an equivalent device has been installed and defined to the host spool system. In this case, the spool request in the log table is not defined as failed since the host spool system has not reported a failure.
· When a failed output device cannot be repaired
If an
equivalent device is not available, then it is not possible to satisfactorily
print the output requests that were prepared for the failed device type on a
different device type. You need to regenerate the spool requests in this
situation, or alter them, so that they can be printed on a different device
type. For more information about printing on a different device type, see
Displaying and
Changing Spool Request Information. You can redirect spool
requests from list-type output (that is, from SAP reports), assuming the spool
type and print control exist on the different device type, but not output from
SAPscript.
You can define a “device pool” containing equivalent devices. If a device defined in a device pool fails, you must remove the failed device from the device pool using the spool administration (transaction SPAD) so that the failed device does not receive any further requests. The device pool continues operating after the failure of a device but with reduced throughput. Any requests that were assigned to the failed device before it was removed from the pool are not automatically redirected to functioning devices in the pool.
For more
information, see
Assigning an Output
Device to a Pool.