Publishing Table

Publishing tables mirror tables that you have identified for monitoring. They contain additional columns, primarily a sequence number and delivery status, which are required by the adapter to detect new rows. You can create a publishing table for each table that you want to activate in TIBCO Business Studio.

The trigger generated at design time automatically populates the values for these additional columns. It is good practice not to modify these values.

In addition to a copy of columns in the source table, the publishing table has the following additional columns:

Column Name Type Description
ADB_SUBJECT Varchar2(255) Specifies the subject used to publish the current row. The length is 255 characters. You can set a message subject in this field, which takes precedence over the default service subject. The adapter publishes the current row with the new message subject.

In group messaging, the group messages are sent to the subject that is set for the last row of the group.

Note: Subscription Service discards a message in which the ADB_SUBJECT column value is the same as the ADB_SUBJECT column value in an existing record in the destination table of Subscription Service.
ADB_SEQUENCE Integer Stores the continuously increasing sequence number that represents new rows in the publishing table. If a column with this name exists, a number is generated automatically.

By default, the schema type is String. The adapter treats this number as a string. This number can be larger than an integer if the database supports it.

ADB_SET_SEQUENCE Integer Currently not used.
ADB_TIMESTAMP Date Time of row insertion in the publishing table that is used to calculate expiration of rows. The timestamp is generated automatically.
ADB_TRACKINGID Varchar2(40) Tracking ID of the message. This is automatically added to the publishing table and the publishing schema.

If you do not want to monitor the tracking ID, you can manually remove this field from the project schema and the publishing table.

ADB_OPCODE Integer Operation code used by an adapter configuration:
  • 1 indicates INSERT.
  • 2 indicates UPDATE.
  • 3 indicates DELETE.
  • 4 indicates UPSERT. If a row exits, an UPDATE operation is performed; otherwise an INSERT operation is performed.
  • 10 indicates BYPASS. The ADB_OPCODE_BYPASS column is used to bypass the current table operation. For details, see Incremental Parent-Child Operation.

If an incoming TIBCO Rendezvous message does not have an operation code, an INSERT operation is performed.

Note: When you use a parent-child table relationship, it is good practice to set the same value for the ADB_OPCODE columns in the parent and child tables. Or only set the value of ADB_OPCODE column in the parent table and leave the child table empty.
ADB_UPDATE_ALL INTEGER Currently not used.
ADB_REF_OBJECT VARCHAR2(64) If Publish by Reference Object is used, this column contains the name of the reference object that provides source data.
ADB_L_DELIVERY_STATUS CHAR Delivery status of a TIBCO Rendezvous message:
  • P indicates pending acknowledgment.
  • N indicates that a new message has arrived, but has not yet been published.
  • S indicates that one thread has got this record, and will not be taken again when other records are polled.
  • C indicates complete.
  • F indicates failure.
ADB_L_CMSEQUENCE NUMBER (38, 0)

Certified messaging sequence number associated with this message.

A publishing table cannot contain any user-created columns where the column name starts with ADB_. These characters are reserved for adapter use.

Note: When you use a publishing table, note the following conditions:
  • When the adapter publishes a parent-child record or uses Publish by Reference mode, if the key value is empty (null) in the publishing table, the adapter considers this as an error operation. Meanwhile, the adapter updates the failure status in the publishing table by setting the adb_l_delivery_status status to F. As a result the data is not published.
  • In an adapter configuration, if two or more Publication Service services with the Rendezvous Certified (RVCM) transport enabled are set to the same message subject, the ADB_L_DELIVERY_Status status in the publishing table cannot be changed from P to C after data transmission.