The connector's event detection mechanism uses an event table, an archive table, stored procedures, and database triggers. Because there are potential failure points associated with the processing of events, the event management process does not delete an event from the event table until it has been inserted it into the archive table.
The database triggers populate an event table whenever an event of interest occurs in the database. The connector polls this table at a regular, configurable interval, retrieves the events, and processes the events first by priority and then sequentially. When the connector has processed an event, the event's status is updated.
The setting of its ArchiveProcessed property determines whether the connector archives an event into the archive table after updating its status. For more information on the ArchiveProcessed property, see Configuring the connector.
Table 1 illustrates the archiving behavior depending on the setting
of the ArchiveProcessed property.
Archive processed setting | Reason deleted from event table | Connector behavior |
---|---|---|
true or no value | Successfully processed | Archived with status of Sent to InterChange |
| Unsuccessfully processed | Archived with status of Error |
| No subscription for business object | Archived with status of Unsubscribed |
false | Successfully processed | Not archived and deleted from event table |
| Unsuccessfully processed | Remains in event table with status of Error |
| No subscription for business object | Remains in event table with status of Unsubscribed |
SmartFiltering is a mechanism within the database triggers that minimizes the amount of processing the integration broker and connector must perform. For example, if an application has updated the Contract business object 15 times since the connector last polled for events, the SmartFiltering stores those changes as a single Update event.