Publisher Options Tab

You can use this tab to configure a storage mode, enable group messaging and load balancing, and specify a publishing table for Publication Service.

The following table lists and explains all fields on the Publisher Options tab:

Publication Service: Publisher Options Tab

Field

Description

Storage Mode

For each Publication Service, you must specify a storage mode:

Publish by Value

Copies all specified columns in the source table to the publishing table. See Publish by Value for more information.

Publish by Reference

Copies only key column values to the publishing table. If no key column is defined in the database, a substitute non-key column must be defined to publish by reference. See Publish by Reference for more information.

Publishing Table

Name of the database table used to store a copy of data to be published. The table name can be qualified using the schema.table_name format. The publishing table cannot contain any user-created columns where the column name starts with ADB_. These characters are reserved for use by the adapter.

A common practice is to use the publishing table name prefixed by P_. For example, if your source table is MY_ORDER, its publishing table has to be named P_MY_ORDER.

A publishing table name must be less than 64 characters.

Referred Object

Type the name of a view or a different database object in this field to select source data. This field is displayed when you select Publish by Reference from the Storage Mode list.

If you want to select source data from a list of tables in the current user schema, click Add. If you want to select source data from a different schema, click Add from.

Update Mode

Select the following two methods to update tables:

Update  updates a row in the destination table only when the row exists.
Upsert  updates a row in the destination table if the row exists. If no such row exists, it performs an insert.

Enable Loop Detection

Select this check box to enable loop detection and prevent an infinite loop from occurring when the publishing and destination tables are the same table. Loop detection is disabled for DB2 on z/OS.

Do Not Generate Triggers

Select this check box to prevent the automatic generation of triggers. If this check box is selected, you have to generate triggers manually. It is good practice not to select this check box, but using this option helps manually manage the insertion of data into the publishing table.

Enable Group Messaging

Select this check box to use group messaging.

Group Size

Specifies the number of rows to be published in a single message. This field is displayed only when the Enable Group Messaging check box is selected. Global variables are acceptable.

Enable Load Balancing

Select this check box to use load balancing that enables multiple publisher endpoints to poll and publish changes of the same source (publishing) table. Set a batch polling size before selecting this option.

Note:

When you set the load balancing for Publication Service, the added table, automatically created publishing table, mutex name, and message subject name must be the same.

Mutex Name

Specifies the name for the mutex table. This field is displayed when the Enable Load Balancing check box is selected.

Number of Publication Service Threads

These threads are allocated on demand. For example, if the number of Publication Service threads is set to 1, a publication thread and the database connection will be created automatically. With this number set, each Publication Service can hold specified threads that connect to the database separately, and process requests in parallel. Each publication thread holds only one database connection. See Multithreading in Publication Service for more information.

Publish Child Data

This check box is selected by default. When a parent row is updated, the parent row and all related child rows are published. Upon receipt of such a message, a subscriber adapter updates the parent row, and then updates all the child rows with the data that was received in the message.

Any change to the child tables without a change in the parent table will not be processed. The adapter monitors only the parent table for publishing.

The adapter updates the child rows by deleting all the related child rows, and then inserts child rows again based on the data in the received message. For information on how to add related tables for a publisher adapter, see Adding Child Tables. For information on how to add related tables for a subscriber adapter, see Child Table Mappings Tab.

Polling Commit For DB2

Select the Polling Commit For DB2 check box to enable the adapter publisher to perform a commit operation after selecting a query for DB2. This check box is enabled only when you use DB2 database vendors, including DB2 OS390, DB2 AS400, and DB2 UDB.