transaction flush Statement

The transaction flush statement enables or disables the transaction flush mechanism.

Syntax

transaction flush [on|off|exp]

Parameter(s)

on

Enables the transaction flush mechanism.

off

Disables the transaction flush mechanism.

exp

The transaction flush mechanism is turned on if the expression evaluates to nonzero (true) and turned off if it evaluates to 0 (false).

Description

Normally, all updates processed within a transaction are force-flushed to a reliable medium (disk). This is done to assure ACID (Atomic, Consistent, Isolated, Durable) compliance, that is, the ability to recover a transaction if the machine should halt unexpectedly.

If ACID compliance is not necessary, then this flush mechanism can be disabled, providing significantly higher performance.

Once the flush is turned off, it remains off until the program completes.

If the flush is disabled and the machine halts, all pending transactions are aborted in a potentially semi-committed state.

Example(s)

transaction flush off else msg="9 flush"; goto fail

transaction start

write "1" on "1"

transaction flush 1 else msg="9 flush2"; goto fail

transaction rollback

delete 1

See Also

begin work Statement