Failover and resume when using ordered sequences in a multi-instance database environment

US9910893B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9910893-B2
Application numberUS-201113309300-A
CountryUS
Kind codeB2
Filing dateDec 1, 2011
Priority dateDec 1, 2011
Publication dateMar 6, 2018
Grant dateMar 6, 2018

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.

An approach is disclosed for implementing failover and resume when using ordered sequences in a multi-instance database environment. The approach commences by instantiating a first database instance initially to serve as an active instance, then instantiating a second database instance to serve as an instance of one or more passive instances. The active database establishes mastership over a sequence and then processes requests for the ‘next’ symbol by accessing a shared sequence cache only after accessing a first instance semaphore. The active instance and the passive instance perform a protocol such that upon passive database detection of a failure of the active database, one of the passive database instances takes over mastership of the sequence cache, and then proceeds to satisfy sequence value requests. The particular order is observed in spite of the failure.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer implemented method for implementing failover when using ordered sequences in a multi-instance database environment, the method comprising: instantiating a plurality of database instances of a database, wherein the plurality of database instances comprises at least a first database instance initially designated as an active instance, and one or more other database instances initially designated as passive instances; identifying a master sequence associated with the database, wherein access to the master sequence is controlled through a global lock; allocating one or more portions of the master sequence to form a sequence cache, wherein the sequence cache comprises a plurality of symbols to be accessed in an order for satisfying sequence value requests from one or more sessions associated with the first database instance and the one or more other database instances; designating the first database instance as master of the sequence cache, such that access to the sequence cache is controlled through a first instance lock on the first database instance; satisfying a first sequence value request by accessing the sequence cache through the first instance lock on the first database instance; using a second database instance to recognize that the first database instance has failed, where the second database instance that recognized that the first database instance has failed is designated as master of the sequence cache, such that access to the sequence cache is controlled through a second instance lock on the second database instance; and satisfying a second sequence value request by accessing the sequence cache through the second instance lock on the second database instance. 2. The method of claim 1 , further comprising transferring mastership from the second database instance to a third database instance. 3. The method of claim 2 , further comprising satisfying, using the third database instance, a third sequence value request by accessing the sequence cache only after accessing a third instance semaphore. 4. The method of claim 3 , wherein the first database instance is the same as the third database instance. 5. The method of claim 1 , wherein the second database instance determines the first database instance has failed based on a timeout value. 6. The method of claim 1 , wherein the first instance lock is an instance semaphore. 7. A computer system for implementing failover when using ordered sequences in a multi-instance database environment, comprising: a computer processor to execute a set of program code instructions; and a memory to hold the program code instructions, in which the program code instructions comprise program code to perform: instantiating a plurality of database instances of a database, wherein the plurality of database instances comprises at least a first database instance initially designated as an active instance, and one or more other database instances initially designated as passive instances; identifying a master sequence associated with the database, wherein access to the master sequence is controlled through a global lock; allocating one or more portions of the master sequence to form a sequence cache, wherein the sequence cache comprises a plurality of symbols to be accessed in an order for satisfying sequence value requests from one or more sessions associated with the first database instance and the one or more other database instances; designating the first database instance as master of the sequence cache, such that access to the sequence cache is controlled through a first instance lock on the first database instance; satisfying a first sequence value request by accessing the sequence cache through the first instance lock on the first database instance; using a second database instance to recognize that the first database instance has failed, where the second database instance that recognized that the first database instance has failed is designated as master of the sequence cache, such that access to the sequence cache is controlled through a second instance lock on the second database instance; and satisfying a second sequence value request by accessing the sequence cache through the second instance lock on the second database instance. 8. The computer system of claim 7 , wherein the program code instructions further comprise instructions to perform transferring mastership from the second database instance to a third database instance. 9. The computer system of claim 8 , wherein the program code instructions further comprise instructions to perform satisfying, using the third database instance, a third sequence value request by accessing the sequence cache only after accessing a third instance semaphore. 10. The computer system of claim 9 , wherein the first database instance is the same as the third database instance. 11. The computer system of claim 7 , wherein the second database instance determines the first database instance has failed based on a timeout value. 12. The computer system of claim 7 , wherein the first instance lock is an instance semaphore. 13. A computer program product embodied in a non-transitory computer readable medium, the computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a method to implement implementing failover when using ordered sequences in a multi-instance database environment, the method comprising: instantiating a plurality of database instances of a database, wherein the plurality of database instances comprises at least a first database instance initially designated as an active instance, and one or more other database instances initially designated as passive instances; identifying a master sequence associated with the database, wherein access to the master sequence is controlled through a global lock; allocating one or more portions of the master sequence to form a sequence cache, wherein the sequence cache comprises a plurality of symbols to be accessed in an order for satisfying sequence value requests from one or more sessions associated with the first database instance and the one or more other database instances; designating the first database instance as master of the sequence cache, such that access to the sequence cache is controlled through a first instance lock on the first database instance; satisfying a first sequence value request by accessing the sequence cache through the first instance lock on the first database instance; using a second database instance to recognize that the first database instance has failed, where the second database instance that recognized that the first database instance has failed is designated as master of the sequence cache, such that access to the sequence cache is controlled through a second instance lock on the second database instance; and satisfying a second sequence value request by accessing the sequence cache through the second instance lock on the second database instance. 14. The computer program product of claim 13 , wherein the method further comprises transferring mastership from the second database instance to a third database instance. 15. The computer program product of claim 14 , wherein the method further comprises satisfying, using the third database instance, a third sequence value request by accessing the sequence cache only after accessing a third instance semaphore. 16. The computer program product of claim 15 , wherein the first database instance is the same as the third database instance. 17. The c

Assignees

Inventors

Classifications

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 US9910893B2 cover?
An approach is disclosed for implementing failover and resume when using ordered sequences in a multi-instance database environment. The approach commences by instantiating a first database instance initially to serve as an active instance, then instantiating a second database instance to serve as an instance of one or more passive instances. The active database establishes mastership over a se…
Who is the assignee on this patent?
Li Fulu, Morimura Atsushi, Zoll Michael, and 3 more
What technology area does this patent fall under?
Primary CPC classification G06F16/24552. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 06 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).