Patent ID: 8347292

Claim:
A computer-implemented method, comprising: maintaining a list of aggregated transactions, wherein each of the aggregated transactions includes one or more transaction items, and wherein each of the one or more transaction items has a message identifier and a session identifier; obtaining a transaction item with a message identifier and a session identifier; adding the transaction item to an earliest aggregated transaction in an order of the list of aggregated transactions in which no other transaction item has the same session identifier; executing an aggregated transaction in the list of aggregated transactions that has met execution criteria; in response to determining that the aggregated transaction is not committing, detecting one or more errors; for each of the one or more errors, extracting a message identifier that is associated with a transaction item that caused that error; and breaking up the aggregated transaction into multiple smaller aggregated transactions such that each of the multiple smaller aggregated transactions contains at most one transaction item that caused an error; and adjusting a target size of each of the multiple smaller aggregated transactions based on measurements of system throughput.