[发明专利]会话失败后的自动事务重试有效
| 申请号: | 201380040029.6 | 申请日: | 2013-07-26 |
| 公开(公告)号: | CN104508663B | 公开(公告)日: | 2018-01-30 |
| 发明(设计)人: | M·A·内林克斯;L·F·F·多斯 桑托斯;O·伊格那特;D·B·洛美特;Q·布拉德利;R·拉姆;C·J·马弗德;P·吉沃德加克;B·姆更丹 | 申请(专利权)人: | 微软技术许可有限责任公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 上海专利商标事务所有限公司31100 | 代理人: | 范玮 |
| 地址: | 美国华*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 会话 失败 自动 事务 重试 | ||
1.一种数据库服务器中由所述数据库服务器执行的方法,包括:
与客户端建立第一会话以处理所述客户端的数据库查询;
打开所述第一会话的事务以执行与所述客户端的所述事务相关联的多个命令;
从所述客户端接收与所述事务相关联的至少一个命令,每一收到命令与相关联的命令标识符一起被接收;
生成事务日志,所述事务日志存储与每一收到命令相关联的所述命令标识符并且指示每一收到命令是否已被成功执行;
在所述第一会话中的失败之后,从所述客户端接收重建所述第一会话的请求、与所述事务相关联的进一步命令以及所述进一步命令的命令标识符;
与所述客户端重建所述第一会话;
确定所述进一步命令的命令标识符是否已被存储在所述事务日志中;以及
如果确定与所述进一步命令相关联的所述命令标识符未被存储在所述事务日志中,
尝试执行所述进一步命令,以及
用与所述进一步命令相关联的所述命令标识符以及关于所述进一步命令是否已被成功执行的指示来注释所述事务日志。
2.如权利要求1所述的方法,其特征在于,进一步包括:
从所述客户端接收所述事务的提交命令;以及
提交所述事务。
3.如权利要求1所述的方法,其特征在于,如果确定在接收到所述进一步命令之际与接收到的所述进一步命令相关联的所述命令标识符已被存储在所述事务日志中,则执行以下步骤:
根据所述事务日志确定具有所述命令标识符的先前接收到的命令已被成功执行,所述命令标识符被确定为已存储在所述事务日志中;以及
避免重新执行先前接收到的命令。
4.如权利要求1所述的方法,其特征在于,进一步包括:
经历由于在所述第一会话期间所述客户端与所述数据库服务器之间的连接中的失败引起的或所述数据库服务器中的失败引起的所述第一会话中的失败。
5.如权利要求1所述的方法,其特征在于,所述与客户端建立第一会话包括:
将所述第一会话的会话标识符存储在会话状态中;
所述生成事务日志包括:
将所述事务日志存储在所述会话状态中;以及
所述与所述客户端重建所述第一会话包括:
在传送给所述数据库服务器的通信中从所述客户端接收所述会话标识符以重建所述第一会话,以及
确定在所述通信中接收到的所述会话标识符与存储在所述会话状态中所述会话标识符相匹配。
6.如权利要求5所述的方法,其特征在于,进一步包括:
将所述会话状态复制到至少一个附加数据库服务器,经复制的会话状态使得所述至少一个附加数据库服务器能够在所述第一会话失败的情况下继续所述事务。
7.如权利要求1所述的方法,其特征在于,进一步包括:
在未从所述客户端接收到请求重建所述第一会话的通信的情况下,在所述第一会话失败之后在预定时间量期满后删除所述事务日志。
8.一种用于从会话失败中恢复的系统,包括:
第一数据库服务器,包括:
会话管理器,所述会话管理器与客户端建立第一会话以处理所述客户端的数据库查询,打开所述第一会话的事务以执行与所述客户端的所述事务相关联的多个命令,并且从所述客户端接收与所述事务相关联的至少一个命令,每一收到命令与相关联的命令标识符一起被接收;以及
事务日志管理器,所述事务日志管理器生成存储与每一收到命令相关联的所述命令标识符并且指示每一收到命令是否已被成功执行的事务日志;
在所述第一会话中的失败之后,所述会话管理器从所述客户端接收重建所述第一会话的请求、与所述事务相关联的进一步命令以及所述进一步命令的命令标识符;
所述会话管理器与所述客户端重建所述第一会话,并且确定所述进一步命令的命令标识符是否已被存储在所述事务日志中;以及
如果所述会话管理器确定与所述进一步命令相关联的所述命令标识符未被存储在所述事务日志中,则所述进一步命令尝试被执行,并且所述事务日志管理器用与所述进一步命令相关联的所述命令标识符以及关于所述进一步命令是否已被成功执行的指示来注释所述事务日志。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380040029.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用于自动化工具控制系统的工具塑造
- 下一篇:基于短语的词典提取和翻译质量评估





