Table of Contents Previous Next PDF


Oracle Tuxedo Message Queue MIB Reference

Oracle Tuxedo Message Queue MIB Reference
This chapter contains the following sections.
OTMQ_MIB
Name
OTMQ_MIB - Management Information Base for Oracle Tuxedo Message Queue (OTMQ)
Description
The OTMQ_MIB defines classes through which OTMQ application queues can be managed.
The OTMQ_MIB consists of the following classes.
 
Table 4‑1 OTMQ_MIB Classes
Each class description section has four subsections:
Overview
High level description of the attributes associated with the class.
Attribute Table
A table that lists the name, type, permissions, values and default for each attribute in the class. The format of the attribute table is described below.
Attribute Semantics
Tells how each attribute should be interpreted.
Limitations
Limitations in the access to and interpretation of this class.
Attribute Table Format
Each class that is a part of this MIB is documented in four parts. One part is the attribute table. The attribute table is a reference guide to the attributes within a class and how they may be used by administrators, operators, and general users to interface with an application.
TA_FLAGS Values
MIB defines the generic TA_FLAGS attribute which is a long containing both generic and component MIB-specific flag values. The following flag values are defined for OTMQ_MIB. These flag values should be OR'd with any generic MIB flag.
QMIB_FORCECLOSE
When setting the TA_STATE attribute of a T_OTMQSPACE object to CLEaning, this flag indicates that the state change should succeed even if the state of the queue space is ACTive.
QMIB_FORCEDELETE
When setting the TA_STATE attribute of a T_OTMQSPACE object to INValid, this flag indicates that the state change should succeed even if the queue space is ACTive or if messages are present in any of its queues. Similarly, when setting the TA_STATE attribute of a T_OTMQ object to INValid, this flag allows the queue to be deleted even if messages are present or processes are attached to the queue space.
QMIB_FORCEPURGE
When setting the TA_STATE attribute of a T_OTMQ object to INValid, this flag indicates that the state change should succeed even if messages are present on the queue. If, however, a message stored in the selected T_OTMQ object is currently involved in a transaction, the state change will fail and an error will be written to the user log.
FML32 Field Table
The field table for the attributes described on this reference page is found in the file udataobj/tpadm relative to the root directory of the Oracle Tuxedo software installed on the system. The directory ${TUXDIR}/udataobj should be included by the application in the path list (semicolon-separated list on Windows and colon-separated list otherwise) specified by the FLDTBLDIR32 environment variable and the field table name tpadm should be included in the comma-separated list specified by the FIELDTBLS32 environment variable.
Limitations
This MIB is provided only on Oracle Tuxedo Message Queue <Default ? Font>12c <Default ? Font>Release 2 (12.1.3) sites and later, both native and Workstation.
T_OTMQ Class Definition
Overview
The T_OTMQ class represents application queues. One or more application queues may exist in a single application queue space.
Limitations
It is not possible to retrieve all instances of this class by leaving all key fields unset. Instead, sufficient key fields must be supplied to explicitly target a single application queue space. These required key fields are TA_APPQSPACENAME, TA_QMCONFIG, and TA_LMID, except when the application is unconfigured (that is, when the TUXCONFIG environment variable is not set), in which case TA_LMID must be omitted. For example, if the TA_APPQSPACENAME, TA_QMCONFIG, and TA_LMID attributes are set in a request using tpcall(), all T_OTMQ objects within the specified queue space will be retrieved.
Attribute Table
 
TA_APPQNAME(k)(r)(*)
string[1..127]
string[1..15]
TA_QMCONFIG(k)(r)(*)
string[1..78]
TA_LMID(k)(r)(*)b
string[1..30]
string[1..15]
string[1..127]
( k )—GET key field e
( r )—required field for object creation
( * )—required
SET key field
a All attributes of class T_OTMQ are local attributes.
b TA_LMID must be specified as a key field except when the application is unconfigured (that is, the TUXCONFIG environment variable is not set).
c All operations on T_OTMQ objects—both GET and SET—silently open the associated queue space (that is, implicitly set the state of the queue space to OPEn if it is not already OPEn or ACTive). This may be a time-consuming operation if the queue space is large.
d TA_APPQORDER cannot be modified after the application queue is created.
e Sufficient key fields must be supplied in a GET operation to explicitly target a single application queue space.
Attribute Semantics
TA_APPQNAME: string[1..127]
Name of the application queue.
TA_APPQSPACENAME: string[1..15]
Name of the application queue space containing the application queue.
TA_QMCONFIG: string[1..78]
Absolute pathname of the file or device where the application queue space is located.
TA_LMID: string[1..30] (no comma)
Identifier of the logical machine where the application queue space is located.
TA_STATE
GET: {VALid}
A GET operation retrieves information about the selected application queues. The following list describes the meaning of the TA_STATE attribute returned in response to a GET request.
 
The specified queue exists. This state is INActive equivalent for purposes of permissions checking.
SET: {NEW | INValid}
A SET operation changes characteristics of the selected application queue or creates a new queue. The following list describes the meaning of the TA_STATE attribute returned by a SET request. States not listed cannot be set.
 
Delete the specified queue. The queue must be in state VALid to be deleted. If the queue space has processes attached to it (that is, it is in the ACTive state), the queue will not be deleted unless the TA_FLAGS attribute includes the QMIB_FORCEDELETE flag. In addition, if the queue has messages in it, it will not be deleted unless QMIB_FORCEPURGE is specified. Successful return leaves the object in the INValid state.
TA_APPQORDER
The order in which messages in the queue are to be processed. Legal values are PRIO, TIME, or EXPIR. A combination of sort criteria may be specified with the most significant criterion specified first, followed by other criteria, and optionally followed by either LIFO or FIFO, which are mutually exclusive. If EXPIR is specified, messages with no expiration time are dequeued after all messages with an expiration time. If neither FIFO nor LIFO is specified, FIFO is assumed. If no order is specified when a queue is created, the default order is FIFO. For example, the following are settings are legal:
PRIO
PRIO,TIME,LIFO
TIME,PRIO,FIFO
TIME,FIFO
EXPIR
EXPIR,PRIO,FIFO
TIME,EXPIR,PRIO,FIFO
TA_CMD: shell-command-string[0..127]
The command to be automatically executed when the high water mark for persistent (disk-based) messages, TA_CMDHW, is reached. The command will be re-executed when the high water mark is reached again after the low water mark, TA_CMDLW, has been reached.
TA_CMDHW: 0 <= num[bBm%] and TA_CMDLW: 0 <= num[bBm%]
The high and low water marks that control the automatic execution of the command specified in the TA_CMD attribute. Each is an integer greater than or equal to zero. Both TA_CMDHW and TA_CMDLW must be followed by one of the following key letters and the key letters must be consistent for TA_CMDHW and TA_CMDLW.
b
The high and low water marks pertain to the number of bytes used by persistent (disk based) messages in the queue.
B
The high and low water marks pertain to the number of blocks used by persistent messages in the queue.
m
The high and low water marks pertain to the number of messages (both persistent and non-persistent) in the queue.
%
The high and low water marks are expressed in terms of a percentage of queue capacity. This pertains only to persistent messages.
For example, if TA_CMDLW is 50m and TA_CMDHW is 100m, the command specified in TA_CMD will be executed when 100 messages are on the queue, and it will not be executed again until the queue has been drained below 50 messages and has filled again to 100 messages.
TA_CMDNONPERSIST: shell-command-string[0..127]
This attribute specifies the command to be executed automatically when the high water mark for non-persistent (memory-based delivery) messages, TA_CMDNONPERSISTHW, is reached. The command is re-executed when the high-water mark is reached again after the low-water mark for non-persistent (memory-based delivery) messages, TA_CMDNONPERSISTLW, has been reached.
TA_CMDNONPERSISTHW: 0 <= num[bB%] and TA_CMDNONPERSISTLW: 0 <= num[bB%]
These attributes specify the high and low water marks that control the automatic execution of the command specified in the TA_CMDNONPERSIST attribute. Each is an integer greater than or equal to zero followed by one of the following key letters. The key letters must be consistent for TA_CMDNONPERSISTHW and TA_CMDNONPERSISTLW.
b
The high and low water marks are expressed as the number of bytes used by non-persistent (in memory) messages in the queue.
B
The high and low water marks are expressed as the number of blocks used by non-persistent (in memory) messages in the queue.
%
The high and low water marks are expressed as a percentage of the shared memory capacity reserved for non-persistent messages in the queue space used by the queue.
The messages threshold type specified via the TA_CMDHW and TA_CMDLW attributes (when followed by an m) applies to all messages in a queue, including both persistent and non-persistent messages, and therefore is not available as a threshold type for TA_CMDNONPERSISTHW and TA_CMDNONPERSISTLW.
TA_CURBLOCKS: 0 <= num
The number of disk pages currently consumed by the queue.
TA_CURMSG: 0 <= num
The number of persistent messages currently in the queue. To determine the total number of messages in the queue, add TA_CURNONPERSISTMSG to this value.
TA_DEFAULTEXPIRATIONTIME
This attribute specifies an expiration time for messages enqueued with no explicit expiration time. The expiration time may be either a relative expiration time or NONE. The relative expiration time is determined by associating a fixed amount of time with a message after the message arrives at the queue manager process. When a message's expiration time is reached and the message has not been dequeued or administratively deleted, all resources associated with the message are reclaimed by the system and statistics are updated. If a message expires during a transaction, the expiration does not cause the transaction to fail. Messages that expire while being enqueued or dequeued within a transaction are removed from the queue when the transaction ends. There is no notification that the message has expired. If no default expiration time is specified for a queue, messages without an explicit expiration time do not expire. When the queue's expiration time is modified, the expiration times of messages that were in the queue before the modification are not changed.
The format is +seconds where seconds is the number of seconds allowed to lapse between the time that the queue manager successfully completes the operation and the time that the message is to expire. If seconds is set to zero (0) the message expires immediately. The value of this attribute may also be set to the string NONE. The NONE string indicates that messages enqueued to the queue with no explicit expiration time do not expire. You may change the expiration time for messages already in a queue with the TA_EXPIRETIME attribute of the T_OTMQMSG class in the OTMQ_MIB.
TA_DEFDELIVERYPOLICY
This attribute specifies the default delivery policy for the queue when no delivery mode is specified for a message enqueued to the queue. When the value is PERSIST, messages enqueued to the queue without an explicitly specified delivery mode are delivered using the persistent (disk-based) delivery method. When the value is NONPERSIST, messages enqueued to the queue without an explicitly specified delivery mode are delivered using the non-persistent (in memory) delivery method. When a queue's default delivery policy is modified, the delivery quality of service of messages that are in the queue before the modification are not changed. If the queue being modified is the reply queue named for any messages currently in the queue space, the reply quality of service is not changed for those messages as a result of changing the default delivery policy of the queue.
For non-persistent delivery, if the memory area is exhausted or fragmented such that a message cannot be enqueued, the enqueuing operation fails, even if there is sufficient persistent storage for the message. Similarly, if the persistent storage area is exhausted or fragmented such that a message cannot be enqueued, the enqueuing operation fails, even if there is sufficient non-persistent storage for the message. If the TA_MEMNONPERSIST attribute of the T_OTMQSPACE class is zero (0) for a queue space, no space is reserved for non-persistent messages. In such a case, any attempt to enqueue a non-persistent message fails. This type of failure results, for example, when no delivery quality of service has been specified for a message and the TA_DEFDELIVERYPOLICY attribute for the target queue has been set to NONPERSIST.
TA_MAXRETRIES: 0 <= num
The maximum number of retries for a failed queue message. When the number of retries is exhausted, the message is placed on the error queue of the associated application queue space. If there is no error queue, the message is dropped. The default is zero.
TA_OUTOFORDER: {NONE | TOP | MSGID}
The way in which out-of-order message processing is to be handled. The default is NONE.
TA_RETRYDELAY: 0 <= num
The delay, in seconds, between retries for a failed queue message. The default is zero.
TA_CURNONPERSISTBYTES: 0 <= num
This attribute specifies the number of shared memory bytes currently consumed by the non-persistent messages on the queue.
TA_CURNONPERSISTMSG: 0 <= num
This attribute specifies the number of non-persistent messages currently in the queue. To determine the total number of messages in the queue, add TA_CURMSG to this value.
TA_PID: 0 <= num
This attribute specifies owner process ID.
TA_ATTACHSTATE: {ATTACHED | NOTATTACHED}
This attribute specifies whether you have attached queue.
TA_ACTIVESTATE = {Y | N}
This attribute specifies whether the queue is permanently active. Setting to Y means the queue is permanently active; setting to N means the queue is not permanently active.
TA_QUETYPE: {P | S | M | U}
This attribute specifies queue type. P stands for primary queue; S stands for secondary queue; M stands for MRQ; U stands for unlimited queue (inherited from /Q).
TA_PRIMQUE: string[1..127]
For primary queue, TA_PRIMQUE is the queue name of the primary queue; for secondary queue, TA_PRIMQUE is the queue name of its controlling queue; for MRQ or temporary queue, TA_PRIMQUEUE is blank.
TA_TATTACH: YY[MM[DD[hh[mm[ss]]]]]
This attribute specifies the time when queue is attached; see TA_TIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds} for the format. If the queue is MRQ, this field has no meaning.
TA_TDETACH: YY[MM[DD[hh[mm[ss]]]]]
This attribute specifies the time when queue is detached; see TA_TIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds} for the format. If the queue is MRQ, this field has no meaning.
TA_MSGSENT: 0 <= num
This attribute specifies the number of messages sent.
TA_MSGRCV: 0 <= num
This attribute specifies the number of messages received.
TA_CONFIRM: {EO|II}
This attribute sets queue property of confirm style. The valid values option are EO, EI, and II. EO means confirm un-order; EI means confirm by order; II means implicit confirm.
TA_TIMERESTART: 1 <= num
Time, in seconds, since 00:00:00 UTC, January 1, 1970, as returned by the time(2) system call on T_SERVER:TA_LMID, when the server was last started or restarted.
TA_CURTIME: 1 <= num
Current time, in seconds, since 00:00:00 UTC, January 1, 1970, as returned by the time(2) system call on T_SERVER:TA_LMID. This attribute can be used to compute elapsed time from the T_SERVER:TA_TIMESTART and T_SERVER:TA_TIMERESTART attribute values.
T_OTMQMSG Class Definition
Overview
The T_OTMQMSG class represents messages stored in application queues. A message is not created by an administrator; instead, it comes into existence as a result of a call to tpenqplus(). A message can be destroyed either by a call to tpdeqplus() or by an administrator. In addition, certain attributes of a message can be modified by an administrator. For example, an administrator can move a message from one queue to another queue within the same queue space or change its priority.
Limitations
It is not possible to retrieve all instances of this class by leaving all key fields unset. Instead, sufficient key fields must be supplied to explicitly target a single application queue space. These required key fields are TA_APPQSPACENAME, TA_QMCONFIG, and TA_LMID, except when the application is unconfigured (that is, the TUXCONFIG environment variable is not set), in which case TA_LMID must be omitted. For example, if the TA_APPQSPACENAME, TA_QMCONFIG, and TA_LMID attributes are set in a request using tpcall(), all T_OTMQMSG objects in all queues of the specified queue space will be retrieved.
Attribute Table
 
string[1..32]
string[1..127]
string[1..15]
string[1..78]
TA_LMID(k)(*)b
string[1..30]
string[1..127]
string[0..32]
( k )—GET key fieldd
( * )—required SET key field
aAll attributes of class T_OTMQMSG are local attributes.
bTA_LMID must be specified as a key field except when the application is unconfigured (that is, the TUXCONFIG environment variable is not set).
cAll operations on T_OTMQMSG objects - both GET and SET - silently open the associated queue space (that is, implicitly set the state of the queue space to OPEn if it is not already OPEn or ACTive). This may be a time-consuming operation if the queue space is large.
dSufficient key fields must be supplied in a GET operation to explicitly target a single application queue space.
Attribute Semantics
TA_APPQMSGID: string[1..32]
A unique identifier for the queue message, which can be used to select the message for GET or SET operations. No significance should be placed on this value beyond using it for equality comparisons.
TA_APPQNAME: string[1..127]
Name of the application queue in which the message is stored.
TA_APPQSPACENAME: string[1..15]
Name of the application queue space containing the message.
TA_QMCONFIG: string[1..78]
Absolute pathname of the file or device where the application queue space is located.
TA_LMID: string[1..30] (no comma)
Identifier of the logical machine where the application queue space is located.
TA_STATE
GET: {VALid}
A GET operation retrieves information about the selected messages. The following list describes the meaning of the TA_STATE attribute returned in response to a GET request.
 
The message exists. This state is INActive equivalent for purposes of permissions checking.
SET: {INValid}
A SET operation changes characteristics of the selected message. The following list describes the meaning of the TA_STATE attribute returned by a SET request. States not listed cannot be set.
 
The message is deleted from its queue space. The message must be in state VALid before attempting this operation. Successful return leaves the object in the INValid state.
TA_CURRETRIES: 0 <= num
The number of retries that have been attempted so far on this message.
TA_CORRID: string[0..32]
The correlation identifier for this message provided by the application in the tpenqplus() request. The empty string indicates that a correlation identifier is not present.
TA_EXPIRETIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds}
This attribute specifies the time at which a message expires (that is, the time at which the message should be removed from the queue if it has not already been dequeued or administratively deleted). When a message expires, all resources used by it are reclaimed by the system and statistics are updated. If a message expires during a transaction, the expiration does not cause the transaction to fail. Messages that expire while being enqueued or dequeued within a transaction are removed from the queue when the transaction ends. There is no notification that the message has expired.
Expiration times cannot be added to messages enqueued by versions of the Oracle Tuxedo system that do not support message expiration, even when the queue manager responsible for changing this value supports message expiration. Attempts to add an expiration time fail. The empty string is returned by a GET operation if the expiration time is not set. The TA_EXPIRETIME format is one of the following:
+seconds
Specifies that the message will be removed after the specified number of seconds. If the value of seconds is set to zero (0), the message is removed immediately from the queue. Relative expiration time is calculated on the basis of the time at which the MIB request arrives and has been processed by the corresponding queue manager.
YY[MM[DD[hh]mm[ss]]]]
Specifies the year, month, day, hour, minute, and second when the message will be removed if it has not been dequeued or administratively deleted already. Omitted units default to their minimum possible values. For example, 9506 is equivalent to 950601000000. The years 00 through 37 are treated as 2000 through 2037, 70 through 99 are treated as 1970 through 1999, and 38 through 69 are invalid. An absolute expiration time is determined by the clock on the machine where the queue manager process resides.
NONE
Specifies that the message will never expire.
TA_LOWPRIORITY: 1 <= num <= 100 and TA_HIGHPRIORITY: 1 <= num <= 100
The lowest and highest priority within which to search for occurrences of T_OTMQMSG objects. These attributes may only be used as key fields with GET operations.
TA_MSGEXPIRESTARTTIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds} and TA_MSGEXPIREENDTIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds|NONE}
The expiration start and end times within which to search for occurrences of T_OTMQMSG objects. The range is inclusive. A start or end time must be specified as an absolute time value; see TA_EXPIRETIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds} for the format. These attributes may only be used as key fields with GET operations.
TA_MSGSIZE: 0 <= num
The size of the message, in bytes.
TA_MSGSTARTTIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds} and TA_MSGENDTIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds}
The start and end time within which to search for occurrences of T_OTMQMSG objects. The range is inclusive. A start or end time must be specified as an absolute time value; see TA_TIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds} for the format. These attributes may only be used as key fields with GET operations.
TA_NEWAPPQNAME: string[1..127]
Name of the queue into which to move the selected message. This queue must be an existing queue in the same queue space. The message must be in state VALid for this operation to succeed. This attribute is not returned by a GET operation. The delivery quality of service of messages that are moved will not be changed as a result of the default delivery policy of the new queue. When messages with an expiration time are moved, the expiration time is considered an absolute expiration time in the new queue, even if it was previously specified as a relative expiration time.
TA_PERSISTENCE: {PERSIST|NONPERSIST}
The quality of service with which the message is being delivered. This read-only state is set to NONPERSIST for non-persistent messages and PERSIST for persistent messages.
TA_PRIORITY: 1 <= num <= 100
The priority of the message.
TA_REPLYPERSISTENCE: {PERSIST | NONPERSIST | DEFAULT}
The quality of service with which replies to the message should be delivered. This read-only state is set to NONPERSIST for non-persistent, PERSIST for persistent, and DEFAULT when the reply is to use the default persistence established for the queue where the reply is to be enqueued.
Note that the default delivery policy is determined when the reply to a message is enqueued. That is, if the default delivery policy of the reply queue is modified between the time that the original message is enqueued and the reply to the message is enqueued, the policy used is the one in effect when the reply is finally enqueued.
TA_TIME: {YY[MM[DD[hh[mm[ss]]]]] | +seconds}
The time when the message will be made available. The format is one of the following:
+seconds
Specifies that the message will be processed seconds in the future. The value zero(0) specifies that the message should be processed immediately.
YY[MM[DD[hh[mm[ss]]]]]
Specifies the year, month, day, hour, minute, and second when the message should be processed. Omitted units default to their minimum possible values. For example, 9506 is equivalent to 950601000000. The years 00 through 37 are treated as 2000 through 2037, 70 through 99 are treated as 1970 through 1999, and 38 through 69 are invalid.
T_OTMQSPACE Class Definition
Overview
The T_OTMQSPACE class represents application queue spaces. An application queue space is an area in an Oracle Tuxedo system device; see the T_DEVICE class in TM_MIB(5) for more information about devices and their attributes. Each queue space typically contains one or more application queues, and each queue may have messages stored in it.
A queue space is uniquely identified by several attributes: its name (TA_APPQSPACENAME attribute), the device that contains it (TA_QMCONFIG attribute), and the logical machine where the device is located (TA_LMID attribute).
A queue space is typically associated with exactly one server group in a configured application. The queue space name as well as the device name are components of the TA_OPENINFO attribute of the T_GROUP object.
Limitations
It is not possible to retrieve all instances of this class by leaving all key fields unset. Instead, all three key fields must be supplied to explicitly target a single application queue space. The single exception occurs when accessing a local queue space via tpadmcall() in the context of an unconfigured application (that is, the TUXCONFIG environment variable is not set). In this case the TA_LMID key field must be omitted.
The above limitation regarding accessibility of queue spaces also applies to T_OTMQ, T_OTMQMSG, and T_OTMQTRANS objects because operations on all objects in the OTMQ MIB implicitly involve queue spaces.
Attribute Table
 
string[1..15]
TA_QMCONFIG(k)(r)(*)
string[1..78]
TA_LMID(k)(r)(*)b
string[1..30]
string[0..127]
( k )—GET key field
( r )—required field for object creation
( * )—required
SET key field
a.All attributes of class T_OTMQSPACE are local attributes.
b.TA_LMID must be specified as a key field except when the application is unconfigured (that is, the TUXCONFIG environment variable is not set).
c.All operations on T_OTMQ, T_OTMQMSG, and T_OTMQTRANS objects (both GET and SET) silently open the associated queue space (that is, implicitly set the state of the queue space to OPEn if it is not already OPEn or ACTive). This may be a time-consuming operation if the queue space is large.
d.TA_MAXQUEUES cannot be modified after the queue space is created.
Attribute Semantics
TA_APPQSPACENAME: string[1..15]
Name of the application queue space.
TA_QMCONFIG: string[1..78]
Absolute pathname of the file or device where the application queue space is located.
TA_LMID: string[1..30] (no comma)
Identifier of the logical machine where the application queue space is located.
TA_STATE
GET: {INActive | INItializing | OPEn | ACTive}
A GET operation retrieves information about the selected application queue space. The following list describes the meaning of the TA_STATE attribute returned in response to a GET request.
 
Disk space for the queue space is currently being initialized. This state is ACTive equivalent for purposes of permissions checking.
Shared memory and other IPC resources for the queue space have been allocated and initialized, and at least one process is currently attached to the shared memory. These processes can be the queue servers (TMS_TMQM, TMQUEUE, and perhaps TMQFORWARD) associated with the queue space, or they can be administrative processes such as qmadmin(1), or they can be processes associated with another application.
SET: {NEW | OPEn | CLEaning | INValid}
A SET operation changes the selected application queue space or creates a new one. The following list describes the meaning of the TA_STATE attribute returned by a SET request. States not listed cannot be set.
 
Create a new queue space. The state of the queue space becomes either INItializing or INActive following a successful SET to this state.
Remove the shared memory and other IPC resources for the queue space. This is allowed only when the queue space is in the OPEn or ACTive state. The QMIB_FORCECLOSE flag must be specified if the state is ACTive. When successful, all non-persistent messages are permanently lost.
Delete the queue space. Unless the QMIB_FORCEDELETE flag is passed, an error is reported if the state is ACTive or if messages exist on any queues in the queue space. Successful return leaves the object in the INValid state. When successful, all non-persistent messages are permanently lost.
TA_BLOCKING: 0 <= num
The blocking factor used for disk space management of the queue space. The default when a new queue space is created is 16.
TA_CURACTIONS: 0 <= num
This attribute specifies the current number of actions in use in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CURCURSORS: 0 <= num
This attribute specifies the current number of cursors in use in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CUREXTENT: 0 <= num <= 100
The current number of extents used by the queue space. The largest number allowed is 100. Each time the value of the TA_MAXPAGES attribute is increased, a new extent is allocated. When this attribute is modified, all non-persistent messages in the queue space are permanently lost.
TA_CURHANDLES: 0 <= num
This attribute specifies the current number of handles in use in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CURMEMFILTERS: 0 <= num
This attribute specifies the current number of bytes in use for filters in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CURMEMNONPERSIST: 0 <= num
The current amount of memory in bytes consumed by non-persistent messages in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CURMEMOVERFLOW: 0 <= num
This attribute specifies the current number of bytes in use of the overflow memory in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CURMSG: 0 <= num
The current number of messages in the queue space. This number can be determined only if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of these conditions are met, the value -1 is returned.
TA_CUROWNERS: 0 <= num
This attribute specifies the current number of owners in use in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CURPROC: 0 <= num
The current number of processes accessing the queue space.
TA_CURQUEUES: 0 <= num
The current number of queues existing in the queue space. This number can be determined only if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of these conditions are met, the value -1 is returned.
TA_CURTMPQUEUES: 0 <= num
This attribute specifies the current number of temporary queues in use in the queue space. This number can be determined if the queue space is OPEn or ACTive, or if the queue space is newly created. If none of the conditions apply, the value -1 is returned.
TA_CURTRANS: 0 <= num
The current number of outstanding transactions involving the queue space.
TA_ERRORQNAME: string[0..127]
Name of the error queue associated with the queue space. If there is no error queue, an empty string is returned by a GET request.
TA_FORCEINIT: {Y | N}
Whether or not to initialize disk pages on new extents for the queue space. The default is not to initialize. Depending on the device type (for example, regular file or raw slice), initialization can be done even if it is not requested.
TA_HWACTIONS: 0 <= num
This attribute specifies the highest number of concurrent actions reached in the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWCURSORS: 0 <= num
This attribute specifies the highest number of concurrent cursors created in the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWHANDLES: 0 <= num
This attribute specifies the highest number of concurrent handles opened in the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWMEMFILTERS: 0 <= num
This attribute specifies the highest number of bytes used for filters in the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWMEMNONPERSIST: 0 <= num
The largest amount of memory in bytes consumed by non-persistent messages since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWMEMOVERFLOW: 0 <= num
This attribute specifies the highest number of bytes used in the overflow memory in the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWMSG: 0 <= num
The highest number of messages in the queue space at a given time since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWOWNERS: 0 <= num
This attribute specifies the highest number of concurrent owners reached in the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWPROC: 0 <= num
The highest number of processes simultaneously attached to the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWQUEUES: 0 <= num
The highest number of queues existing in the queue space at a given time since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWTMPQUEUES: 0 <= num
This attribute specifies the highest number of concurrent temporary queues opened in the queue space since the queue space was last opened. The number is reset to 0 when the queue space state is set to CLEaning.
TA_HWTRANS: 0 <= num
The highest number of outstanding transactions at a given time involving the queue space since the queue space was last opened. If the queue space is accessed by more than one application, this number reflects all applications, not just the application represented by the TUXCONFIG environment variable. The number is reset to 0 when the queue space state is set to CLEaning.
TA_IPCKEY: 32769 <= num <= 262143
The IPC key used to access queue space shared memory.
TA_MAXACTIONS: 0 <= num
This attribute specifies the number of additional actions that the Queuing Services component of the Oracle Tuxedo infrastructure can handle concurrently. When a blocking operation is encountered and additional actions are available, the blocking operation is set aside until it can be satisfied. After setting aside the blocking operation, another operation request can be handled. When the blocking operation completes, the action associated with the operation is made available for a subsequent operation. The system reserves actions equivalent to the number of processes that can attach to a queue space, so that each queue manager process may have at least one blocking action. Beyond the system-reserved number of blocking actions, the administrator may configure the system to be able to accommodate additional blocking actions beyond the reserve. An operation fails if a blocking operation is requested and cannot be immediately satisfied and there are no actions available.
TA_MAXCURSORS: 0 <= num
This attribute specifies the number of cursors that users of that the Queuing Services component of the Oracle Tuxedo infrastructure may use concurrently. Cursors are used to navigate a queue. When a cursor is destroyed, the cursor resources are made available for subsequent cursor creation operations. When the cursors are used by an application, the administrator must configure the system to accommodate the maximum number of cursors that will be allocated concurrently. An operation fails if a user attempts to create a cursor and there are no cursor resources available. Oracle Tuxedo applications need not adjust this value. Adjusting this value has no effect on Oracle Tuxedo applications other than unnecessarily consuming shared memory resources.
TA_MAXHANDLES: 0 <= num
This attribute specifies the number of handles that users of that the Queuing Services component of the Oracle Tuxedo infrastructure may use concurrently. Objects manipulated by the queuing services API require handles to access the objects. When an object is opened by a call to the Queuing Services API, a new handle is created and returned to the user. When an object handle is closed, the handle is made available for subsequent open object operations. When the Queuing Services API is used by an application, the administrator must configure the system to accommodate the maximum number of handles that will be opened concurrently. An operation fails if a user attempts to open a queuing services object and there are no handles available. Adjusting this value has no effect on Oracle Tuxedo applications other than unnecessarily consuming shared memory resources.
TA_MAXMSG: 0 <= num
The maximum number of messages that the queue space can contain at a given time.
TA_MAXOWNERS: 0 <= num
This attribute specifies the number of additional Oracle Tuxedo infrastructure authenticated users that may concurrently use Queuing Services resources. There is one owner record per user, regardless of the number of open handles for the user. When there are no open handles for a user, the owner record is made available for subsequent users. The system reserves owners equivalent to the number of actions so that each action may be initiated by a different owner. Beyond the system-reserved number of owners that may be concurrently using queuing services resources, the administrator may configure the system to accommodate additional owners beyond the reserve. An operation fails if a user attempts to open a handle when they currently do not have any open handles, and there are no owners available. Adjusting this value has no effect on Oracle Tuxedo applications other than unnecessarily consuming shared memory resources.
TA_MAXPAGES: 0 <= num
The maximum number of disk pages for all queues in the queue space. Each time the TA_MAXPAGES attribute is increased, a new extent is allocated (see TA_CUREXTENT: 0 <= num <= 100). It is not possible to decrease the number of pages by setting this attribute to a lower number; an error is reported in this case.
TA_MAXPROC: 0 <= num
The maximum number of processes that can attach to the queue space.
TA_MAXQUEUES: 0 <= num
The maximum number of queues that the queue space can contain at a given time.
TA_MAXTMPQUEUES: 0 <= num
This attribute specifies the number of temporary queues that may be opened concurrently in the Queuing Services component of the Oracle Tuxedo infrastructure. Temporary queues reduce the need for administrators to configure each queue used by an application. They are used by dynamic self-configuring applications. Messages enqueued to temporary queues are not persistent. When all handles to a temporary queue are closed, the temporary queue resources are made available for subsequent temporary queue creation. When the temporary queues are used by an application, the administrator must configure the system to accommodate the maximum number of temporary queues that will be active concurrently. An open operation fails if a user attempts to open a temporary queue and there are no temporary queue resources available. Adjusting this value has no effect on Oracle Tuxedo applications other than unnecessarily consuming shared memory resources.
TA_MAXTRANS: 0 <= num
The maximum number of simultaneously active transactions allowed by the queue space.
TA_MEMFILTERS: 0 <= num
This attribute specifies the size of the memory area to reserve in shared memory to hold the compiled representation of user defined filters. The memory size is specified in bytes. Filters are used by the Queuing Services component of the Oracle Tuxedo infrastructure for message selection in dequeuing and cursor operations. Filters may be specified using various grammars but are compiled into an Oracle Tuxedo infrastructure normal form and stored in shared memory. Filters are referenced by a handle returned when they are compiled. When a filter is destroyed, the memory used by the filter is made available for subsequent compiled filters. When the filters are defined by an application, the administrator must configure the system to accommodate the maximum number of filters that will be concurrently compiled. An operation fails if a user attempts to create a new filter and there is not enough memory allocated for the compiled version of the filter. Adjusting this value has no effect on Oracle Tuxedo applications other than unnecessarily consuming shared memory resources.
TA_MEMNONPERSIST: 0 <= num [bB]
This attribute specifies the size of the area reserved in shared memory to hold non-persistent messages for all queues in the queue space. The memory size may be specified in bytes (b) or blocks (B). (The size of a block, in this context, is equivalent to the size of a disk block.) The [bB] suffix is optional and, if not specified, the default is blocks (B).
If the value is specified in bytes (b) for this attribute, the system divides the specified value by the number of bytes per page (page size is equivalent to the disk page size), rounds down the result to the nearest integer, and allocates that number of pages of memory. For example, assuming a page size of 1024 bytes (1KB), a requested value of 2000b results in a memory allocation of 1 page (1024 bytes), and a requested value of 2048b results in a memory allocation of 2 pages (2048 bytes). Requesting a value less than the number of bytes per page results in an allocation of 0 pages (0 bytes). If the value is specified in blocks (B) for this attribute and assuming that one block of memory is equivalent to one page of memory, the system allocates the same value of pages. For example, a requested value of 50B results in a memory allocation of 50 pages. All non-persistent messages in the specified queue space are permanently lost when TA_MEMNONPERSIST is successfully changed. If TA_MEMNONPERSIST for a queue space is zero (0) for a queue space, no space is reserved for non-persistent messages. In this case, any attempt to enqueue a non-persistent message fails. This type of failure results, for example, when no delivery quality of service has been specified for a message and the TA_DEFDELIVERYPOLICY attribute of the T_OTMQ class for the target queue has been set to NONPERSIST. For non-persistent delivery, if the memory area is exhausted or fragmented such that a message cannot be enqueued, the enqueuing operation fails, even if there is sufficient persistent storage for the message. Similarly, if the persistent storage area is exhausted or fragmented such that a message cannot be enqueued, the enqueuing operation fails, even if there is sufficient non-persistent storage for the message.
TA_MEMOVERFLOW: 0 <= num
This attribute specifies the size of the memory area to reserve in shared memory to accommodate peek load situations where some or all of the allocated shared memory resources are exhausted. The memory size is specified in bytes. Additional objects are allocated from this additional memory on a first-come-first-served basis. When an object created in the additional memory is closed or destroyed, the memory is released for subsequent overflow situations. This additional memory space may yield more objects than the configured number, but there is no guarantee that additional memory is available for any particular object at any given point in time. Currently, only actions, handles, cursors, owners, temporary queues, timers, and filters use the overflow memory.
TA_MEMSYSTEMRESERVED: 0 <= num
This attribute specifies the total amount of memory (in bytes) reserved from shared memory for queuing services system use.
TA_MEMTOTALALLOCATED: 0 <= num
This attribute specifies the total amount of memory (in bytes) allocated from shared for all queuing services objects.
TA_PERCENTINIT: 0 <= num <= 100
The percentage of disk space that has been initialized for the queue space.
TA_FIRSTTMPQ: 0 <= num
This attribute specifies the queue number of the first temporary queue; use GET request to query it. It can be set only when the SET request attribute is TA_STATE=NEW. You cannot update TA_FIRSTTMPQ after the queue space is created.
TA_MSGSENT: 0 <= num
This attribute specifies the number of messages sent.
TA_MSGRCV: 0 <= num
This attribute specifies the number of messages received.
TA_MRSJRNSAF: {ENABLE|DISABLE}
This attribute specifies the MRSJRNSAF status.
For SET request, the value can be set as ENABLE or DISABLE; you can use SET to change SAF status only when queue is ACTive. If SET request attribute is TA_STATE=NEW and TA_MRSJRNSAF is set to DISABLE, the SAF queue will not be created automatically.
For GET request, TA_MRSJRNSAF will return ENABLE, DISABLE, or NOTUP.
TA_MRSJRNDQF: {ENABLE|DISABLE}
This attribute specifies the MRSJRNDQF status.
For SET request, the value can be set as ENABLE or DISABLE; you can use SET to change DQF status only when queue is ACTive. If SET request attribute is TA_STATE=NEW and this field is set to DISABLE, the DQF queue will not be created automatically.
For GET request, TA_MRSJRNDQF will return ENABLE, DISABLE, or NOTUP.
TA_MRSJRNDLJ: {ENABLE|DISABLE}
This attribute specifies the MRSJRNDLJ status.
For SET request, the value can be set as ENABLE or DISABLE; SET is available only when queue is ACTive.
For GET request, TA_MRSJRNDLJ will return ENABLE, DISABLE, or NOTUP.
TA_MRSJRNPCJ: {ENABLE|DISABLE}
This attribute specifies the MRSJRNPCJ status.
For SET request, the value can be set as ENABLE or DISABLE; SET is available only when queue is ACTive.
For GET request, TA_MRSJRNPCJ will return ENABLE, DISABLE, or NOTUP.
TA_TIMERESTART: 1 <= num
Time, in seconds, since 00:00:00 UTC, January 1, 1970, as returned by the time(2) system call on T_SERVER:TA_LMID, when the server was last started or restarted.
TA_CURTIME: 1 <= num
Current time, in seconds, since 00:00:00 UTC, January 1, 1970, as returned by the time(2) system call on T_SERVER:TA_LMID. This attribute can be used to compute elapsed time from the T_SERVER:TA_TIMESTART and T_SERVER:TA_TIMERESTART attribute values.
T_OTMQTRANS Class Definition
Overview
The T_OTMQTRANS class represents run-time attributes of transactions associated with application queues.
Limitations
It is not possible to retrieve all instances of this class by leaving all key fields unset. Instead, sufficient key fields must be specified to explicitly target a single application queue space. For example, if all key fields except TA_XID are set in a request using tpcall(), all T_OTMQTRANS objects associated with the specified queue space will be retrieved.
It is important to keep in mind that transactions represented by objects of this class are not necessarily associated with the application in which they are retrieved. Care must be taken when heuristically committing or aborting a transaction because the transaction may actually belong to or have an effect on another application. The value of the TA_XID attribute is not guaranteed to be unique across applications.
Attribute Table
 
TA_XID(k)(*)
string[1..78]
string[1..15]
string[1..78]
TA_LMID(k)(*)
string[1..30]
( k )—GET key fieldc
( * )—required SET key field
a. All attributes of class T_OTMQTRANS are local attributes.
b. All operations on T_OTMQTRANS objects - both GET and SET - silently open the associated queue space (that is, implicitly set the state of the queue space to OPEn if it is not already OPEn or ACTive). This may be a time-consuming operation if the queue space is large.
c. Sufficient key fields must be supplied in a GET operation to explicitly target a single application queue space.
Attribute Semantics
TA_XID: string[1..78]
Transaction identifier as returned by tx_info() and mapped to a string representation. The data in this field should not be interpreted directly by the user except for equality comparison.
TA_APPQSPACENAME: string[1..15]
Name of the application queue space associated with the transaction.
TA_QMCONFIG: string[1..78]
Absolute pathname of the file or device where the application queue space is located.
TA_LMID: string[1..30] (no comma)
Identifier of the logical machine where the application queue space is located.
TA_STATE
GET:{ACTive | ABortonlY | ABorteD | COMcalled | REAdy | DECided | SUSpended}
A GET operation retrieves run-time information about the selected transactions. The following list describes the meaning of the TA_STATE attribute returned in response to a GET request. All states are ACTive equivalent for purposes of permissions checking.
 
The initiator of the transaction has called tpcommit() and the first phase of two-phase commit has begun.
SET: {HABort | HCOmmit}
A SET operation updates the state of the selected transactions. The following list describes the meaning of the TA_STATE attribute returned by a SET request. States not listed cannot be set.
 
T_OTMQNAMING Class Definition
Overview
T_OTMQNAMING is a class for OTMQ NAMING alias; use this class to get the alias of queue space.
Limitations
T_OTMQNAMING class only supports GET request to list all naming aliases.
Attribute Table
 
string[1..30]
string[1..1023]
string[1..15]
string[1..127]
TA_LMID(k)(r)(*)b
string[1..30]
( k )—GET key field
( r )—required field for object creation
( * )—required
SET key field
a. All attributes of class T_OTMQNAMING are local attributes.
b. TA_LMID must be specified as a key field except when the application is unconfigured (that is, the TUXCONFIG environment variable is not set).
Attribute Semantics
TA_APPQSPACENAME
Name of queue space, determining which queue space server will provide service.
TA_OTMQALIAS
Alias name of the queue.
TA_OTMQALIASSCOPE
The queue alias scope. G stands for global; L stands for local.
TA_OTMQSPACETARGET
Name of the target queue space for the alias.
TA_OTMQTARGET
Name of the target queue for the alias.
TA_STATE
GET: "{ACT}"
A GET operation retrieves run-time information showing that shared memory and other IPC resources have been allocated and initialized for queue space, and at least one process is currently attached to the shared memory. To get naming alias, the state of the queue naming server must be ACTive.
SET
T_OTMQNAMING class only supports GET request to get naming alias.
TA_LMID: string[1..30] (no comma)
Identifier of the logical machine where the application queue space is located.
OTMQ_MIB Additional Information
Using OTMQ MIB for Queue Spaces
List All OTMQ Queue Spaces (Qspace) in Tuxedo Domain
TSAM Agent uses OTMQ_MIB to get all queue spaces that are configured in the specific Tuxedo domain.
To list the application queue spaces known to an application, a two-level search is used. First, the groups using the OTMQ transaction manager TMS_TMQM are retrieved from the application configuration, and then the queue space referenced by each group is retrieved. The following code fragment assumes that each GROUP entry involving a queue space has a single logical machine associated with it (that is, server migration is not used).
Listing 4‑1 List Application Queue Spaces (Qspace) Known to the Application
/* Build the request to retrieve all TMS_TMQM groups */
Fchg32(rqbuf, TA_OPERATION, 0, "GET", 0);
Fchg32(rqbuf, TA_CLASS, 0, "T_GROUP", 0);
Fchg32(rqbuf, TA_TMSNAME, 0, "TMS_TMQM", 0);
fldid1 = TA_OPENINFO;
fldid2 = TA_LMID;
Fchg32(rqbuf, TA_FILTER, 0, (char *)fldid1, 0);
Fchg32(rqbuf, TA_FILTER, 0, (char *)fldid2, 1);
/* Make the request, assuming we are joined to the application */
rval = tpcall(".TMIB", rqbuf, 0, rpbuf, rplen, flags);
/* For each TMS_TMQM group, build the request to retrieve its queue space */
rval = Fget32(*rpbuf, TA_OCCURS, 0, (char *)occurs, NULL);
for (i = 0; i occurs; i++) {
/* Reinitialize the buffer and set all common attributes */
Finit32(rqbuf, (FLDLEN) Fsizeof32(rqbuf));
Fchg32(rqbuf, TA_OPERATION, 0, "GET", 0);
Fchg32(rqbuf, TA_CLASS, 0, "T_OTMQSPACE", 0);
/* Get the OPENINFO to determine device and queue space name */
/* OPENINFO has the format <resource-mgr>:<qmconfig>:<appqspacename> */
/* or on Windows <resource-mgr>:<qmconfig>;<appqspacename> */
rval = Fget32(rpbuf, TA_OPENINFO, i, openinfo, NULL);
/* The device is the 2nd field in OPENINFO */
qmconfig = strchr(openinfo, ':') + 1;
/* The queue space name is the 3rd field in OPENINFO */
#if defined(_TMDOWN) || defined(_TM_NETWARE)
#define pathsep ";" /* separator for PATH */
#else
#define pathsep ":" /* separator for PATH */
#endif
appqspacename = strchr(qmconfig, pathsep);
appqspacename[0] = '\e0'; /* NULL-terminate qmconfig */
appqspacename++; /* bump past the NULL */
/* Set the APPQSPACENAME and QMCONFIG keys */
Fchg32(rqbuf, TA_APPQSPACENAME, 0, appqspacename, 0);
Fchg32(rqbuf, TA_QMCONFIG, 0, qmconfig, 0);
/* Get the LMID (assume no migration for this group) */
rval = Fget32(rpbuf, TA_LMID, i, lmid, NULL);
Fchg32(rqbuf, TA_LMID, 0, lmid, 0);
/* Make the request */
rval = tpcall(".TMIB", rqbuf, 0, rpbuf2, rplen2, flags);
}
 
The above technique does not find any queue space that has been created but does not yet have a corresponding GROUP entry in the application configuration. Such queue spaces must be retrieved by knowing a priori the key fields (that is, TA_OTMQSPACENAME, TA_QMCONFIG, and TA_LMID) for the queue space.
Display OTMQ Queue Space (Qspace) Configuration Data
TSAM Agent uses OTMQ_MIB to get configuration information about the specific queue space that is configured in the specific Tuxedo domain.
Listing 4‑2 Display OTMQ Queue Space (Qspace) Configuration Data
/* Build the request */
Fchg32(rqbuf, TA_OPERATION, 0, "GET", 0);
Fchg32(rqbuf, TA_CLASS, 0, "T_OTMQSPACE", 0);
Fchg32(rqbuf, TA_APPQSPACENAME, 0, "QSPACE1", 0);
Fchg32(rqbuf, TA_QMCONFIG, 0, "/dev/q/dsk001", 0);
Fchg32(rqbuf, TA_LMID, 0, "SITE1", 0);
/* Make the request;*/
 
Using OTMQ MIB for Queues
List All OTMQ Queues in OTMQ Queue Space (Qspace)
TSAM Agent uses OTMQ_MIB to get the queue list that is configured in the specific Tuxedo domain.
The following code retrieves all queues in the queue space QSPACE1 in device /dev/q/dsk001 on logical machine SITE1.
Listing 4‑3 List All OTMQ Queues in OTMQ Queue Space (Qspace)
/* Build the request */ Fchg32(rqbuf, TA_OPERATION, 0, "GET", 0);
Fchg32(rqbuf, TA_CLASS, 0, "T_OTMQ", 0);
Fchg32(rqbuf, TA_APPQSPACENAME, 0, "QSPACE1", 0);
Fchg32(rqbuf, TA_QMCONFIG, 0, "/dev/q/dsk001", 0);
Fchg32(rqbuf, TA_LMID, 0, "SITE1", 0);
/* Make the request; see above */
 
Get Detail Information about Queue
TSAM Agent uses OTMQ_MIB to get detail information, including the message counters and quotas of specified queues that are configured in the specific Tuxedo domain.
Listing 4‑4 Get Detail Information about Queue
/* Build the request */
Fchg32(rqbuf, TA_OPERATION, 0, "GET", 0);
Fchg32(rqbuf, TA_CLASS, 0, "T_OTMQ", 0);
Fchg32(rqbuf, TA_APPQNAME, 0, "errque", 0);
Fchg32(rqbuf, TA_APPQSPACENAME, 0, "QSPACE1", 0);
Fchg32(rqbuf, TA_QMCONFIG, 0, "/dev/q/dsk001", 0);
Fchg32(rqbuf, TA_LMID, 0, "SITE1", 0);
/* Make the request;*/
 
See Also
Oracle Tuxedo ATMI C Function Reference in Oracle Tuxedo documentation.

Copyright © 1994, 2017, Oracle and/or its affiliates. All rights reserved.