Introduction

Stable queues are composed of segments stored on disk partitions. Each segment has a megabyte of message space, divided into 64 blocks of 16KB. Segments store messages passed by the system. Each block in a segment corresponds to a physical data transfer between disk and memory. A segment is allocated to just one queue—different queues cannot share segments. Each block within a segment may store one or more messages. A map of the system segments is stored in the rs_segments table of the RSSD.

Replication Server deletes messages from queues on a segment basis. Internally, it deletes blocks from the segments. However, the freed space does not appear in the system tables until all of the blocks contained in the 1MB segment are deleted.

When a stable queue is dumped, a segment may contain deleted blocks along with the undeleted blocks. You can identify the undeleted blocks of a segment by checking the First Seg.Block column in the admin who, sqm output for the queue.

Sometimes queues are dumped while Replication Server is actively adding and deleting segments from the queues. At such times, the output of the admin who, sqm command may not accurately represent the contents of the stable queues. Segments may be deleted before you can enter the sysadmin dump_queue command. To prevent Replication Server from changing a stable queue while you examine its contents, you can suspend the database connection or route that uses the stable queue. You can also start the Replication Server in standalone mode to prevent changes to a stable queue. For more information, see the Replication Server Administration Guide Volume 2.

This list briefly describes each command: