Automated reset of session state
    1.
    发明授权

    公开(公告)号:US11936739B2

    公开(公告)日:2024-03-19

    申请号:US17018181

    申请日:2020-09-11

    Abstract: Techniques are described to perform an automatic reset of a database session to generate an environment that resembles a brand new session without the computational cost of creating a brand new session. In an embodiment, a DBMS receives a request from a client application to execute commands within a session. The DBMS identifies that the end request boundary, the end of the logical work unit for the client application, is reached within the session. The DBMS verifies that the end request boundary is at a resettable point of a session state of the session for the session to be safely reset. If the verification is successful, the DBMS performs a reset of the session to prevent any leakage of application-related session state to the next request.

    RECOVERING STATEFUL READ-ONLY DATABASE SESSIONS

    公开(公告)号:US20160321304A9

    公开(公告)日:2016-11-03

    申请号:US13936061

    申请日:2013-07-05

    CPC classification number: G06F17/30289 G06F17/30371

    Abstract: A process, apparatus, and computer-readable medium are provided for rebuilding a database session when a previous database session becomes unavailable and the commands previously sent for execution on the previous database session satisfy certain criteria. The process includes determining whether or not a set of commands sent by a client for execution on the previous database session is acceptable to replay based at least in part on whether or not the set of commands satisfies one or more criteria. The process further includes determining that the previous database session is unavailable due to a planned or unplanned recoverable error. In response to determining that the previous database session is unavailable, if the set of commands is acceptable for replay, the set of commands is sent for execution on a new database session to rebuild the state, which was exposed to the client from the previous database session, on the new database session. The process masks the outage from the application.

    PROVIDING SERVICES ACROSS SYSTEMS THAT MANAGE DISTRIBUTED REPLICAS
    3.
    发明申请
    PROVIDING SERVICES ACROSS SYSTEMS THAT MANAGE DISTRIBUTED REPLICAS 有权
    为管理分发的备案提供各种服务

    公开(公告)号:US20140101100A1

    公开(公告)日:2014-04-10

    申请号:US13645819

    申请日:2012-10-05

    CPC classification number: G06F17/30595 H04L41/02 H04L67/1002

    Abstract: Techniques are provided to allow users to define a global service that is offered across multiple replicated databases. Database clients connect to and use a global service just as they do with regular services on a single database today. Upon receiving a connection request, a collection of components, referred to collectively as the Global Data Service framework (GDS framework), automatically chooses the best database server instances to which to connect a client. Once those connections have been established, the clients determine which database server instance, of those database server instances to which they are connected, to send requests to based, at least in part, on advisory messages sent to the clients by the GDS framework.

    Abstract translation: 提供技术以允许用户定义跨多个复制数据库提供的全局服务。 数据库客户端连接到并使用全局服务,就像现在一个数据库上的常规服务一样。 一旦接收到连接请求,将统称为全局数据服务框架(GDS框架)的组件集合自动选择连接客户端的最佳数据库服务器实例。 一旦建立了这些连接,客户端将确定哪些数据库服务器实例(与其连接的数据库服务器实例)发送请求至少部分地基于由GDS框架发送给客户端的咨询消息。

    Session state tracking
    4.
    发明授权

    公开(公告)号:US12007941B2

    公开(公告)日:2024-06-11

    申请号:US16147314

    申请日:2018-09-28

    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.

    Transactional and non-transactional data for maintaining session state
    6.
    发明授权
    Transactional and non-transactional data for maintaining session state 有权
    用于维护会话状态的事务和非事务性数据

    公开(公告)号:US09591103B2

    公开(公告)日:2017-03-07

    申请号:US14748451

    申请日:2015-06-24

    Abstract: Transactional and non-transactional data for maintaining session state is described. In a session, a server instance receives, from a client, a request to execute transactional commands and non-transactional commands. The server instance sends at least one first directive executable at the client to store, in a first set of information, one or more first items representing one or more particular transactional commands that are open but not yet committed. The first set of information is maintained separately from a second set of information including one or more second items representing one or more particular non-transactional commands that have been processed. Based on committing one or more particular transactional commands, the server instance sends at least one second directive executable at the client to purge, from the first set of information, the one or more first items without purging, from the second set of information, the one or more second items.

    Abstract translation: 描述用于维护会话状态的事务和非事务性数据。 在会话中,服务器实例从客户端接收执行事务命令和非事务命令的请求。 服务器实例在客户端处发送至少一个第一指令可执行文件,以在第一组信息中存储一个或多个表示一个或多个已经开放但尚未提交的特定事务命令的第一项。 第一组信息与第二组信息分开维护,包括表示一个或多个已处理的特定非事务性命令的一个或多个第二项。 基于提交一个或多个特定事务命令,服务器实例在客户端发送至少一个第二指令可执行文件,从第一组信息中清除一个或多个第一项目,而不从第二组信息中清除 一个或多个第二个项目。

    Session templates
    7.
    发明授权

    公开(公告)号:US11556500B2

    公开(公告)日:2023-01-17

    申请号:US16147367

    申请日:2018-09-28

    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.

    Providing services across systems that manage distributed replicas
    8.
    发明授权
    Providing services across systems that manage distributed replicas 有权
    在管理分布式副本的系统之间提供服务

    公开(公告)号:US08838535B2

    公开(公告)日:2014-09-16

    申请号:US13645819

    申请日:2012-10-05

    CPC classification number: G06F17/30595 H04L41/02 H04L67/1002

    Abstract: Techniques are provided to allow users to define a global service that is offered across multiple replicated databases. Database clients connect to and use a global service just as they do with regular services on a single database today. Upon receiving a connection request, a collection of components, referred to collectively as the Global Data Service framework (GDS framework), automatically chooses the best database server instances to which to connect a client. Once those connections have been established, the clients determine which database server instance, of those database server instances to which they are connected, to send requests to based, at least in part, on advisory messages sent to the clients by the GDS framework.

    Abstract translation: 提供技术以允许用户定义跨多个复制数据库提供的全局服务。 数据库客户端连接到并使用全局服务,就像现在一个数据库上的常规服务一样。 一旦接收到连接请求,将统称为全局数据服务框架(GDS框架)的组件集合自动选择连接客户端的最佳数据库服务器实例。 一旦建立了这些连接,客户端将确定哪些数据库服务器实例(与其连接的数据库服务器实例)发送请求至少部分地基于由GDS框架发送给客户端的咨询消息。

    Failover of database sessions to a logical replica database

    公开(公告)号:US12204558B2

    公开(公告)日:2025-01-21

    申请号:US18379684

    申请日:2023-10-13

    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.

    Termination of database sessions for planned failover

    公开(公告)号:US11687507B2

    公开(公告)日:2023-06-27

    申请号:US17018142

    申请日:2020-09-11

    CPC classification number: G06F16/217 G06F16/2365

    Abstract: Techniques are described for performing session termination(s) for active sessions in response to a planned operation on a database server of a DBMS. In an embodiment, the DBMS receives a request for a planned operation on a database server. The database server may have session(s) established with a client system to receive request(s) to execute database command(s) on the DBMS. In response, the DBMS transmits to the client system a notification to drain a session with the database server, and the DBMS marks the sessions at the database to drain. The DBMS is configured to terminate any drain-marked sessions by the database server when a rule is satisfied, and the failover is expected to succeed, and/or that the session is unlikely to drain or to failover at a later point in the session lifecycle. The DBMS may identify, in a rule set, a rule having rule instructions to detect a possible termination point for the session before the drain timeout period expires. Based on the execution of the rule instructions before the drain timeout expires, the DBMS determines that a termination point for the session is detected where that session will failover. In such a way, sessions are failed over early and at points where the failover is expected to succeed.

Patent Agency Ranking