Was this helpful?
Example 12: SPO Shutdown
A series of events are associated with SPO shutdown.
The shutdown sequence begins when the controlling client (orsposvc or orspostart) disconnects. At that point all dispatchers and all slaves are disabled (that is, they will reject any further incoming client calls), and the housekeeping thread will attempt to stop and destroy all slaves and dispatchers. The housekeeping thread searches the component tree repeatedly until all slaves and dispatchers are gone, or until the configured shutdown grace period has expired.
The following example illustrates a typical shutdown sequence.
2007/09/06_16:08:19.751  CONTROLLER: DISCONNECTED - BEGINNING SHUTDOWN SEQUENCE
2007/09/06_16:08:19.751  DISABLING: DispatcherMgr
2007/09/06_16:08:19.751  DISABLING: D1
2007/09/06_16:08:19.751  DISABLING: S1
2007/09/06_16:08:19.751   STOPPING: S1 (due to shutdown)
                                         cnt        min        max        avg
                    QueueUse/Depth:     9902          0          2          0
                         QueueWait:                   0ms       93ms        0ms
                         Initiates:        1        453ms      453ms      453ms
                          Call4GLs:     9900          0ms      234ms        8ms
                       ASOTrxCount:     9900
2007/09/06_16:08:19.751 DESTROYING: S1
                                         cnt        min        max        avg
                    QueueUse/Depth:     9902          0          2          0
                         QueueWait:                   0ms       93ms        0ms
                         Initiates:        1        453ms      453ms      453ms
                          Call4GLs:     9900          0ms      234ms        8ms
                       ASOTrxCount:        0
2007/09/06_16:08:19.751 DESTROYING: D1
                                         cnt        min        max        avg
                    QueueUse/Depth:    19839          0          0          0
                         QueueWait:                   0ms        0ms        0ms
                         CurSlaves:        0
                        ClientRefs:        0
2007/09/06_16:08:19.751  DISABLING: D4
2007/09/06_16:08:19.751  DISABLING: S4
2007/09/06_16:08:19.767   STOPPING: S4 (due to shutdown)
                                         cnt        min        max        avg
                    QueueUse/Depth:    13502          0          2          0
                         QueueWait:                   0ms      172ms        1ms
                         Initiates:        1        484ms      484ms      484ms
                          Call4GLs:    13500          0ms      250ms       11ms
                       ASOTrxCount:    13500
2007/09/06_16:08:19.767 DESTROYING: S4
                                         cnt        min        max        avg
                    QueueUse/Depth:    13502          0          2          0
                         QueueWait:                   0ms      172ms        1ms
                         Initiates:        1        484ms      484ms      484ms
                          Call4GLs:    13500          0ms      250ms       11ms
                       ASOTrxCount:        0
2007/09/06_16:08:19.767 DESTROYING: D4
                                         cnt        min        max        avg
                    QueueUse/Depth:    17439          0          0          0
                         QueueWait:                   0ms       16ms        0ms
                         CurSlaves:        0
                        ClientRefs:        0
2007/09/06_16:08:19.767   SNAPSHOT: DispatcherMgr
                      TotalClients: 0
                    CurDispatchers: 0
                ReservedSlaveQuota: 0
                       TotalSlaves: 0
2007/09/06_16:08:19.767 TERMINATING
At the end of the shutdown grace period, a final snapshot is recorded. This will show any dispatchers that were unable to be destroyed because of clients still connected. It also will show any slaves that were unable to be stopped because of ASO calls remaining in progress for longer than the grace period. The previous example shows a clean shutdown, with no clients, dispatchers, or slaves remaining.
The TERMINATING event is the last log record written, just before the SPO process terminates.
Last modified date: 12/20/2023