-
公开(公告)号:US12204558B2
公开(公告)日:2025-01-21
申请号:US18379684
申请日:2023-10-13
Applicant: Oracle International Corporation
Inventor: Carol Lyndall Colrain , Xiaoli Qi , Kevin S. Neel , Stephen J. Vivian , Michael Cusson , Yunrui Li , Jonathan Giloni
IPC: G06F16/27 , G06F11/20 , G06F16/23 , G06F16/2455
Abstract: Techniques are described for preserving the inflight sessions failing over from a primary database to the replicated logical database of the primary database. In an implementation, prior to failover, when the primary database server receives a commit for a transaction, the process stores a commit indication that the transaction has been committed by performing a corresponding SQL command. The commit indication is replicated to the logical replica database by virtue of the replication of the SQL command and its execution on the logical replica database. Accordingly, the standby database server in the failover session may successfully request for the outcome of the transaction. Techniques are also described for the client-side LOB references to be preserved when failing over to the logical replica database, for AS OF queries preserved, and for versioning of checksums, signatures and structures across logical replicas.
-
公开(公告)号:US20250147982A1
公开(公告)日:2025-05-08
申请号:US19014766
申请日:2025-01-09
Applicant: Oracle International Corporation
Inventor: Carol Lyndall Colrain , Xiaoli Qi , Kevin S. Neel , Stephen J. Vivian , Michael Cusson , Yunrui Li , Jonathan Giloni
IPC: G06F16/27 , G06F11/20 , G06F16/23 , G06F16/2455
Abstract: Techniques are described for failing over from a primary database to the replicated logical database of the primary database. Techniques are also described for the client-side object references to be preserved when failing over to the logical replica database, for AS OF and other queries preserved, and for versioning of checksums, signatures and structures across logical replicas.
-
公开(公告)号:US20200004861A1
公开(公告)日:2020-01-02
申请号:US16024540
申请日:2018-06-29
Applicant: Oracle International Corporation
Inventor: Mehul D. Bastawala , Jonathan Giloni
Abstract: Described is an improved approach to implement parallel queries where session states are saved for parallelization resources. When work needs to be performed in the parallel query system for a given session, a search can be performed to identify a resource (from among the pool of available resources) that had previously been used by that session, and which had saved a session state object for that previous connection to the session. Instead of incurring the entirety of setup costs each time workload is assigned to a resource, the saved session state can be used to re-set the context for the resource to the configuration requirements for that session.
-
公开(公告)号:US12007941B2
公开(公告)日:2024-06-11
申请号:US16147314
申请日:2018-09-28
Applicant: Oracle International Corporation
Inventor: Kevin S. Neel , Carol L. Colrain , Tong Zhou , Arturo Ismael Quinto , Jonathan Giloni , Douglas Surber , Ravi Thammaiah
IPC: G06F16/14 , G06F11/20 , G06F16/11 , G06F16/21 , G06F16/25 , H04L67/141 , H04L67/142
CPC classification number: G06F16/122 , G06F11/2023 , G06F16/21 , G06F16/252 , H04L67/141 , H04L67/142 , G06F2201/80
Abstract: Techniques are disclosed herein for identifying, recording and restoring the state of a database session and various aspects thereof. A session template data structure is generated that includes session attribute values describing various aspects of the session that is established between a client system and a database management system (DBMS and enables the client system to issue to the DBMS commands for execution. Based on the session attribute values, DBMS may generate a template identifier corresponding to the session template data structure. The template identifier may be stored in an association with the session state that it partially (or in whole) represents. In an embodiment, when another state of a session is captured, if the template identifier for the state is the same, then rather than storing the attribute-value pairs for the other state, the template identifier is further associated with the other state. In an embodiment, a request boundary is detected where the session is known to be at a recoverable point. If recovery of the session is needed, the session state is restored, and replay of commands start from this point. Each command replayed is verified to produce the same session state as it produced by the original execution. If the session is determined to be a safe point, then all the commands recorded for replay prior to the safe point may be deleted. In an embodiment, the template is used to set the initial state when borrowing from a session pool. The state tracking is also used to identify that the session can be failed over safely during planned operation as the session is unlikely to drain by itself even when not used.
-
公开(公告)号:US20240126785A1
公开(公告)日:2024-04-18
申请号:US18379684
申请日:2023-10-13
Applicant: Oracle International Corporation
Inventor: Carol Lyndall Colrain , Xiaoli Qi , Kevin S. Neel , Stephen J. Vivian , Michael Cusson , Yunrui Li , Jonathan Giloni
CPC classification number: G06F16/275 , G06F11/2023 , G06F16/2322 , G06F16/2379 , G06F2201/80
Abstract: Techniques are described for preserving the inflight sessions failing over from a primary database to the replicated logical database of the primary database. In an implementation, prior to failover, when the primary database server receives a commit for a transaction, the process stores a commit indication that the transaction has been committed by performing a corresponding SQL command. The commit indication is replicated to the logical replica database by virtue of the replication of the SQL command and its execution on the logical replica database. Accordingly, the standby database server in the failover session may successfully request for the outcome of the transaction. Techniques are also described for the client-side LOB references to be preserved when failing over to the logical replica database, for AS OF queries preserved, and for versioning of checksums, signatures and structures across logical replicas.
-
公开(公告)号:US11556500B2
公开(公告)日:2023-01-17
申请号:US16147367
申请日:2018-09-28
Applicant: Oracle International Corporation
Inventor: Jonathan Giloni , Kevin S. Neel , Carol L. Colrain , Douglas Surber , Ravi Thammaiah , Tong Zhou , Arturo Ismael Quinto , Manoj Dhanapal
IPC: G06F16/00 , G06F16/11 , H04L67/141 , H04L67/142 , G06F16/21 , G06F16/25 , G06F11/20
Abstract: Techniques are disclosed herein for identifying, recording and restoring the state of a database session and various aspects thereof. A session template data structure is generated that includes session attribute values describing various aspects of the session that is established between a client system and a database management system (DBMS and enables the client system to issue to the DBMS commands for execution. Based on the session attribute values, DBMS may generate a template identifier corresponding to the session template data structure. The template identifier may be stored in an association with the session state that it partially (or in whole) represents. In an embodiment, when another state of a session is captured, if the template identifier for the state is the same, then rather than storing the attribute-value pairs for the other state, the template identifier is further associated with the other state. In an embodiment, a request boundary is detected where the session is known to be at a recoverable point. If recovery of the session is needed, the session state is restored, and replay of commands start from this point. Each command replayed is verified to produce the same session state as it produced at original execution. If the session is determined to be a safe point, then all the commands recorded for replay prior to the safe point may be deleted.
In an embodiment, the template is used to set the initial state when borrowing from a session pool The state tracking is also used to know that the session can be failed over safely during planned operation as the session is unlikely to drain by itself even when not used.-
公开(公告)号:US11138215B2
公开(公告)日:2021-10-05
申请号:US16024540
申请日:2018-06-29
Applicant: Oracle international corporation
Inventor: Mehul D. Bastawala , Jonathan Giloni
IPC: G06F16/2458 , H04L29/08 , G06F12/02 , G06F9/50 , G06N20/00
Abstract: Described is an improved approach to implement parallel queries where session states are saved for parallelization resources. When work needs to be performed in the parallel query system for a given session, a search can be performed to identify a resource (from among the pool of available resources) that had previously been used by that session, and which had saved a session state object for that previous connection to the session. Instead of incurring the entirety of setup costs each time workload is assigned to a resource, the saved session state can be used to re-set the context for the resource to the configuration requirements for that session.
-
公开(公告)号:US10248471B2
公开(公告)日:2019-04-02
申请号:US15267104
申请日:2016-09-15
Applicant: Oracle International Corporation
Inventor: Raunak Rungta , Jonathan Giloni , Ravi Shankar Thammaiah , Sumanta Kumar Chatterjee , Juan Loaiza
Abstract: Systems for managing shared computing resources. In a multi-process computing environment a concurrency object data structure pertaining to a shared resource is made available to be accessed by two or more processing entities. The concurrency object comprises a consecutive read count that tracks the number of consecutive read requests that have been received for shared read access to the shared resource. A shared concurrency access state is entered based on comparison of the consecutive read count to a threshold value. Entering the shared concurrency access state begins a period during which grant of further shared access requests do not require semaphore operations or other atomic operations that pertains to the shared resource.
-
公开(公告)号:US10241856B2
公开(公告)日:2019-03-26
申请号:US15261688
申请日:2016-09-09
Applicant: Oracle International Corporation
Inventor: Jonathan Giloni , William Habeck , Raunak Rungta , Ravi Thammaiah
Abstract: A method for memory quarantine comprises: in response to a memory error, determining an extent associated with the memory error, wherein the extent defines an amount of memory comprising a plurality of chunks; traversing, forward from a beginning chunk of the plurality chunks, the plurality of chunks until a first chunk is determined to be corrupt; traversing, in reverse from a last chunk of the plurality of chunks, the plurality of chunks until a second chunk is determine to be corrupt; flagging a subset of the plurality of chunks as quarantined, wherein the subset begins with the first chunk and ends with the second chunk, and wherein quarantine prevents the subset from being reallocated after being released.
-
公开(公告)号:US20180074885A1
公开(公告)日:2018-03-15
申请号:US15261688
申请日:2016-09-09
Applicant: Oracle International Corporation
Inventor: Jonathan Giloni , William Habeck , Raunak Rungta , Ravi Thammaiah
CPC classification number: G06F11/0793 , G06F3/0619 , G06F3/064 , G06F3/0673 , G06F11/073 , G06F11/0751 , G06F11/079 , G06F12/00
Abstract: A method for memory quarantine comprises: in response to a memory error, determining an extent associated with the memory error, wherein the extent defines an amount of memory comprising a plurality of chunks; traversing, forward from a beginning chunk of the plurality chunks, the plurality of chunks until a first chunk is determined to be corrupt; traversing, in reverse from a last chunk of the plurality of chunks, the plurality of chunks until a second chunk is determine to be corrupt; flagging a subset of the plurality of chunks as quarantined, wherein the subset begins with the first chunk and ends with the second chunk, and wherein quarantine prevents the subset from being reallocated after being released.
-
-
-
-
-
-
-
-
-