Patent ID: 8982891
Filing Date: 2015-03-17
Classification: H04L

Abstract:
1. A sequencing method for use in a network comprising a plurality of asynchronous input sources containing data records including locally ordered events, an application configured for processing the data records, and a sequencer coupled to the application and the asynchronous input sources, wherein the sequencer and the application are implemented in a computing system having one or more processors, and wherein the sequencer is configurable to operate in a real-time mode, the sequencing method comprising the following steps performed by the application and the sequencer: requesting, by the application, an event from the sequencer ( checking, by the sequencer, to see if a priority queue is empty ( if the priority queue is empty, then the sequencer notifies the application that there are no events currently available ( if the priority queue is not empty, then an input source identified in the priority queue is selected as a top input source ( if the sequencer is running in the real-time mode, then the sequencer checks whether the current time is greater than a top timestamp ( if the current time is greater than the top timestamp, then the events from the input source at the head of the priority queue with a timestamp matching the top timestamp are returned and removed from the input source at the head of the priority queue ( after these events have been removed from the input source at the head of the priority queue, the sequencer checks whether the top input source is now empty ( if the top input source is now empty, then the top input source is removed from the priority queue ( if the top input source is not empty, then the top input source is reinserted into the priority queue ( wherein a state diagram is used to track a first input source, wherein a first state of the state diagram is an empty state indicating that the first input source is empty, a second state of the state diagram is a nonempty state indicating that the first input source comprises an event, a third state of the state diagram is a full state indicating that a queue of the first input source is unable to accept an additional event, and wherein a change from the first state to the second state causes a notification to be sent to the sequencer indicating that the first input source is nonempty.