DataBlade® API event types

For a DataBlade® API module, an event is a communication from HCL Informix® software that indicates the existence of some predefined condition, usually the occurrence of an exception (warning or error). The DataBlade® API represents an event as one of the enumerated values of the MI_EVENT_TYPE data type.

The following table shows the MI_EVENT_TYPE values that the DataBlade® API supports.
Table 1. DataBlade® API event types
Event type When the event type occurs C UDR Client LIBMI application
MI_Exception Raised when the database server generates an exception (a warning or an error) Yes Yes
MI_EVENT_SAVEPOINT Raised after the cursor flushes within an explicit transaction Yes No
MI_EVENT_COMMIT_ABORT Raised when the database server reaches the end of a transaction in which work was done Yes No
MI_EVENT_END_XACT Raised when the database server reaches the end of a transaction, or if a hold cursor is involved, raised only after the hold cursor is closed

It is preferable to register the MI_EVENT_COMMIT_ABORT callback.

Yes No
MI_EVENT_END_STMT Raised when the database server completes the execution of the current SQL statement, or for statements associated with a cursor, raised when the cursor is closed Yes No
MI_EVENT_POST_XACT Raised just after the database commits or rolls back a transaction if work was done in the transaction or if an MI_EVENT_END_XACT event was raised Yes No
MI_EVENT_END_SESSION Raised when the database server reaches the end of the current session Yes No
MI_Xact_State_Change Raised when the database server starts or ends a transaction, whether the transaction contains one or multiple SQL statements No Yes
MI_Client_Library_Error Raised when the client LIBMI library encounters an error No Yes
Important: MI_All_Events is a deprecated event type and is not listed with the MI_EVENT_TYPE values. Using the MI_All_Events event type is not recommended.
The milib.h header file defines the MI_EVENT_TYPE data type and its event types. The DataBlade® API event types can be grouped as follows.
Event type Event group More information
MI_Exception Database server exceptions Database server exceptions

MI_EVENT_SAVEPOINT
MI_EVENT_COMMIT_ABORT
MI_EVENT_POST_XACT
MI_EVENT_END_STMT
MI_EVENT_END_XACT
MI_EVENT_END_SESSION
MI_Xact_State_Change

State-transition events State-transition events
MI_Client_Library_Error Client LIBMI errors Client LIBMI errors