Patent ID: 6895529
Filing Date: 2005-05-17
Classification: G06F

Abstract:
1. A data processing node configured to participate in global transactions comprising: A) a transaction processing application operating within a global transaction processing protocol incorporating a two-phase commit procedure; B) coupling means to at least one other data processing node operating within the global transaction processing protocol for information exchange therewith; C) a memory storing database files subject to access during transaction processing; D) a database access application communicating with the transaction processing application to address files stored in the memory and transfer data between the transaction processing application and the memory; E) a file management system having exclusive access to reserved locations in the memory for reading and writing meta-data therein which meta-data for each file stored in memory during transaction processing includes an undo log, and the undo log entry for each file affected by a data processing node failure is accessed after restart to provide information essential to rebuilding the state of the transaction at the data processing node at the time of the failure; F) physical file access logic selectively coupling the memory and the database access application, the physical file access logic incorporating file protections which are controlled by the file management system; G) node recovery means for recovering following a system failure which occurs during transaction processing on a database stored in said memory and faithfully rebuilding, after restart, the data processing node to the state immediately prior to the failure; said node recovery means including: the data processing node being further characterized in that: H) “recovery-needed”, “recovery-done” and “in-doubt” counts are normally maintained in individual file description records and in which, in the event of a data processing node failure as evidenced by a difference between a boot sequence identifier of the current system boot and a boot sequence identifier as recorded in the file description record; and I) if the node failure occurs when there is a non-zero “in-doubt” count, then, during restart;