×

Method and system for scheduling a partial ordered transactions for event correlation

  • US 7,266,571 B2
  • Filed: 07/27/2004
  • Issued: 09/04/2007
  • Est. Priority Date: 07/27/2004
  • Status: Expired due to Fees
First Claim
Patent Images

1. A computer implemented method for scheduling event transactions, each event transaction having a respective time stamp for use in an event-driven application having predetermined event rules, said method comprising:

  • resolving possible time dependencies among events according to said predetermined event rules; and

    determining when the event transactions are processed thus allowing the event transactions to be dispatched to distributed processors for concurrent processing, wherein said determining when the event transactions are processed comprises;

    registering each incoming event to maintain a list of registered events;

    for each registered event resolving possible time dependencies among registered events with marked situations that are not detected yet according to said predetermined event rules;

    dispatching an event transaction for which all said possible time dependencies are resolved to an event processing unit;

    receiving a processing result of the event transaction;

    determining whether said event transaction is to be committed or aborted;

    if the event transaction is to be aborted, aborting the event transaction and dispatching the event transaction again to a processing unit; and

    wherein said registering each incoming event includes;

    receiving an event;

    assigning a timestamp to the event;

    determining using predetermined event rules and the marked situations that can be triggered by the received event;

    adding the received event and the marked situations that can be triggered thereby to appropriate columns in an event concurrency table;

    determining in accordance with said predetermined event rules whether a transaction spawned by the received event can be started for the received event;

    if the transaction cannot be started for the received event, waiting until the transaction can be started;

    if the transaction can be started;

    dispatching the event to the event processing unit;

    receiving transaction processing results from the event processing unit;

    determining in accordance with the predetermined event rules, whether the transaction can be committed for the received event;

    if the transaction cannot be committed for the received event, discarding the processing results and restarting the transaction; and

    if the transaction can be committed for the received event, updating the event concurrency table and committing the transaction.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×