Use the SQM command cache to store parsed data from the Executor thread that the Distributor thread can retrieve directly, and therefore improve replication performance.
The Executor thread transfers LTL commands from a Replication Agent to Replication Server. The Executor thread parses the LTL commands and stores them in an internal parsed format. The parsed data is then packed in binary format. The Executor thread sends the binary data to the SQM thread so that the Executor thread can receive new data from the Replication Agent. The SQM thread stores the binary data in the SQM cache until the data is written to the inbound stable queue. The Distributor thread retrieves the binary data, restores the data to the original format, and determines where to send the data.
Set cmd_direct_replicate on for the Executor thread to send internal parsed data along with the binary data. Replication Server stores the parsed data in a separate SQM command cache. The parsed data in the SQM command cache maps to the binary data stored in SQM cache. When required, the Distributor module can retrieve and process data from parsed data directly, and save time otherwise spent parsing binary data.
Use the sqm_cmd_cache_size and sqm_max_cmd_in_block parameters to set the the SQM command cache memory configuration. You can configure cmd_direct_replicate, sqm_cmd_cache_size and sqm_max_cmd_in_block in the same command or separately.
See Replication Server Reference Manual > Replication Server Commands for the default value and valid range of values for the parameters.
configure replication server set cmd_direct_replicate to 'on' set sqm_cmd_cache_size to '40971520' set sqm_max_cmd_in_block to '640' go
alter connection to TOKYO_DS.pdb1 set cmd_direct_replicate to 'on' go alter queue 2, 1, set sqm_cmd_cache_size to '2048576' set sqm_max_cmd_in_block to '640' go