time slice error

Message text

timeslice %d

Explanation

The Adaptive Server Enterprise scheduler manages the processing time provided to client tasks. The scheduler allows a task to execute on a server engine using the rule:

<time slice> + <cpu grace time> = <maximum continuous processing time>

The following diagram illustrates management of processing time using default values for time slice (1 clock tick, 1/10th of a second) and cpu grace time (500 clock ticks, 50 seconds). The task begins execution at the end of the “free time.”

At periodic yield points, the task checks to see if the time slice has been exceeded. If it has not, the task continues executing. If it has, the task voluntarily yields the engine within the cpu grace time; if the task had not yet fulfilled the client request, the task goes to the end of the run queue. If there are no other tasks in the run queue, the server grants the task another processing interval.

It is possible for a task not to encounter a yield point and to exceed the time slice period. When this occurs, the server terminates the task with a time slice error at the end of the cpu grace time.

time slice errors are typically due to a delay in acquiring an Adaptive Server resource, a coding problem, or some other issue; for example, the Server may have made a blocking system call that does not return for a long time.

Action

If you receive time slice errors, take these steps:

  1. Set up a configurable shared memory dump (CSMD) using “time slice” as the dump condition. Information about CSMD can be found in the section “Other Useful Tasks” in the most recent version of Troubleshooting and Disaster Recovery.

  2. Try increasing the value of the cpu grace time parameter. See “Configuration parameters” in the System Administration Guide: Volume 1 chapter “Setting Configuration Parameters.”

WARNING! Sybase does not recommend changing the time slice configuration parameter to resolve these errors, only the cpu grace time parameter. Changing the time slice parameter affects all tasks and changes the dynamics of Adaptive Server’s processing time management; changing the cpu grace time affects only tasks that would be terminated with a time slice error.

If cpu grace time is set to 1500 and time slice errors persist, contact Sybase Technical Support.

Additional information

If you contact Sybase Technical Support, have on hand the information that is listed in “Reporting errors”, including the output of the Adaptive Server error log and the output of the CSMD dump.

See “Scheduling Client Task Processing Time” in the most recent version of Performance and Tuning: Basics for additional information about the time slice parameter.

Versions in which this error is raised

All versions