Net-Change Database Size

Reduce memory consumption by the net-change database by triggering the net-change database to flush data to the replicate database once the net-change database size reaches a threshold size.

Memory consumption refers to Replication Server data structures such as the net-change database, and the data that the structures store. Net-change databases are in-memory data structures. Net-change database memory consumption can increase drastically when Replication Server compiles commands applied on a table with a large number of columns, or tables with large text and image datatype values. For example, compiling 1,000,000 rows in a table with 100 columns may consume approximately 10 times more memory than compiling the same number of rows in a table with 10 columns. Replication performance suffers when there is insufficient memory available for other processes and modules.

Replication Server uses the values you set for dsi_cdb_max_size and dsi_compile_max_cmds to control memory consumption. You can use dsi_cdb_max_size to control the maximum net-change database size that Replication Server can generate. Once the size reaches the threshold you set, Replication Server stops compiling new commands and transactions into the compiled transaction that Replication Server is building in the net-change database, performs the bulk apply of the compiled group to the replicate database, clears the net-change database, and releases the memory consumed by the net-change database.

The number of of net-change database instances that Replication Server generates depends on the values you set with dsi_cdb_max_size and memory_limit. The estimated memory requirements for a replication system using RTL is the number of replicate connections multiplied by dsi_cdb_max_size.