KR100568145B1 - A Deadlock Prevention Method Using a Page Latch in the Buffer Manager of a Multi-User Storage System - Google Patents
A Deadlock Prevention Method Using a Page Latch in the Buffer Manager of a Multi-User Storage System Download PDFInfo
- Publication number
- KR100568145B1 KR100568145B1 KR1020040040687A KR20040040687A KR100568145B1 KR 100568145 B1 KR100568145 B1 KR 100568145B1 KR 1020040040687 A KR1020040040687 A KR 1020040040687A KR 20040040687 A KR20040040687 A KR 20040040687A KR 100568145 B1 KR100568145 B1 KR 100568145B1
- Authority
- KR
- South Korea
- Prior art keywords
- latch
- page
- buffer
- hash
- storage system
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/524—Deadlock detection or avoidance
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하기 위한 방법에 관한 것으로서, 특히 다사용자 저장 시스템의 버퍼 관리자에서 버퍼 해시 테이블의 해시 엔트리에 지속적으로 래치를 유지하지 않는 대신 올리려는 페이지에만 래치를 잡음으로써 교착 상태를 방지하기 위한 기술에 관한 것이다.The present invention relates to a method for preventing deadlocks by using page latches in a buffer manager of a multiuser storage system. In particular, the present invention does not continuously maintain a latch in a hash entry of a buffer hash table in a buffer manager of a multiuser storage system. Instead, it relates to a technique for preventing deadlocks by latching only on the page you want to load.
본 발명에 의하면, 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하는 방법에 있어서, 새로운 페이지 P1에 매뉴얼 듀레이션 로크를 설정하는 제 1단계와; 상기 새로운 페이지 P1에 대한 해시 엔트리(버퍼 해시 테이블 상)의 래치를 설정한 상태에서 해당 해시 체인에 P1이 존재하는 지를 확인하는 제 2단계와; 상기 확인 결과, 새로운 페이지 P1이 해시 체인에 존재하지 않으면, 설정된 래치를 해지한 후 희생자를 선정하는 제 3단계와; 상기 희생자로 선정된 페이지를 P2라 할 때, P2에 매뉴얼 듀레이션 로크를 설정하는 제 4단계; 및 상기 희생자가 연결되어 있던 해시 체인으로부터 P2를 분리하기 위하여 해당 래치를 요청하는 제 5단계를 포함하는 교착 상태 방지방법을 제시한다.According to the present invention, there is provided a method of preventing deadlocks using a page latch in a buffer manager of a multi-user storage system, comprising: a first step of setting a manual duration lock on a new page P 1 ; A second step of checking whether P 1 exists in the hash chain while the latch of the hash entry (on the buffer hash table) for the new page P 1 is set; A third step of selecting a victim after the set latch is released if a new page P 1 does not exist in the hash chain as a result of the checking; When the selected page to the victim P 2 d, a fourth step of setting the duration of the manual lock on P 2; And a fifth step of requesting a corresponding latch to separate P 2 from the hash chain to which the victim was connected.
다사용자, 저장시스템, 버퍼 관리자, 교착 방지, 버퍼 테이블, 해시 엔트리Multi-User, Storage System, Buffer Manager, Deadlock Prevention, Buffer Table, Hash Entry
Description
도 1은 종래의 버퍼 관리자에서 버퍼 고정(FIX) 연산 수행 과정을 나타낸 예시도 이다.1 is an exemplary diagram illustrating a process of performing a buffer fix (FIX) operation in a conventional buffer manager.
도 2는 종래의 버퍼 관리자에서 교착 상태가 발생하는 과정을 나타낸 예시도 이다.2 is an exemplary view illustrating a process in which a deadlock occurs in a conventional buffer manager.
도 3은 본 발명에 따른 버퍼 관리자에서 버퍼 고정(FIX)의 연산 수행 과정을 나타낸 예시도 이다.3 is an exemplary view illustrating a process of performing a buffer fix (FIX) in the buffer manager according to the present invention.
본 발명은 다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하기 위한 방법에 관한 것이다. 보다 상세하게는 다사용자 저장 시스템의 버퍼 관리자에서 버퍼 해시 테이블의 해시 엔트리에 지속적으로 래치를 유지하지 않는 대신 올리려는 페이지에만 래치를 잡음으로써 교착 상태를 방지하기 위한 기술에 관한 것이다. The present invention relates to a method for preventing deadlocks using page latches in a buffer manager of a multiuser storage system. More specifically, it relates to a technique for preventing deadlocks by latching only on a page to be loaded instead of continuously latching a hash entry of a buffer hash table in a buffer manager of a multiuser storage system.
근래 컴퓨터 기술 발전과 더불어 디지털 형태로 저장, 관리되는 데이터의 양이 기하급수적으로 증가하고 있다. 따라서 대용량의 데이터를 효율적으로 저장하고 관리할 수 있는 데이터베이스 시스템들이 여러 분야에서 필요하게 되었고 그에 따라 널리 사용되게 되었다.Recently, with the development of computer technology, the amount of data stored and managed in digital form is increasing exponentially. As a result, database systems that can efficiently store and manage large amounts of data are required in various fields, and thus are widely used.
저장 시스템이란 데이터베이스 시스템의 하부 구조에 해당하는 소프트웨어의 일종으로, 데이터를 디스크에 저장하고 관리하는 기능, 버퍼 관리 기능, 트랜잭션(Transaction) 관리 기능, 동시성 제어 기능 및 파손 회복 기능 등을 담당한다. 이러한 저장 시스템은 데이터베이스 기술의 핵심 기술로서 데이터베이스 응용 프로그램의 성능에 직접적인 영향을 주는 주요한 역할을 한다.The storage system is a kind of software corresponding to the infrastructure of the database system, and is responsible for storing and managing data on disk, buffer management, transaction management, concurrency control, and crash recovery. These storage systems are the core technologies of database technology and play a major role in directly affecting the performance of database applications.
또한, 저장 시스템은 한번 액세스된 디스크 페이지는 메모리 상의 버퍼에 저장한다. 따라서, 이후에 동일한 페이지를 액세스하면 바로 버퍼를 액세스하여 디스크 입출력(I/O)을 유발하지 않으므로 시스템의 성능이 크게 향상된다.The storage system also stores the once accessed disk page in a buffer on memory. Therefore, subsequent access to the same page does not immediately access the buffer and cause disk I / O, which greatly improves the performance of the system.
그러나, 일반적으로 버퍼의 크기는 디스크에 저장된 데이터베이스의 크기보다 매우 작으므로 디스크 상의 모든 페이지가 버퍼에 올라올 수 없다. 이로 인해, 원하는 페이지가 버퍼에 올라와 있지 않을 경우에는 현재 버퍼에 올라와 있는 페이지들 중에서 희생자를 선정하여 다시 디스크로 스왑-아웃(swap-out) 한다. 이와 같이, 원하는 페이지가 버퍼에 올라와 있는지 확인하는 연산, 희생자를 선정하여 디스크로 스왑-아웃하는 연산, 새로운 페이지를 버퍼로 올리는 연산 등 버퍼 관리에 필요한 일련의 과정들은 저장 시스템의 버퍼 관리자(buffer manager)에 의해 수행된다.However, in general, the size of the buffer is much smaller than the size of the database stored on disk, so that not all pages on disk can be loaded into the buffer. Therefore, if the desired page is not in the buffer, the victim is selected from the pages currently in the buffer and swapped out to disk again. As such, a series of processes required for buffer management, such as checking whether a desired page is in the buffer, selecting a victim, swapping out to disk, and loading a new page into the buffer, are performed by the buffer manager of the storage system. Is performed by
상기 버퍼 관리자의 기본 데이터 구조는 두 개의 중요한 테이블인 버퍼 테이 블과 버퍼 해시 테이블로 구성되어 있다. 먼저 버퍼 테이블은 버퍼에 존재하는 페이지들에 대한 정보를 유지하고 있다. 이러한 정보들은 버퍼로 정점된 횟수(fix counter)와 희생자(victim) 선정 알고리즘을 위한 정보들, 그리고 오손(dirty) 페이지인지 나타내는 플래그(dirty Flag) 등으로 이루어진다. 원하는 버퍼 페이지가 버퍼에 존재하는지를 쉽게 찾아갈 수 있도록 해시(hash) 함수를 이용하고 있는데, 버퍼 해시 테이블은 이 해시 함수를 통하여 액세스 되고 충돌(conflict)들은 해시 체인(hash chain)을 통하여 처리된다. 그리고 두 테이블 모두 각 엔트리로서 래치(latch)를 가지고 있는데 버퍼 테이블의 래치는 유지하고 있는 정보를 갱신하거나 버퍼 페이지의 내용을 갱신하기 전에 요청되어야 하고, 버퍼 해시 테이블의 래치는 해시 체인을 갱신하기 전에 요청되어야 한다.The basic data structure of the buffer manager consists of two important tables: the buffer table and the buffer hash table. First, the buffer table maintains information about the pages in the buffer. This information consists of the number of peaks fixed in the buffer, information for the victim selection algorithm, and a dirty flag indicating whether it is a dirty page. To make it easier to find out if the desired buffer page exists in the buffer, we use a hash function. The buffer hash table is accessed through this hash function and conflicts are handled through a hash chain. Both tables have a latch as each entry, which is a latch of the buffer table that must be requested before updating the information it holds or the contents of the buffer page, and a latch in the buffer hash table before updating the hash chain. Should be requested.
한편, 버퍼 관리자에서 교착 상태가 발생하는 시나리오는 다음과 같다. 트랜잭션 T1이 새로운 페이지 P1을 버퍼에 올리는 과정(getAndFixBuffer 과정)은 첨부한 도 1에 도시 되어 있다.Meanwhile, a scenario in which a deadlock occurs in the buffer manager is as follows. The transaction T 1 loads the new page P 1 into the buffer (getAndFixBuffer procedure) is shown in FIG.
도 1의 내용을 살펴보면, 스텝 S101과 스텝 S102에서 P1에 대한 해시 엔트리(버퍼 해시 테이블 상)의 래치를 잡은 상태에서 해당 해시 체인에 P1이 존재하는 지를 확인한다. 편의상 이 래치를 첫번째 래치라고 부른다. 스텝 S103에서 P1이 해시 체인에 존재하지 않으면 이 래치를 잡은 상태에서 희생자를 선택한다. 스텝 S104에서 그 희생자가 연결되어 있는 해시 체인으로부터 희생자를 분리하기 위하여 해당 래치를 요청하게 된다. 편의상 이 래치를 두번째 래치라고 부른다. 이후 과정은 본 발명과 관계가 없으므로 생략한다.Look at the information of Figure 1, it is checked whether the hash chain in the P 1 present in holding the latch (the buffer hash table) hash entry for P 1 in step S101 and step S102 state. For convenience, this latch is called the first latch. If P 1 is not present in the hash chain in step S103, the victim is selected while the latch is held. In step S104, the corresponding latch is requested to separate the victim from the hash chain to which the victim is connected. For convenience, this latch is called the second latch. Since the process is not related to the present invention it is omitted.
도 2는 도 1의 알고리즘을 따르는 경우 발생하는 교착 상태 상황을 보여주고 있다. 두 개의 트랜잭션 T1, T2가 서로 다른 두 페이지 P1, P2를 버퍼에 올리려고 하는 경우, 각각 해당되는 첫번째 래치 K와 래치 M을 잡은 상태에서 두번째 래치로서 래치 M과 래치 K를 요구한다면 교착 상태에 빠지게 된다.FIG. 2 illustrates a deadlock situation that occurs when the algorithm of FIG. 1 is followed. If two transactions, T 1 and T 2 , attempt to put two different pages P 1 and P 2 into the buffer, and require latch M and latch K as the second latch while holding the corresponding first latch K and latch M, respectively. You will run into a deadlock.
이에, 본 발명은 상기한 문제점을 해결하기 위한 것으로서 본 발명은 새로운 페이지를 버퍼에 올릴 때 버퍼 해시 테이블에 잡는 첫번째 래치를 바로 풀어서 버퍼 관리자에서 교착 상태가 발생하지 않도록 하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above problems, and an object of the present invention is to immediately release the first latch that is held in the buffer hash table when a new page is put in the buffer so that a deadlock does not occur in the buffer manager.
상기한 본 발명의 목적을 달성하기 위한 기술적 사상으로서 본 발명은As the technical idea for achieving the above object of the present invention
다사용자 저장 시스템의 버퍼 관리자에서 페이지 래치를 이용하여 교착 상태를 방지하는 방법에 있어서,A method of preventing deadlocks using page latches in a buffer manager of a multiuser storage system,
새로운 페이지 P1에 매뉴얼 듀레이션 로크를 설정하는 제 1단계와;Setting a manual duration lock on a new page P 1 ;
상기 새로운 페이지 P1에 대한 해시 엔트리(버퍼 해시 테이블 상)의 래치를 설정한 상태에서 해당 해시 체인에 P1이 존재하는 지를 확인하는 제 2단계와;A second step of checking whether P 1 exists in the hash chain while the latch of the hash entry (on the buffer hash table) for the new page P 1 is set;
상기 확인 결과, 새로운 페이지 P1이 해시 체인에 존재하지 않으면, 설정된 래치를 해지한 후 희생자를 선정하는 제 3단계와;A third step of selecting a victim after the set latch is released if a new page P 1 does not exist in the hash chain as a result of the checking;
상기 희생자로 선정된 페이지를 P2라 할 때, P2에 매뉴얼 듀레이션 로크를 설 정하는 제 4단계; 및When the selected page to the victim la P 2, the fourth step that sets the duration of the manual lock on P 2; And
상기 희생자가 연결되어 있던 해시 체인으로부터 P2를 분리하기 위하여 해당 래치를 요청하는 제 5단계를 포함하는 페이지 래치를 이용한 교착 상태 방지방법을 제공한다.A deadlock prevention method using a page latch includes a fifth step of requesting a corresponding latch to separate P 2 from a hash chain to which the victim is connected.
상기 달성하기 위한 본 발명의 특징은 새로운 페이지를 버퍼에 올릴 때 버퍼 해시 테이블의 해시 엔트리에 잡은 래치를 지속적으로 유지하지 않고 새로 올리려고 하는 페이지에만 래치를 잡아서 교착 상태가 발생하지 않도록 하는데 있다.A feature of the present invention for achieving the above is that when a new page is put into the buffer, the latch is caught only in the page to be newly loaded without continuing to hold the latch held in the hash entry of the buffer hash table so that no deadlock occurs.
즉, 교착 상태가 발생하는 근본적인 원인을 살펴보면 첫번째 래치를 잡은 상태에서 두번째 래치를 요청해야 하고 이 두 래치 간에는 아무런 순서(sequence)도 부여할 수가 없기 때문이다. 이 때, 두번째 래치는 해시 체인의 갱신을 위해 그 요청이 필연적이지만 첫번째 래치를 지속적으로 잡고 있는 것은 혹시 또 다른 트랜잭션이 지금 올리려고 하는 페이지를 동시에 시도하지 못하게 하기 위함이므로 첫번째 래치를 잡는 대신에 지금 올리려고 하는 페이지에 대한 래치를 잡을 수 있다면 첫번째 래치는 풀어도 된다. 만약 첫번째 래치를 계속 잡고 있지 않다면 해시 엔트리에 의한 교착 상태는 발생하지 않는다.In other words, when looking at the root cause of the deadlock, the second latch needs to be requested while the first latch is held, and no sequence can be given between the two latches. At this time, the second latch is inevitably required to update the hash chain, but holding the first latch continuously prevents another transaction from attempting to simultaneously attempt the page you are trying to load at the same time. If you can catch the latch for the page you want to load, you can release the first latch. If you do not hold the first latch, no deadlock by the hash entry occurs.
또한, 페이지에 대한 래치는 저장 시스템이 제공하는 매뉴얼 듀레이션 로크(manual duration lock)로 쉽게 구현할 수 있다. 매뉴얼 듀레이션 로크는 로크의 듀레이션을 사용자가 마음대로 조절할 수 있는 로크를 의미한다.In addition, the latch for the page can be easily implemented with a manual duration lock provided by the storage system. Manual duration lock means a lock that allows the user to adjust the duration of the lock.
이하, 첨부한 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 살펴보기로 한다. 상술한 방법으로 트랜잭션 T1이 새로운 페이지 P1을 버퍼에 올리는 과정(getAndFixBuffer 과정)은 첨부한 도 3에 도시되어 있다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. The process of transaction T 1 loading a new page P 1 into the buffer (getAndFixBuffer process) by the above-described method is shown in FIG.
도 3의 내용을 살펴보면, 스텝 S201에서 P1에 매뉴얼 듀레이션 로크를 잡는다. 스텝 S202와 스텝 S203에서 P1에 대한 해시 엔트리(버퍼 해시 테이블 상)의 래치를 잡은 상태에서 해당 해시 체인에 P1이 존재하는 지를 확인한다. 스텝 S204에서 P1이 해시 체인에 존재하지 않으면, 이 래치를 풀어준 후 희생자를 선정한다. 스텝 S205에서 희생자로 선정된 페이지가 P2라 할 때, P2에 매뉴얼 듀레이션 로크를 잡는다. 스텝 S206에서 그 희생자가 연결되어 있던 해시 체인으로부터 P2를 분리하기 위하여 해당 래치를 요청한다. 이후 과정은 본 발명과 관계가 없으므로 생략한다.Referring to the contents of FIG. 3, in step S201 a manual duration lock is held at P 1 . In step S202 and holding the latch in the hash entry (the buffer hash table) for P 1 in step S203 to determine whether a condition P 1 present in the hash chain. If P 1 does not exist in the hash chain in step S204, the victim is selected after the latch is released. When the page selected as the victim in step S205 is P 2 , a manual duration lock is held at P 2 . In step S206, the corresponding latch is requested to detach P 2 from the hash chain to which the victim was connected. Since the process is not related to the present invention it is omitted.
이상에서와 같이 본 발명에 따른 다사용자 저장 시스템의 버퍼 관리자에서의 교착 상태 방지방법을 사용하면 다음과 같은 장점을 얻을 수 있다.As described above, using the deadlock prevention method in the buffer manager of the multi-user storage system according to the present invention can obtain the following advantages.
기존 방법에서 해시 엔트리에 대한 래치는 그 해시 체인 전체에 대해서 상호 배제(mutual exclusion)가 되는 반면, 본 발명에서는 액세스하고자 하는 페이지에 대해서만 상호 배제가 되므로 교착 상태의 가능성을 대폭 줄일 수 있다.In the conventional method, the latch for the hash entry is mutual exclusion for the entire hash chain, whereas in the present invention, the mutual exclusion is only performed for the page to be accessed, thereby greatly reducing the possibility of deadlock.
게다가 도 3의 스텝 S201에서 페이지 P1에 매뉴얼 듀레이션 로크를 잡고, 스텝 S205에서 희생자 페이지 P2에 매뉴얼 듀레이션 로크를 요청하게 되는데, P2에 매뉴얼 듀레이션 로크를 잡은 상태에서 P1을 희생자로 선택하지 못한다. 왜냐하면, P1은 아직 버퍼에 올라와 있지 않기 때문이다. 따라서, 교착 상태는 더 이상 발생하지 않게 된다.Besides holding the manual duration locks the pages P 1 in step S201 of FIG. 3, not selected, the P 1 from there is the request for manual duration locks the victim page P 2 in step S205, holding the manual duration locks on P 2 state to the victim can not do it. Because P 1 is not yet in the buffer. Thus, deadlocks no longer occur.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040040687A KR100568145B1 (en) | 2004-06-04 | 2004-06-04 | A Deadlock Prevention Method Using a Page Latch in the Buffer Manager of a Multi-User Storage System |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040040687A KR100568145B1 (en) | 2004-06-04 | 2004-06-04 | A Deadlock Prevention Method Using a Page Latch in the Buffer Manager of a Multi-User Storage System |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050115584A KR20050115584A (en) | 2005-12-08 |
KR100568145B1 true KR100568145B1 (en) | 2006-04-05 |
Family
ID=37289482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040040687A KR100568145B1 (en) | 2004-06-04 | 2004-06-04 | A Deadlock Prevention Method Using a Page Latch in the Buffer Manager of a Multi-User Storage System |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100568145B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5784623A (en) | 1996-05-29 | 1998-07-21 | Oracle Corporation | Using a parent latch that covers a plurality of child latches to track the progress of a process attempting to acquire resources |
US5797138A (en) | 1995-12-06 | 1998-08-18 | Electronics And Telecommunications Research Institute | Buffer management method using buffer locking mechanism in storage system for supporting multi-user environment |
KR100253627B1 (en) | 1996-10-09 | 2000-04-15 | 이계철 | Transaction control method not to be selected as deadlock sacrificer in transaction abortion in a data storage system |
KR20010085568A (en) * | 2000-02-24 | 2001-09-07 | 포만 제프리 엘 | Method to increase performance of acquiring free memory pages |
-
2004
- 2004-06-04 KR KR1020040040687A patent/KR100568145B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5797138A (en) | 1995-12-06 | 1998-08-18 | Electronics And Telecommunications Research Institute | Buffer management method using buffer locking mechanism in storage system for supporting multi-user environment |
US5784623A (en) | 1996-05-29 | 1998-07-21 | Oracle Corporation | Using a parent latch that covers a plurality of child latches to track the progress of a process attempting to acquire resources |
KR100253627B1 (en) | 1996-10-09 | 2000-04-15 | 이계철 | Transaction control method not to be selected as deadlock sacrificer in transaction abortion in a data storage system |
KR20010085568A (en) * | 2000-02-24 | 2001-09-07 | 포만 제프리 엘 | Method to increase performance of acquiring free memory pages |
Also Published As
Publication number | Publication date |
---|---|
KR20050115584A (en) | 2005-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11086560B2 (en) | Data storage access method, device and apparatus for persistent memory | |
US8473950B2 (en) | Parallel nested transactions | |
US8250047B2 (en) | Hybrid multi-threaded access to data structures using hazard pointers for reads and locks for updates | |
US6772155B1 (en) | Looking data in a database system | |
US20050102255A1 (en) | Computer-implemented system and method for handling stored data | |
KR20080031039A (en) | Direct-update software transactional memory | |
CN112867999B (en) | Version-based table locking | |
US11263197B2 (en) | Concurrency control method of database transaction combining optimistic lock and pessimistic lock | |
US20080228793A1 (en) | System and program for append mode insertion of rows into tables in database management systems | |
CN114282074B (en) | Database operation method, device, equipment and storage medium | |
US8095731B2 (en) | Mutable object caching | |
US20110107338A1 (en) | Selecting isolation level for an operation based on manipulated objects | |
US9766950B2 (en) | Methods for single-owner multi-consumer work queues for repeatable tasks | |
KR101268437B1 (en) | Method and system for maintaining consistency of a cache memory by multiple independent processes | |
CN112000670A (en) | Multithreading program data unified management method and system and electronic equipment | |
CN109710629B (en) | Data access method, device, server and storage medium | |
CN111984379A (en) | Read-write transaction control method, system, terminal device and storage medium | |
KR100568145B1 (en) | A Deadlock Prevention Method Using a Page Latch in the Buffer Manager of a Multi-User Storage System | |
US20080082533A1 (en) | Persistent locks/resources for concurrency control | |
US6556994B1 (en) | Method and system for improving concurrency through early release of unnecessary locks | |
KR100314879B1 (en) | Method for managing lock for mdbms | |
CN114328500A (en) | Data access method, device, equipment and computer readable storage medium | |
KR100507782B1 (en) | Database management system and the method of controlling consistency of system table in DBMS | |
Haubenschild et al. | Lock-Free Buffer Managers Do Not Require Delayed Memory Reclamation | |
KR100312910B1 (en) | Method for expanding transaction isolation phase in database management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20100225 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |