Sun GlassFish Message Queue 4.4 Administration Guide

File-Based Persistence Properties for Transaction Logging

Table 17–6 lists the file-based persistence properties for the transaction logging mechanism introduced in Message Queue 4.4 Update 1.

Table 17–6 Broker Properties for File-Based Persistence Using the Transaction Logging Mechanism

Property 

Type 

Default Value 

Description 

imq.persist.file.newTxnLog.enabled

Boolean 

false

Enables the transaction logging mechanism introduced in Message Queue 4.4 Update 1. For information about this mechanism, see Optimizing File-Based Transaction Persistence.

imq.persist.file.txnLog.groupCommit

Boolean 

false

This property is applicable only if imq.persist.file.newTxnLog.enabled is true.

Can improve performance if imq.persist.file.sync.enabled is true and the number of concurrent transactions being processed is high:

  • If true, write operations to the transaction log are not handled by individual connection threads; instead, writes from connection threads are added to a transaction queue. The connection threads then wait until they are notified that the transactions have been logged. A separate thread periodically drains the transaction queue and writes it to the transaction log. When possible, this thread groups together multiple active transactions and writes them to the transaction log in a single operation. After the write completes, waiting client threads are notified.

  • If false, write operations to the transaction log are handled by individual connection threads. Only one thread at a time is able to write to the log.

imq.persist.file.txnLog.logNonTransactedMsgSend

Boolean 

false

This property is applicable only if imq.persist.file.newTxnLog.enabled is true.

Overrides the behavior for persisting non-transacted messages (as defined by the imq.persist.file.sync.enabled property):

  • If true, non-transacted messages are written to the transaction log before they are written to the persistent store.

  • If false, non-transacted messages are written directly to the persistent store.

imq.persist.file.txnLog.logNonTransactedMsgAck

Boolean 

false

This property is applicable only if imq.persist.file.newTxnLog.enabled is true.

Overrides the behavior for persisting non-transacted message acknowledgements (as defined by the imq.persist.file.sync.enabled property):

  • If true, acknowledgements of non-transacted messages are written to the transaction log before they are written to the persistent store.

  • If false, acknowledgements of non-transacted messages are written directly to the persistent store.