×

Transactional quality of service in event stream processing middleware

  • US 8,103,714 B2
  • Filed: 08/15/2008
  • Issued: 01/24/2012
  • Est. Priority Date: 08/15/2008
  • Status: Expired due to Fees
First Claim
Patent Images

1. A computer-implemented method for achieving transactional quality of service in a transactional object store system having at least one client issuing transaction requests, at least one publishing object, at least one read-only derived object, and at least one event stream processing query, wherein a change to the at least one publishing object defines an event to be delivered to one or more of the at least one event stream processing query, wherein a state of the at least one read-only derived object represents a result of an event stream processing query, and wherein the at least one event stream processing query repeatedly receives an event from one or more of the at least one publishing object, determines a result based on a history of events from the one or more publishing object, and delivers the result to a read-only derived object of the at least one read-only derived object, the computer-implemented method comprising:

  • receiving a transaction from a client of the at least one client;

    executing the transaction, wherein the transaction comprises one of reading a read-only derived object of the at least one read-only derived object, reading another object or writing another object, and wherein the transaction ends with one of a decision to request committing the transaction or a decision to request aborting the transaction;

    responsive to a decision to request committing the transaction, wherein the transaction comprises writing one of the at least one publishing object, delivering events to event stream processing queries, and executing the delivered event stream processing queries in parallel with the executing of the transaction; and

    responsive to a decision to request committing a transaction that comprises reading one of the at least one read-only derived object, performing a validation to determine whether the transaction can proceed to be committed, whether the transaction should abort, or whether the validation should delay waiting for one or more event stream processing queries to complete,wherein if a first transaction updates a publishing object that triggers an event processing query that updates a derived object, any second transaction occurring logically later must see the updated value of the derived object.

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