Forward Recovery (e.g., Redoing Committed Action) Patents (Class 714/16)
  • Patent number: 7302559
    Abstract: A memory dump program boot method includes the steps of defining, in non-volatile variables that are managed by a boot firmware of a computer system, boot information of a plurality of stand-alone dump programs that are installed in the computer system, and a table variable indicating a corresponding relationship of the plurality of stand-alone dump programs and a plurality of operating systems, specifying the boot information of a corresponding one of the plurality of stand-alone dump programs from the table variables when the boot firmware boots an arbitrary one of the plurality of operating systems, and writing information indicating the specified boot information in the non-volatile variables that are referred to when executing a stand-alone dump, and booting the corresponding one of the plurality of stand-alone dump programs when a booting of the stand-alone dump is instructed, by checking existence of variables that are referred to when executing the stand-alone dump and referring to information of the
    Type: Grant
    Filed: May 2, 2005
    Date of Patent: November 27, 2007
    Assignee: Fujitsu Limited
    Inventor: Yukio Oguma
  • Patent number: 7299378
    Abstract: A method and apparatus for mirroring data between a plurality of sites is provided. At a first site of the plurality of sites, a record is maintained that identifies which changes made to one or more data blocks that are stored at the first site have had associated redo information replicated to the other sites of the plurality of sites. A priority value associated with a transaction that is to be performed at the first site is determined. The transaction specifies a modification to a data block. Thereafter, if the priority value indicates that the transaction should not be lost if the first site becomes inoperable, then the transaction is committed only after the record indicates that all other changes that have updated the data block at the first site have had their respective redo information replicated to the other sites of the plurality of sites.
    Type: Grant
    Filed: January 15, 2004
    Date of Patent: November 20, 2007
    Assignee: Oracle International Corporation
    Inventors: Sashikanth Chandrasekaran, William F. Kehoe
  • Patent number: 7277900
    Abstract: A method and mechanism to compensate for the effects of a transaction in a database system is disclosed. Also disclosed is a method and mechanism for identifying one or more transactions that have modified or created an object in a database system. The disclosed approach can be applied to perform auditing for queries in a database system and for identifying the scope of changes and data accesses made by a transaction in the system.
    Type: Grant
    Filed: February 10, 2003
    Date of Patent: October 2, 2007
    Assignee: Oracle International Corporation
    Inventors: Amit Ganesh, Kenneth R. Jacobs, Jonathan Klein, Archna Kalra Johnson, Vivekanandhan Raja
  • Patent number: 7254751
    Abstract: In a command line environment, an error object is used to store information about each occurrence of an error during processing of a command-line instruction. In an object-based command line environment, each command in a complex command-line instruction stores sufficient information in the error object to completely describe the error. That information may be later used either by subsequent commands or in conjunction with another command-line instruction to further process the unprocessed resources.
    Type: Grant
    Filed: April 14, 2003
    Date of Patent: August 7, 2007
    Assignee: Microsoft Corporation
    Inventors: Jeffrey P. Snover, James W. Truher, Bruce G. Payette
  • Patent number: 7243088
    Abstract: A two copy versioning scheme is proposed. The scheme provides efficient implementation for a high read load database and eliminates read dependencies. The versioning scheme provides efficient implementation for transactions executing under ANSI READ COMMITTED isolation, and is extensible to serializable isolation. The two-copy versioning scheme is garbage free meaning that all versions of data records are used during execution and is adapted to index scanning operations. A “deferred delete” scheme allows read transactions to complete data deallocation operations. Statements that require “snapshots” are efficiently supported.
    Type: Grant
    Filed: August 6, 2003
    Date of Patent: July 10, 2007
    Assignee: Oracle International Corporation
    Inventors: Sanjay Verma, Mark L. McAuliffe, Sherry Listgarten, Sibsankar Haldar, Chi-Kim Hoang
  • Patent number: 7237147
    Abstract: Described is an approach for recovering the failure of a transaction. According to the approach, a first change and a third change is made to a first resource and a second change is made to a second resource. The second change was made after the first but before the third. However, to recover the failure of the transaction, a recovery record for the third change is applied before the recovery record for the second change. Also described is an approach involving establishing links that link together a set of undo records that contain changes made to the particular resource. Also described is an approach for applying two or more undo records in parallel.
    Type: Grant
    Filed: August 27, 2003
    Date of Patent: June 26, 2007
    Assignee: Oracle International Corporation
    Inventors: Amit Ganesh, Gary C. Ngai, Dieter Gawlick
  • Patent number: 7228456
    Abstract: Recovering data provided in chunks to a plurality of secondary storage devices includes, for each of the secondary storage devices, discarding data corresponding chunks for which all data thereof has not been received, and, for each of the secondary storage devices, restoring a chunk of data thereto where all of the chunks of data restored to the plurality of secondary storage devices correspond to a particular transmission cycle of primary storage devices that provide data to the plurality of secondary storage devices. Recovering data may also include, following discarding and prior to restoring, for each of the plurality of secondary storage devices having two different chunks, waiting for external intervention to indicate whether to restore a particular one of the chunks. The external intervention may be provided by a host computer that is proximate to at least one of the secondary storage devices or may be provided by a host computer that is proximate to at least one of the primary storage computers.
    Type: Grant
    Filed: December 1, 2003
    Date of Patent: June 5, 2007
    Assignee: EMC Corporation
    Inventors: Douglas E. Lecrone, Kevin C. Heasley, Vadim Longinov, Mark J. Halstead, David Meiri
  • Patent number: 7203866
    Abstract: A method and apparatus for providing an undoable programming language. More specifically the present invention relates to providing a fully undoable programming language, where the language includes a fully undoable core language portion and a conventional language portion. In an embodiment of the present invention, a method of encoding a general-purpose undoable programming language to enable fully undoable instructions includes encoding a fully undoable core imperative language portion having a plurality of undoable core instructions, each of the plurality of undoable core instructions to perform at least one undoable operation upon execution, and the at least one undoable operation being fully undoable until final termination of a program written using any of the plurality of undoable core instructions.
    Type: Grant
    Filed: July 5, 2002
    Date of Patent: April 10, 2007
    Assignee: AT & T Corp.
    Inventors: Giuseppe Di Fabbrizio, Nils Klarlund
  • Patent number: 7178060
    Abstract: A method and mechanism is described for reliably transmitting messages over an unreliable transport mechanism. A sender transmits a first message over an unreliable mechanism to a receiver, and a second message that identifies the first is transported over a reliable transport mechanism to the receiver. When the receiver receives the second message, the receiver determines whether it has received the first message. If not, the receiver requests retransmission of the first message.
    Type: Grant
    Filed: January 21, 2003
    Date of Patent: February 13, 2007
    Assignee: Oracle International Corporation
    Inventor: Roger J. Bamford
  • Patent number: 7137020
    Abstract: A method for configuring a computer system includes identifying a defective component in the computer system; disabling at least the defective component; and dynamically reconfiguring the computer system to allow continued operation with the defective component disabled. A computer system includes a plurality of components and a system controller. The system controller is adapted to identify a defective component from the plurality of components, disable at least the defective component, and dynamically reconfigure the computer system to allow continued operation with the defective component disabled.
    Type: Grant
    Filed: April 14, 2003
    Date of Patent: November 14, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Raymond J. Gilstrap, Daniel J. Hain, Fongyan Gang, David S. Gordon
  • Patent number: 7137032
    Abstract: Methods and systems for managing disk capacity allocated to a data log in a source data storage system during a merge process are disclosed. Data in the data log may be merged into corresponding data on a destination storage system connected to the source data storage system by at least one communication link. In one embodiment a method comprises maintaining a ratio of merge writes out of the data log to writes from a host computer into the data log within a desired range until the write process reaches a predetermined distance from the end of the data log, and quiescing writes from a host computer into the data log until the data log is fully written to the destination storage system.
    Type: Grant
    Filed: June 27, 2005
    Date of Patent: November 14, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Clark Lubbers, Susan Elkington, Randy Hess, Stephen J. Sicola, James McCarty, Anuja Korgaonkar, Jason Leveille
  • Patent number: 7124323
    Abstract: Disclosed is a technique for processing interruption of an operation that transfers data between a source and a target. An indication that a reverse restore operation has been interrupted is received. It is determined whether designation of at least one of an original source and an original target has been reversed. The settings of one or more relation indicators are also determined. Processing to be performed is identified based on the determinations of whether designations have been reversed and based on the settings of the one or more relation indicators.
    Type: Grant
    Filed: June 18, 2003
    Date of Patent: October 17, 2006
    Assignee: International Business Machines Corporation
    Inventors: Matthew Sanchez, Theresa Mary Brown, Sam Clark Werner, Gail Andrea Spear
  • Patent number: 7107294
    Abstract: A method and system for suspending log-based updates to a database in a manner that permits resumption of log-based updating without reinitializing the database. The method and system thereby permit efficient alternation between a log-based update mode and a database access mode. Unplayed log records are protected as revisions of database pages at the time that the log-based update was suspended. This approach permits log-based updating to resume at the same point at which log-based updating was suspended. In order to ensure consistent data for access while in database access mode, a roll-back procedure creates consistent data pages that are used for access and discarded when log-based update resumes.
    Type: Grant
    Filed: January 7, 2004
    Date of Patent: September 12, 2006
    Assignee: International Business Machines Corporation
    Inventors: Keriley K. Romanufa, Jeffrey J. Goss, Matthew A. Huras, Catherine S. McArthur, Dale M. McInnis, Michael J. Winer, Roger L. Q. Zheng
  • Patent number: 7099897
    Abstract: A system and an associated method selectively process log files for enhancing performance of tablespace recovery by processing only those log files required, and for selecting which log file to process during recovery for both redo and rollback phases of recovery. The system and method skip the processing of log files that do not contain records of interest for the tablespace being recovered and determines whether a log file contains anything that needs to be played, in particular for the recovery of a subsystem in the database, such as a tablespace. Pre processing of the log files is not done, rather including tablespace ID correlated with log file ID information is collected while the log files are created. The cross-correlated information is used during tablespace recovery to selectively determine which of the log files to process. Some log files may be skipped in cases where not all of the database system is being recovered.
    Type: Grant
    Filed: April 29, 2003
    Date of Patent: August 29, 2006
    Assignee: International Business Machines Corporation
    Inventors: Matthew Albert Huras, Dale Murray McInnis, Effi Ofar, Michael Jeffrey Winer, Roger LQ. Zheng
  • Patent number: 7093162
    Abstract: Persistent components are provided across both process and server failures, without the application programmer needing take actions for component recoverability. Application interactions with a stateful component are transparently intercepted and stably logged to persistent storage. A “virtual” component isolates an application from component failures, permitting the mapping of a component to an arbitrary “physical” component. Component failures are detected and masked from the application. A virtual component is re-mapped to a new physical component, and the operations required to recreate a component and reinstall state up to the point of the last logged interaction is replayed from the log automatically.
    Type: Grant
    Filed: June 29, 2004
    Date of Patent: August 15, 2006
    Assignee: Microsoft Corporation
    Inventors: Roger S. Barga, David B. Lomet
  • Patent number: 7093086
    Abstract: One or more computer systems, a carrier medium, and a method are provided for backing up virtual machines. The backup may occur, e.g., to a backup medium or to a disaster recovery site, in various embodiments. In one embodiment, an apparatus includes a computer system configured to execute at least a first virtual machine, wherein the computer system is configured to: (i) capture a state of the first virtual machine, the state corresponding to a point in time in the execution of the first virtual machine; and (ii) copy at least a portion of the state to a destination separate from a storage device to which the first virtual machine is suspendable. A carrier medium may include instructions which, when executed, cause the above operation on the computer system. The method may comprise the above highlighted operations.
    Type: Grant
    Filed: March 28, 2002
    Date of Patent: August 15, 2006
    Assignee: VERITAS Operating Corporation
    Inventor: Hans F. van Rietschote
  • Patent number: 7085955
    Abstract: A checkpointing method and system that utilize a write back controller. The system can include a first controller for implementing a first function, wherein the first function comprises part of a checkpoint operation and wherein the checkpoint operation comprises a series of contiguous checkpoint cycles. The system can also include a second controller, the second controller for implementing a second function, wherein the second function comprises a write back operation from a first memory location to a second memory location and wherein the write back operation occurs before a checkpoint cycle ends. Information already at the second memory location can be selectively written back to a third memory location.
    Type: Grant
    Filed: March 25, 2002
    Date of Patent: August 1, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Manohar Karkal Prabhu
  • Patent number: 7082506
    Abstract: Two data centers located in the vicinity are connected using a synchronous transfer copy function, and one of the data centers is coupled with a third data center disposed at a remote location by an asynchronous remote copying function. The order whereat a storage sub-system located in the vicinity has received data from a host is consistently guaranteed, and the third data center holds the data. Further, each storage sub-system includes a function whereby, during normal operation, data can be exchanged and the data update state can be obtained by the storage sub-systems located in the two data centers that do not directly engage in data transmission.
    Type: Grant
    Filed: March 8, 2002
    Date of Patent: July 25, 2006
    Assignee: Hitachi, Ltd.
    Inventors: Toshio Nakano, Katsunori Nakamura, Mikito Ogata, Yoshinori Okami, Seiichi Higaki
  • Patent number: 7082446
    Abstract: A method whereby a transaction log is converted to an intent log and vice versa while the replication system is operating, thus allowing the replication system to operate primarily as a transaction log, but switch eventually to an intent log before an overflow condition of the transaction log occurs. The size of the hybrid log is tuned so that it remains a transaction log (with all the benefits) for commonly occurring small network outages but will convert to an intent log (and thus not overflow) if a prolonged outage occurs.
    Type: Grant
    Filed: April 15, 2002
    Date of Patent: July 25, 2006
    Assignee: Steel Eye Technology, Inc.
    Inventor: James E. J. Bottomley
  • Patent number: 7076692
    Abstract: A system and method for enabling execution stop and re-start of a test executive sequence or hierarchy of test executive sequences. Execution progress of a test executive sequence or test executive sequence hierarchy may be periodically stored. This may comprise performing or taking “snapshots” of the execution at various points during the execution. Performing a snapshot may comprise saving all data needed to restore and re-start the execution at the respective point. The criteria of when and where to perform the snapshots may be any of various criteria and may be specified in any of various ways.
    Type: Grant
    Filed: August 31, 2001
    Date of Patent: July 11, 2006
    Assignee: National Instruments Corporation
    Inventor: James Grey
  • Patent number: 7072912
    Abstract: Nodes in a distributed system maintain virtual times according to specified rules. Each node can associate its virtual time with transactional messages that are transferred to other nodes and with log entries that are written to a log. A reference entry, which corresponds to an arbitrary point in time, is selected from a first log associated with a first node. A reference virtual time associated with the reference entry is identified. A matching entry, with an associated virtual time that appropriately corresponds to the reference virtual time, is selected from a second log associated with a second node. The first node is caused to roll-forward to the arbitrary time by processing the first log up to the reference entry. The second node is caused to roll-forward to the arbitrary time by processing the second log up to the matching entry.
    Type: Grant
    Filed: November 12, 2002
    Date of Patent: July 4, 2006
    Assignee: Microsoft Corporation
    Inventors: Surendra Verma, Jonathan M. Cargille
  • Patent number: 7065540
    Abstract: Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
    Type: Grant
    Filed: March 4, 2002
    Date of Patent: June 20, 2006
    Assignee: Oracle International Corporation
    Inventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
  • Patent number: 7065674
    Abstract: Fault-recovery information for transactional operations between computer systems and the outcome of those operations is logged at the originating point of the units of work, such as source-computer systems, which may include client computers in a client/server system. By using these distributed logs of fault-recovery information, a target-computer system, which may include a server computer, can reconstruct the target-computer system's previous interaction with various source-computer systems. Source-computer systems may use a proxy server for logging fault-recovery information to persistent storage. A target-computer system may digitally sign the fault-recovery information it sends to a source-computer system thereby making the fault-recovery information's authenticity verifiable. Similarly, the target-computer system may encrypt the fault-recovery information before sending it to the source-computer system to preserve the privacy of the fault-recovery information.
    Type: Grant
    Filed: August 1, 2002
    Date of Patent: June 20, 2006
    Assignee: Microsoft Corporation
    Inventors: Luis Felipe Cabrera, Marvin Michael Theimer
  • Patent number: 7055055
    Abstract: There is described a method of maintaining a record of changes to data on a recording medium and allowing reconstruction of the state of the medium at a prior time.
    Type: Grant
    Filed: April 24, 2000
    Date of Patent: May 30, 2006
    Assignee: Symantec Corporation
    Inventors: Eric D. Schneider, Michael J. Gustafson, Daniel J. Hagler
  • Patent number: 7055063
    Abstract: A method and apparatus for implementing a recovery process for a resource manager. The method and apparatus has the resource manager take checkpoints in a manner such that in the case of failure of the resource manager, the time it takes to have requests processed again is shorter than a specified request processing time.
    Type: Grant
    Filed: November 8, 2001
    Date of Patent: May 30, 2006
    Assignee: International Business Machines Corporation
    Inventors: Frank Leymann, Dieter Roller
  • Patent number: 7047441
    Abstract: A technique is described for guaranteeing recovery in a computer system comprising of recovery contracts with a plurality of obligations for a message exchange between a first component and a second component. Three forms of contract are described, governing interactions between three types of components. Each contract is bilateral, i.e. between a first component and a second component. The first and second components have mutual agreement on when the contract will be released to facilitate log truncation, and independent and/or autonomous recovery.
    Type: Grant
    Filed: September 4, 2001
    Date of Patent: May 16, 2006
    Assignee: Microsoft Corporation
    Inventors: David B. Lomet, Roger Barga, Gerhard Weikum
  • Patent number: 7047376
    Abstract: A remote site stores data received from a currently-used site and transfers the stored data to a proximal site. The proximal site stores the data received from the remote site and transfers the stored data to the currently-used site. The currently-used site crosschecks the data returned from the proximal site against the data transmitted to the remote site, and when the two data do not match each other, transmits the data to the remote site again.
    Type: Grant
    Filed: June 24, 2004
    Date of Patent: May 16, 2006
    Assignee: Hitachi, Ltd.
    Inventor: Takashi Horiuchi
  • Patent number: 7039773
    Abstract: An improved method, mechanism, and system for implementing, generating, and maintaining records, such as redo records and redo logs in a database system, are disclosed. Multiple sets of records may be created and combined into a partially ordered (or non-ordered) group of records, which are later collectively ordered or sorted as needed to create an fully ordered set of records. With respect to a database system, redo generation bottleneck is minimized by providing multiple in-memory redo buffers that are available to hold redo records generated by multiple threads of execution. When the in-memory redo buffers are written to a persistent storage medium, no specific ordering needs to be specified with respect to the redo records from the different in-memory redo buffers. While the collective group of records may not be ordered, the written-out redo records may be partially ordered based upon the ordered redo records from within individual in-memory redo buffers.
    Type: Grant
    Filed: April 29, 2003
    Date of Patent: May 2, 2006
    Assignee: Oracle International Corporation
    Inventors: Wei Ming Hu, Juan R. Loaiza, Roger J. Bamford, Vikram Joshi, Arvind Nithrakashyap, Tudor Bosman, Vinay Srihari, Alok Pareek
  • Patent number: 7036044
    Abstract: The location of appropriate undo data necessary for reversing an effect of an operation performed at a computer system is identified during a forward pass through a log. A cycle count can be used to determine if appropriate undo data is stored in an object or is stored in auxiliary storage. If appropriate undo data is stored in an object and the undo data would be potentially lost by processing a redo log entry to modify the contents of the object, the appropriate undo data is copied to auxiliary storage. In some embodiments, a secondary computer system receives log entries from a primary computer system. The secondary computer system can identify undo data necessary to reverse an effect of an operation performed at the secondary computer system from received log entries. Identified undo data can be copied auxiliary storage at the secondary computer system.
    Type: Grant
    Filed: November 15, 2002
    Date of Patent: April 25, 2006
    Assignee: Microsoft Corporation
    Inventors: Surendra Verma, Jonathan M. Cargille, Jacob P. Lacouture, Brian D. Andrew, Sameet H. Agarwal
  • Patent number: 7036041
    Abstract: A system, and a method, for reorganizing an execution schedule. According to the invention, the recovery time of a storage device where a failure occurs is determined. Then, according to the recovery time, a schedule is produced for the operations that use the storage device where the failure occurred, and for the operations that do not use the storage device.
    Type: Grant
    Filed: February 24, 2003
    Date of Patent: April 25, 2006
    Assignee: Hitachi, Ltd.
    Inventors: Yuji Akamatu, Motoaki Hirabayashi
  • Patent number: 7032131
    Abstract: Methods and systems for managing disk capacity allocated to a data log in a source data storage system during a merge process are disclosed. Data in the data log may be merged into corresponding data on a destination storage system connected to the source data storage system by at least one communication link. In one embodiment a method comprises maintaining a ratio of merge writes out of the data log to writes from a host computer into the data log within a desired range until the write process reaches a predetermined distance from the end of the data log, and quiescing writes from a host computer into the data log until the data log is fully written to the destination storage system.
    Type: Grant
    Filed: March 26, 2002
    Date of Patent: April 18, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Clark Lubbers, Susan Elkington, Randy Hess, Stephen J. Sicola, James McCarty, Anuja Korgaonkar, Jason Leveille
  • Patent number: 7028219
    Abstract: A Registration protocol is used in transaction processing for normal operations. If an error occurs, the system reverts to a Full Broadcast protocol. The Registration Protocol reduces the number of messages that are sent among CPUs in a cluster thereby permitting performance improvements in the system. The Registration Protocol has Begin, DP2 Check, Phase 1 Flush and Phase 2 (lock release) phases just as does the Full Broadcast Protocol, thereby permitting the Full Broadcast protocol to step in at any phase after an error is detected.
    Type: Grant
    Filed: November 21, 2002
    Date of Patent: April 11, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Charles Stuart Johnson, David J. Wisler, Trina R. Wisler, William James Carley, Yu-Cheung Cheung, Albert Gondi, Sitaram V. Lanka
  • Patent number: 7010693
    Abstract: A computer-implemented vault centrally archives an application from a client. Each application may be formed from one or more files, and each application has a unique meta description for reconstructing the application using the one or more files. The vault has one or more files which may be shared among applications; an access controller for allowing the client to retrieve a file from the vault based on the meta description; and a post controller for allowing the client to store a single instance of a uniquely indexed file based on the meta description.
    Type: Grant
    Filed: November 14, 2000
    Date of Patent: March 7, 2006
    Assignee: SupportSoft, Inc.
    Inventors: Cadir Batista Lee, Scott William Dale
  • Patent number: 7003694
    Abstract: A method for providing data integrity of a database system. A standby database is selected to replace a failed primary database. At least one redo log file having at least one data transaction is selected to be applied to the selected standby database. The selected standby database is updated with the data transaction from the selected redo log file if an identification code in the redo log file matches an identification code in the standby database.
    Type: Grant
    Filed: May 22, 2002
    Date of Patent: February 21, 2006
    Assignee: Oracle International Corporation
    Inventors: Richard James Anderson, Jr., Barbara A. Benton, William Havinden Bridge, Jr.
  • Patent number: 6981177
    Abstract: A method for disaster recovery includes copying at least a portion of information from a first database to a backup system as backup information. The method also includes storing an incremental change in a second database. The incremental change represents a change to at least a portion of the information in the first database. The method further includes restoring the first database using at least one of the backup information and the incremental change.
    Type: Grant
    Filed: March 25, 2003
    Date of Patent: December 27, 2005
    Assignee: Computer Associates Think, Inc.
    Inventor: Andrew M. H. Beattie
  • Patent number: 6978396
    Abstract: This invention relates generally to database servers and computer systems and, more particularly, describes the mechanism to run transaction operations originating from a primary server used to replicate data in parallel in a secondary server. Especially the invention relates to running concurrent or parallel operations in a secondary server for redundancy, recovery and propagated transactions. This invention describes how parallel operation in a secondary server improves performance and availability and how it maintains transaction order and output congruent with the primary server where transaction operations are originated.
    Type: Grant
    Filed: May 30, 2002
    Date of Patent: December 20, 2005
    Assignee: Solid Information Technology Oy
    Inventors: Jarmo Ruuth, Jarmo Parkkinen, Petri Soini, Antoni Wolski
  • Patent number: 6959401
    Abstract: A technique is described for guaranteeing recovery in a computer system comprising of recovery contracts with a plurality of obligations for a message exchange between a first component and a second component. Three forms of contract are described, governing interactions between three types of components. Each contract is bilateral, i.e. between a first component and a second component. The first and second components have mutual agreement on when the contract will be released to facilitate log truncation, and independent and/or autonomous recovery. The use of persistent and transactional components and the requirements for ensuring that it is possible to replay the components in a deterministic fashion, can result in a high cost or overhead in logging of nondeterministic events, including component interactions.
    Type: Grant
    Filed: May 23, 2002
    Date of Patent: October 25, 2005
    Assignee: Microsoft Corporation
    Inventors: David Bruce Lomet, Roger S. Barga
  • Patent number: 6928468
    Abstract: A communications system consisting of a server system that stores software applications, a broadcast system that broadcasts the software applications, and a multiplicity of portable clients that each include a receiver having a tuner that is selectively tunable to receive a selected one of the software applications broadcasted by the broadcast system. The portable clients can be any type of portable data communications device, such as a hand-held, palm-top, or notebook computing device, a PDA, an intelligent cellular phone, or any other personal multimedia appliance or Network Computer (NC). The broadcast system can be any suitable satellite or terrestrial air or cable broadcast system. The software applications can consist of a broad spectrum of different software applications, such as word processing, video games, spreadsheets, address books, calendars, and the like.
    Type: Grant
    Filed: October 29, 1999
    Date of Patent: August 9, 2005
    Assignee: Koninklijke Philips Electronics N.V.
    Inventor: Rene Leermakers
  • Patent number: 6918053
    Abstract: An error-handling framework is provided for business process transactions. The error-handling framework facilitates coordination of the invocation of exception and compensation handlers in response to errors. The error-handling framework includes support for custom ordering of compensation actions, data flow into and out of compensation actions, and management of the process state visible to compensation actions.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: July 12, 2005
    Assignee: Microsoft Corporation
    Inventors: Satish Ramchandra Thatte, Lucius Gregory Meredith, Marc Levy, Bimal Kumar Mehta, Johannes Klein, Anthony Dean Andrews
  • Patent number: 6915450
    Abstract: A method for communicating transactions includes providing an interconnect having a plurality of ports for communicating transactions between a plurality of domains in a computing system is provided. Each port is associated with a subset of the domains. The interconnect includes a first signal path for transmitting a first portion of the transaction and a second signal path for transmitting a second portion of the transaction. A transaction issued from a port associated with more than one of the domains is identified. An error in one of the first and second portions of the transaction is identified. The transaction is canceled responsive to identifying the error. A computing system for communicating transactions includes first and second devices. The first device is adapted to receive a first portion of a transaction. The second device is adapted to receive a second portion of the transaction in lockstep with respect to the first device.
    Type: Grant
    Filed: November 1, 2001
    Date of Patent: July 5, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Andrew E. Phelps, Thomas P. Van Wormer, Gary L. Riddle
  • Patent number: 6901533
    Abstract: When a processor becomes inactive, queues resident in the memory of that processor become inaccessible. Thus, in order to access those queues, an active processor takes over ownership of one or more of the inaccessible queues. Each queue may be rebuilt prior to its take over to ensure that it has up-to-date information.
    Type: Grant
    Filed: August 23, 2001
    Date of Patent: May 31, 2005
    Assignee: International Business Machines Corporation
    Inventors: Shawfu Chen, Robert O. Dryfoos, Allan Feldman, David Y. Hu, Jason A. Keenaghan, Peter A. Lewis, Peter G. Sutton, Mei-Hui Wang
  • Patent number: 6895349
    Abstract: A gate comparator control panel, in accordance with the subject invention, allows a user to define up to four different gate regions that may exist on any of the live waveforms, maths waveforms, or REF waveforms. A menu for each gate controls the position of each gate and selects the source for the signal that is to be gated. All gates must be the same width. A high level application copies the gated region of a waveform into a REF memory. For example, Gate 1 would go into REF 1, gate 2 into REF2 and so on. A user-settable tolerance value is used to determine if difference between the waveforms of the gates reaches a point at which a violation is indicated. A master gate position control causes all gates to move by the same amount, thus maintaining a constant distance between them. A master gate width control causes all gates to change width.
    Type: Grant
    Filed: November 8, 2001
    Date of Patent: May 17, 2005
    Assignee: Tektronix, Inc.
    Inventors: John J. Pickerd, Paul H. Buckle
  • Patent number: 6883109
    Abstract: A method of updating programmable device configuration code stored in EEPROMs of a system is operable on complex systems having separate management and system processors. The method includes executing a sequence for updating programmable device configuration code on a management processor of the system including erasing the EEPROMs, writing at least one block of configuration code to the EEPROMs, and checking for errors after writing. The errors checked for include failure of a FIFO to empty. Upon detecting errors, the method includes automatically retrying writes. Embodiments of the method are operable on systems having multiple serial busses interconnecting EEPROMs to a common configuration logic, and on systems having multiple management processors each capable of accessing the common configuration logic.
    Type: Grant
    Filed: July 30, 2001
    Date of Patent: April 19, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Michael John Erickson, Edward A Cross, David R. Maciorowski
  • Patent number: 6836842
    Abstract: Automatic tracking and assembly of changed portions of configuration data for partial run-time reconfiguration of a programmable logic device (PLD). The methods of an API that supports run-time reconfiguration applications for a PLD manage configuration data for partial reconfiguration. The API saves in application memory a copy of the configuration data used to configure the PLD. As the application updates selected portions of the in-memory configuration data, the API tracks which portions of the configuration data changed. When the application initiates reconfiguration of the PLD, the API partially reconfigures the PLD with the tracked changed portions of the configuration data. For readback of configuration data from the PLD, the API tracks which portions of in-memory configuration data are synchronized with the PLD.
    Type: Grant
    Filed: April 24, 2001
    Date of Patent: December 28, 2004
    Assignee: Xilinx, Inc.
    Inventors: Steven A. Guccione, Scott P. McMillan
  • Patent number: 6820218
    Abstract: Persistent components are provided across both process and server failures, without the application programmer needing take actions for component recoverability. Application interactions with a stateful component are transparently intercepted and stably logged to persistent storage. A “virtual” component isolates an application from component failures, permitting the mapping of a component to an arbitrary “physical” component. Component failures are detected and masked from the application. A virtual component is re-mapped to a new physical component, and the operations required to recreate a component and reinstall state up to the point of the last logged interaction is replayed from the log automatically.
    Type: Grant
    Filed: September 4, 2001
    Date of Patent: November 16, 2004
    Assignee: Microsoft Corporation
    Inventors: Roger S. Barga, David B. Lomet
  • Patent number: 6820216
    Abstract: A process which stores an indication of a next instruction in a sequence of instructions which is to be executed whenever during execution of instructions of the sequence it is apparent that state of the process is consistent, and refers to the stored indication to determine an instruction at which to begin re-execution of the sequence after executing a fault handler initiated by an interrupt to the sequence.
    Type: Grant
    Filed: March 30, 2001
    Date of Patent: November 16, 2004
    Assignee: Transmeta Corporation
    Inventors: Robert Cmelik, Malcolm Wing
  • Patent number: 6769074
    Abstract: Most commercial database systems provide a recovery mechanism that is used to restore data integrity in the event of a hardware or software failure. Many of these systems restore the database from the most recent backup file by rolling forward all transactions from the most recent undamaged transaction log. The present invention discloses a novel system and method for recovering data from user or application errors. Embodiments of the present invention selectively target and undo only those transactions that caused data corruption. In this way, the present invention is able to recover fine-grained database objects such as a table or a row within a table. The present invention has the further advantage of minimizing the number of transactions that are lost after recovery.
    Type: Grant
    Filed: May 21, 2001
    Date of Patent: July 27, 2004
    Assignee: Lumigent Technologies, Inc.
    Inventor: Lev Vaitzblit
  • Patent number: 6766471
    Abstract: The technique disclosed herein provides for simultaneously checkpointing all of the processes in a specified process group or family at the application level, and restoring those processes at a later time, optionally on a different machine, with the parent-child relationships restored intact. File descriptors that are shared among the processes at checkpoint time are restored to the family of processes such that the file descriptors are shared just as they were at the time of taking the checkpoint.
    Type: Grant
    Filed: December 28, 2000
    Date of Patent: July 20, 2004
    Assignee: International Business Machines Corporation
    Inventor: Kalman Meth
  • Patent number: 6760862
    Abstract: A service processor has a memory, and a controller coupled to the memory. The controller is configured to perform part of a maintenance procedure on a data storage system such that a state of the data storage system transitions from a first state to a second state, and store, in a memory, a data structure identifying the second state. The controller is further configured to, after the maintenance procedure is aborted prior to completion of the maintenance procedure and after a transition of the state of the data storage system from the second state to a third state, (i) restore the data storage system to the second state based on the data structure stored in the memory, and (ii) complete the maintenance procedure.
    Type: Grant
    Filed: May 22, 2001
    Date of Patent: July 6, 2004
    Assignee: EMC Corporation
    Inventors: Moshe Schreiber, Arod Shatil, Stefano Sguazzin
  • Patent number: 6760863
    Abstract: A CPU unit comprising a microprocessor for controlling a controlled system according to a stored sequence program and predetermined data, and a memory area where the sequence program and predetermined data are stored and a second sequence predetermined data both used by a preset operation proxy controlled unit are stored, wherein when the microprocessor detects an abnormality of the operation proxy controlled unit, the microprocessor controls the operation proxy controlled unit according to the second sequence program and second predetermined data after the microprocessor ends the predetermined processings of the unit.
    Type: Grant
    Filed: March 30, 2001
    Date of Patent: July 6, 2004
    Assignee: Mitsubishi Denki Kabushiki Kaisha
    Inventors: Hiroyuki Kagami, Hiroki Sugamata