Table 2-1 defines the properties you can set on the General tab for message queues and topics.
Property |
Datatype |
Default value |
Description |
---|---|---|---|
Queue ID |
string |
none |
Message queues only. A short name for the message queue. |
Cluster Partition |
string |
default |
The name of the cluster partition that serves the message queue. The “default” cluster partition contains all the servers in the cluster. If a server fails, another server in the same partition takes over management of the queue. If the server is not in a cluster, this property is ignored. |
Data Source |
string |
message.db |
The name of a data source, which identifies the database where persistent and transient overflow messages are stored. If a message queue uses a different data source than other resources involved in a transaction (such as direct JDBC access or EJB entity beans), all the data sources must be configured for two-phase commit to achieve atomicity between message queue operations and other resource access. Sybase recommends that you not change this property value. |
Database Table |
string |
jms_pm |
The name of the database table in which persistent and transient overflow messages for this message queue are stored. |
Automatic Recovery Timeout |
long |
60 |
The number of seconds before unacknowledged messages are recovered. When a client receives a message from a queue, but does not acknowledge it, the message is recovered automatically so that it can be received again. If the timeout is exceeded, the client is assumed to have failed. If the messages for a particular queue require a long time for clients to process, increase this value accordingly. |
Duplicate Detection Key |
string |
JMSMessageID |
To detect duplicate messages, the message service compares the value in this database field. |
Duplicate Detection Protocol |
string |
optimistic |
Select the protocol to use for detecting duplicate messages: optimistic, pessimistic, or none. To optimize the duplicate detection by using deferred inserts, and checking for duplicate key exceptions (in the duplicate detection table), set to optimistic. If duplicates are detected, transactions are rolled back, and automatic transaction retry adds non-deferred duplicate checking. To always use non-deferred duplicate checking, set to pessimistic. When there are few duplicates, optimistic is more efficient. When there are many duplicates, pessimistic may be more efficient. |
Duplicate Detection Table |
string |
jms_dd |
The database table in which the Duplicate Detection Key exists. |
Duplicate Detection Timeout |
long |
3600 seconds |
The number of seconds before an attempt to detect a duplicate message times out. |
Idle Connection Timeout |
long |
60 |
The number of seconds a queue remains in memory when it is idle; that is, when it is not being accessed by a client or a server component. Set to 0 or a negative number for no timeout. Transient messages that are in memory when a timeout occurs are discarded. |
Maximum Messages In Memory |
long |
10 |
The maximum number of messages to store in memory for this message queue. Typically, keeping messages in memory improves performance. Persistent messages are always stored in the database; some are additionally held in memory. Nonpersistent (transient) messages are held in memory, and stored in the database only if both the value of maximumMessagesInMemory is exceeded and the value of storeTransientMessages is true. Nonpersistent messages are discarded from memory if both the value of maximumMessagesInMemory is exceeded and the value of storeTransientMessages is false. |
Maximum Received Messages Waiting For Acknowledgment |
long |
0 |
The maximum number of messages that can be received from this message queue without being acknowledged. Once the maximum is reached, no more messages can be received by clients until the outstanding messages have been acknowledged. If this property (maximumWaitingForAcknowledge) value is either set to 0, or greater than the value of maximumMessagesInMemory, the value of maximumMessagesInMemory takes precedence. |
Pull Messages From |
string |
none |
To pull messages into a message queue from a queue on a remote JMS provider, or to pull messages into a topic from a topic on a remote JMS provider, specify the queue or topic name and the provider using: remote-destination@provider-name where remote-destination identifies one or more remote destinations (queues or topics) and provider-name is the name of a configured JMS provider. Specify each remote destination as either:
Specify multiple destinations in a comma-separated list. Persistent messages are sent exactly once if you are either using a JMS provider configured with a com.sybase.jms.client.InitialContextFactory type Initial Context Factory, or if the JMS provider uses a resource adapter that supports two-phase commit. Otherwise, messages are sent at least once. The remote message queue or topic name can contain one or more substitution expressions of the form “${var},” where var is the name of a local Java system property. |
Push Messages To |
string |
none |
To push messages from this queue to one or more queues or topics on a remote JMS provider, specify the provider and destination using: remote-destination@provider-name where remote-destination identifies one or more remote destinations (queues or topics) and provider-name is the name of a configured JMS provider. Specify each remote destination as either:
Specify multiple destinations in a comma-separated list. Persistent messages are sent exactly once if you are either using a JMS provider configured with a com.sybase.jms.client.InitialContextFactory type Initial Context Factory, or if the JMS provider uses a resource adapter that supports two-phase commit. Otherwise, messages are sent at least once. A destination name can contain one or more substitution expressions of the form “${var},” where var is the name of either a local Java system property or a JMS message header property. If a property referenced by a substitution expression exists as both a message header property and a system property, the message header property takes precedence.
|
Compress Stored Messages |
boolean |
false |
Select to compress messages before saving in the database. Enabling message compression increases CPU usage of the application server, and reduces the CPU and disk usage of the database server. Sybase recommends that you test system performance to determine whether enabling message compression is beneficial. |
Ignore Duplicate Messages |
boolean |
false |
This property is currently not used. |
Process Messages In Order |
boolean |
false |
Indicates whether to process messages strictly in the order that they are received. Messages are usually processed in order; however, when multiple receivers process the same queue, or messages are received and not acknowledged (then subsequently recovered), there is a possibility of processing messages out of order. Setting this value to true is equivalent to setting Maximum Received Messages to 1, which ensures that messages are processed in sequence, one at a time. |
Store Transient Messages |
boolean |
false |
Select to store transient (nonpersistent) messages in the message store when either the queue overflows—see Maximum Messages In Memory—or the queue times out due to client inactivity. If not selected and the queue either overflows or times out, messages are discarded. |
Suspend Message Delivery |
boolean |
false |
Select to suspend message delivery for this queue. |