Transaction Group Size
Syntax: Checkpoint client every n [(allow min to max)] audit blocks
Checkpoint client every n [(allow min to max)] transactions
Checkpoint client every n [(allow min to max)] update records
Checkpoint client every n [(allow min to max)] audit blocks or every n [(allow min to max)] transactions
Checkpoint client every n [(allow min to max)] audit blocks or every n [(allow min to max)] update records
Where
|
Is
|
n
|
The default number of audit bocks or updates or transactions to be allowed in a transaction group. n can be any valid integer.
|
Allow
|
A required word when specifying the range of values a DATABridge Client or accessory can use. The clause "Allow any" means there are no restrictions on the values. Omitting the Allow clause is equivalent to "Allow 1 - n". The parentheses around the Allow clause are required.
|
min
|
The minimum value a DATABridge Client or accessory can specify. This value must be 0 to allow a DATABridge Client or accessory to disable the checkpoint parameter.
|
max
|
The maximum value a DATABridge Client or accessory can specify.
|
Checkpoint
|
A required word
|
client
|
An optional word
|
during
|
An optional word
|
every
|
An optional word
|
audit
|
An optional word
|
blocks
|
This indicates that n is the minimum number of audit blocks processed in a transaction group.
|
or
|
A required word if you are checking combinations of checkpoint options.
|
update
|
An optional word
|
records
|
This indicates that n is the minimum number of updates the accessory receives in a transaction group.
|
long transactions
|
This option tells DBEngine to treat pseudo-quietpoints as real quietpoints. A pseudo-quietpoint occurs when a program is in the transaction state so long that the SYNCWAIT time specified in the DASDL is exceeded, and DMS forces all programs out of the transaction state. If the program terminates (or there is a halt/load) before finishing a long transaction, DMS rolls back the entire long transaction, but the client database still has the committed portions of the partial transaction. DBEngine eventually reverses these updates when the recovery region of the audit is processed.
|
transactions
|
This indicates that at least n transactions will be in each transaction group.
|
true/false
|
Enables or disables the option, respectively. The default is false.
|
Only
|
Prevents DATABridge Clients or accessories from changing the option.
|
Default:
Checkpoint client every 100 (allow any) audit blocks
%Checkpoint client every 1000 (allow 1 - 9999999) records
%Checkpoint client every 200 (allow any) transactions
%Checkpoint client every 10 (allow 1 - 36000) seconds
Checkpoint client during long transactions = false only
This Checkpoint option specifies the size of a transaction group. DBEngine ends a transaction group at the first quiet point (natural or super) after reaching the Checkpoint value. This ensures that transaction groups are roughly the same size and reduces the overhead associated with ending transaction groups due to frequent QPTs.
Updated records in a transaction group are not available to Accessories until the end of the transaction group is reached and the whole group is committed to the client database. Therefore, smaller transaction groups make the individual updates available sooner.
The disadvantage of smaller transaction groups is that DBEngine must send state information records at the end of each group to reflect the new location in the audit trail. The accessory must update its control tables with this state information, which is additional overhead. The target database might have some constraints on how many records can be updated in one group. If so, the Checkpoint option would need to be low enough to stay within those constraints.
|