TransactionFlags Enumeration
This enumeration specifies which transaction option is to be retrieved or set.
enum {
TXN_RESET_OPTIONS = 1
TXN_NORMAL = 2
TXN_EXCLUSIVE_WRITEBACK = 3
TXN_EXCLUSIVE_WRITETHROUGH = 4
TXN_TIMEOUT_DURATION = 5
TXN_START_TIMEOUT = 6
TXN_QUERY_TIMEOUT = 7
TXN_DBMS_READONLY = 8
TXN_USE_DTC = 10
} TransactionFlags;
Value | Description |
---|---|
TXN_RESET_OPTIONS | Specifies that all options must be reset to their default values. Any associated option value is ignored. It is valid only for setting transaction options. |
TXN_NORMAL | Specifies the nonexclusive writeback mode transaction option.
Nonexclusive writeback mode allows transactions for other repository instances to execute concurrently. Updates are cached for each session until a transaction is committed. TXN_NORMAL, TXN_EXCLUSIVE_WRITEBACK, and TXN_EXCLUSIVE_WRITETHROUGH are write modes. Write modes are mutually exclusive. Only one write mode can be specified for each transaction. |
TXN_EXCLUSIVE_WRITEBACK | This flag was created for use with version 1 of the repository engine. This flag is no longer valid. |
TXN_EXCLUSIVE_WRITETHROUGH | This flag was created for use with version 1 of the repository engine. This flag is no longer valid. |
TXN_TIMEOUT_DURATION | Specifies the transaction option that determines the maximum time to wait for a lock. The default value for this option is 20000 milliseconds. |
TXN_START_TIMEOUT | Specifies the transaction option that determines the maximum time to wait before starting a transaction.
TXN_START_TIMEOUT is the timeout duration if there are any conflicts in starting a transaction (for example, when two transactions want to use a shared cache in exclusive mode). Setting TXN_START_TIMEOUT to zero means that there is no timeout. As a result, the repository engine will continuously try to start the transaction until it succeeds. The default value for this option is 0 milliseconds. |
TXN_QUERY_TIMEOUT | Specifies the transaction option that determines the maximum number of seconds to wait while a database query is executing.
If multiple applications are performing transactions on the same cache, you may want to increase this value. Doing so gives a transaction from one application more time to complete before a second transaction (from another application) begins. The default value for this option is 10 seconds. |
TXN_DBMS_READONLY | Specifies whether you can make changes to the repository database. If the value is zero, you can make changes. If the value is nonzero, the database is read-only. You can read the value of this option, but you cannot set it. |
TXN_USE_DTC | Specifies whether to use Microsoft® Distributed Transaction Coordinator (MS DTC) transactions. |
See Also
IRepositoryTransaction::Get Option
IRepositoryTransaction::Set Option