Methods and apparatus for processing partitioned changes
First Claim
1. A tangible computer program product having a computer readable storage medium operable to store computer program logic embodied in computer program code encoded thereon for atomic processing of partitioned event data in a storage area network (SAN) comprising:
- computer program code for receiving an update section, the update section including at least one subtransaction of a transaction;
computer program code for processing the update section in a managed object database, the managed object database operable to process a plurality of the update sections collectively defining the transaction;
computer program code for receiving a registration request from a process, the registration request including an event type that the requesting process is listening for;
computer program code for detecting occurrence of the listened-for event matching the event type in the registration request;
computer program code for selectively transmitting the listened-for event based on whether the event corresponds to an update section; and
computer program code for suppressing events indicative of the update section pending completion of each of the update sections corresponding to the transaction, the suppressed events operable to be released upon processing of each update section in the transaction, wherein each of the update sections results in at least one change to the managed object database, further comprising;
computer program code for generating an event for each change in the managed object database;
computer program code for suppressing, if the event corresponds to completion of processing an update section, propagation of the event, suppressing including storing events in a queuing area;
computer program code for propagating, if the event does not correspond to an update section, the event to registered processes adapted to receive the event;
computer program code for waiting for an indication of completion of each subtransaction defining the transaction; and
computer program code for releasing suppressed events from the queuing area for dissemination upon the indication of completion.
9 Assignments
0 Petitions
Accused Products
Abstract
In a storage area network, agents provide transactions of data sets containing updates to manageable entities in a SAN. A SAN server avoids intermittent dissemination of events pertaining to a single transaction by storing events in a cache until completion of all subtransactions in the transaction, and then disseminating all events pertaining to the transaction. Transactions are broken down into update sections, each containing one or more subtransactions collectively defining the entire transaction. Update sections corresponding to the transaction are tagged with a section ID. Events indicating completion of processing of the update section are identified by the section ID, and suppressed temporarily by storing them in the event cache pending completion of the transaction. Other events not matching a tagged section ID are allowed to disseminate. Upon completion of the transaction, events for all section IDs corresponding to the transaction are disseminated from the cache.
-
Citations
12 Claims
-
1. A tangible computer program product having a computer readable storage medium operable to store computer program logic embodied in computer program code encoded thereon for atomic processing of partitioned event data in a storage area network (SAN) comprising:
-
computer program code for receiving an update section, the update section including at least one subtransaction of a transaction; computer program code for processing the update section in a managed object database, the managed object database operable to process a plurality of the update sections collectively defining the transaction; computer program code for receiving a registration request from a process, the registration request including an event type that the requesting process is listening for; computer program code for detecting occurrence of the listened-for event matching the event type in the registration request; computer program code for selectively transmitting the listened-for event based on whether the event corresponds to an update section; and computer program code for suppressing events indicative of the update section pending completion of each of the update sections corresponding to the transaction, the suppressed events operable to be released upon processing of each update section in the transaction, wherein each of the update sections results in at least one change to the managed object database, further comprising; computer program code for generating an event for each change in the managed object database; computer program code for suppressing, if the event corresponds to completion of processing an update section, propagation of the event, suppressing including storing events in a queuing area; computer program code for propagating, if the event does not correspond to an update section, the event to registered processes adapted to receive the event; computer program code for waiting for an indication of completion of each subtransaction defining the transaction; and computer program code for releasing suppressed events from the queuing area for dissemination upon the indication of completion. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
2. A method of processing event data in a storage area network (SAN) comprising:
-
receiving an update section, the update section including at least one subtransaction of a transaction; processing the update section in a managed object database, the managed object database operable to process a plurality of the update sections collectively defining the transaction; suppressing events indicative of the update section pending completion of each of the update sections corresponding to the transaction, the suppressed events operable to be released upon processing of each update section in the transaction; wherein each of the update sections results in at least one change to the managed object database; generating an event for each change in the managed object database; suppressing, if the event corresponds to completion of processing an update section, propagation of the event; propagating, if the event does not correspond to an update section, the event to registered processes adapted to receive the event; receiving a transaction completion indicating completion of each of the update sections in the transaction; and propagating each of the suppressed events corresponding to the transaction.
-
Specification