Enabling client-managed transactions
To allow clients to begin and end database transactions, AR System includes the following functions:
All entry APIs called between these two functions take place in the same database transaction. The calls are:
- GetEntry
- CreateEntry
- GetEntryBlob
- GetMultipleEntries
- SetEntry
- DeleteEntry
- MergeEntry
- GetListEntry
- GetEntryStatistics
- ServiceEntry
- GetListEntryWithFields
- XMLCreateEntry
- XMLSetEntry
- XMLGetEntry
- XMLServiceEntry
- XMLDeleteEntry
- BulkEntry
- BulkEntryCommit
- BulkEntryRollback
- BulkEntryBegin
- GetListEntryBlocks
- GetOneEntryWithFields
- GetListEntryWithMultiSchemaFields
A client can issue BMC Helix CMDB and AR System API calls that take place in the same database transaction. To support this, AR System also includes the following functions:
Unique handles are generated for every new transaction that is started. This ensures that clients cannot use old handles to access other client-managed transactions. Any call that includes a handle that the server cannot find returns an error.
At the end of any of these functions, the status is examined. If an error is returned, the entire transaction is rolled back, the database connection dedicated to the transaction is freed, and the handle is removed.
These functions give you control over the entry-related APIs (such as ARMergeEntry). You cannot use a design-time function (such as ARCreateSchema) to get control over the entry-related APIs.