Grouping Multiple Commits

I’ve heard about a configuration keyword for SQLBase that groups multiple COMMITs together. Does this keyword exist, and under whatconditions would it be useful?

Yes. The keyword “groupcommit” is a SQLBase configuration keyword that controls how many COMMITs are bundled together before writing them to disk. The ability to specify groupcommit first became available in SQLBase 5.1.4 and was designed to increase transaction throughput on systems with many active client applications.

The first characteristic to keep in mind with this keyword is that it tells SQLBase to wait until X COMMITs have occurred before writing them to disk. This sounds interesting at first; however, experienced DBAs and developers are probably a bit wary of a configuration keyword that causes SQLBase to wait, especially for something as critical as COMMITs. In fact this concern forms the basis for determining the best groupcommit value for your system.

Groupcommit specifies the maximum number of COMMITs thatSQLBase groups together before it physically flushes log buffers to disk. By default, SQLBase waits for 1 system tick for the number of COMMITs to equal the groupcommit setting. This waiting period iscontrolled by another configuration keyword, groupcommitdelay, whichcontrols the maximum number of system ticks (this is determined by hardware; it usually takes about 1/30 of a second) that SQLBase waits before it performs the log flushing.

If groupcommit and groupcommitdelay are setimproperly, SQLBase performance will degrade if both of the following conditions are satisfied:

  1. The number of active users is less than thegroupcommit
  2. The number of inactive users is greater than that of active users
Inactive user?A user simply connects to a database and does nothing. In SQLBase, a transaction is automatically started for this user at the time of connection. Inactive users have open transactions.

Active user?A user connects to a database, performs operations and issues COMMITs frequently.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin


Recent Articles: