System and method of failover recovery

US2017192863A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017192863-A1
Application numberUS-201514984567-A
CountryUS
Kind codeA1
Filing dateDec 30, 2015
Priority dateDec 30, 2015
Publication dateJul 6, 2017
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In some example embodiments, a method comprises: receiving, by a first node of a plurality of nodes in a distributed database system on a shared disk cluster infrastructure, a transaction request to perform a user database transaction a data item in a user database on a shared disk; acquiring, by the first node, a transaction lock for the data item; storing a lock file for the user database transaction in a lock information database on the shared disk, the lock file comprising lock information for the transaction lock and an indication of a status of the user database transaction, and the lock information comprising an identification of a location of the data item; and storing a transaction record of the user database transaction in the user database on the shared disk subsequent to the storing of the lock file in the lock information database on the shared disk.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer-implemented method comprising: receiving, by a first node of a plurality of nodes in a distributed database system on a shared disk cluster infrastructure, a transaction request to perform a user database transaction on one or more data items in a user database on a shared disk on the shared disk cluster infrastructure, the user database transaction comprising one or more database write operations for the one or more data items in the user database, and the shared disk being accessible by the plurality of nodes; acquiring, by the first node, a corresponding transaction lock for each one of the one or more data items of the user database transaction; storing, by at least one processor, a lock file for the user database transaction in a lock information database on the shared disk, the lock information database being a node-local database of the first node, the first node being the only node in the plurality of nodes able to write to the lock information database, the plurality of nodes other than the first node being able to read from the lock information database during a failover event for the first node, the lock file comprising corresponding lock information for each transaction lock of the user database transaction and an indication of a status of the user database transaction, and the corresponding lock information comprising an identification of a location of the corresponding data item for each corresponding transaction lock; and storing, by the at least one processor, a transaction record of the user database transaction in a transaction log in the user database on the shared disk subsequent to the storing of the lock file in the lock information database on the shared disk. 2 . The method of claim 1 , further comprising: detecting a failover event for the first node; accessing, by a second node of the plurality of nodes, the lock file in the lock information database of the first node on the shared disk based on the detecting the failover event; determining, by the second node, that the user database transaction is incomplete based on the indication of the status in the accessed lock file; acquiring, by the second node, each corresponding transaction lock for the one or more data items of the user database transaction based on the determination that the user database transaction is incomplete, causing the second node to be the only node in the plurality of nodes able to access the one or more data items in the user database; and performing, by the second node, a database recovery of the user database subsequent to the transaction lock being acquired by the second node, the database recovery restoring the user database up to a point of the failover event. 3 . The method of claim 1 , further comprising: completing, by the first node, the user database transaction on the user database on the shared disk concurrent with the first node having the transaction lock, the completing of the user database transaction comprising committing to the user database transaction or rolling back the user database transaction; and queuing the file for garbage collection based on the completing the user database transaction. 4 . The method of claim 1 , wherein the one or more database write operations comprise one or more data manipulation language (DML) write operations. 5 . The method of claim 1 , wherein the indication of the location of the data item comprises at least one of a database identification, a page identification, and a row identification. 6 . The method of claim 1 , wherein the lock information further comprises an identification of a type of the transaction lock. 7 . The method of claim 1 , wherein the lock file further comprises an identification of the user database transaction. 8 . A system comprising: at least one processor; and a non-transitory computer-readable medium storing executable instructions that, when executed, cause the at least one processor to perform operations comprising: receiving, by a first node of a plurality of nodes in a distributed database system on a shared disk cluster infrastructure, a transaction request to perform a user database transaction on one or more data items in a user database on a shared disk on the shared disk cluster infrastructure, the user database transaction comprising one or more database write operations for the one or more data items in the user database, and the shared disk being accessible by the plurality of nodes; acquiring, by the first node, a corresponding transaction lock for each one of the one or more data items of the user database transaction; storing a lock file for the user database transaction in a lock information database on the shared disk, the lock information database being a node-local database of the first node, the first node being the only node in the plurality of nodes able to write to the lock information database, the plurality of nodes other than the first node being able to read from the lock information database during a failover event for the first node, the lock file comprising corresponding lock information for each transaction lock of the user database transaction and an indication of a status of the user database transaction, and the corresponding lock information comprising an identification of a location of the corresponding data item for each corresponding transaction lock; and storing a transaction record of the user database transaction in a transaction log in the user database on the shared disk subsequent to the storing of the lock file in the lock information database on the shared disk. 9 . The system of claim 8 , wherein the operations further comprise: detecting a failover event for the first node; accessing, by a second node of the plurality of nodes, the lock file in the lock information database of the first node on the shared disk based on the detecting the failover event; determining, by the second node, that the user database transaction is incomplete based on the indication of the status in the accessed lock file; acquiring, by the second node, each corresponding transaction lock for the one or more data items of the user database transaction based on the determination that the user database transaction is incomplete, causing the second node to be the only node in the plurality of nodes able to access the one or more data items in the user database; and performing, by the second node, a database recovery of the user database subsequent to the transaction lock being acquired by the second node, the database recovery restoring the user database up to a point of the failover event. 10 . The system of claim 8 , wherein the operations further comprise: completing, by the first node, the user database transaction on the user database on the shared disk concurrent with the first node having the transaction lock, the completing of the user database transaction comprising committing to the user database transaction or rolling back the user database transaction; and queuing the file for garbage collection based on the completing the user database transaction. 11 . The system of claim 8 , wherein the one or more database write operations comprise one or more data manipulation language (DML) write operations. 12 . The system of claim 8 , wherein the indication of the location of the data item comprises at least one of a database identification, a page identification, and a row identification. 13 . The system of claim 8 , wherein the lock information further comprises an identification of a type of the transaction lock. 14 . The system of claim 8 , wherein t

Assignees

Inventors

Classifications

  • Locking methods, e.g. distributed locking or locking implementation details · CPC title

  • switching over of hardware resources · CPC title

  • Real-time · CPC title

  • Failover techniques · CPC title

  • involving logging of persistent data for recovery · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2017192863A1 cover?
In some example embodiments, a method comprises: receiving, by a first node of a plurality of nodes in a distributed database system on a shared disk cluster infrastructure, a transaction request to perform a user database transaction a data item in a user database on a shared disk; acquiring, by the first node, a transaction lock for the data item; storing a lock file for the user database tra…
Who is the assignee on this patent?
Sybase Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/2343. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jul 06 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).