发明名称 Simplifying implementation of custom atomic transactions in a programming environment
摘要 An aspect of the present invention simplifies the implementation of custom atomic transactions. A program logic (implementing a custom atomic transaction) may request a unique transaction identifier from a programming environment. The program logic may then specify a task procedure, corresponding roll-back procedures, and the transaction identifier using an interface provided by the programming environment. The programming environment keeps track of the specified roll-back procedures. The information maintained by the programming environment may be used to execute the roll-back procedures if the atomic transaction is to be aborted. As the programming environment keeps track of the roll-back procedures to be executed, the implementation of atomic transactions may be simplified.
申请公布号 US8825615(B2) 申请公布日期 2014.09.02
申请号 US200410709522 申请日期 2004.05.11
申请人 Oracle International Corporation 发明人 Itikarlapalli Krishna Mohan;Seshadri Sreekumar K.
分类号 G06F7/00 主分类号 G06F7/00
代理机构 代理人 Thappeta Narendra Reddy
主权项 1. A method of implementing atomic transactions in a system, said method comprising: requesting in a user program a transaction identifier for an atomic transaction; generating said transaction identifier in a transaction manager in response to said requesting; specifying in said user program a plurality of combinations, wherein each of said plurality of combinations contains said transaction identifier, a task procedure, and a rollback procedure, wherein each combination indicates that the rollback procedure is to be executed if the execution of the corresponding task procedure in the combination is completed and if said atomic transaction is to be aborted, wherein said task procedure implements a part of said atomic transaction and said rollback procedure is designed to rollback said task procedure; executing a set of task procedures in a sequential order according to said user program, wherein said set of task procedures are contained in said task procedures specified in said plurality of combinations; keeping track of a set of rollback procedures corresponding to said set of task procedures, each of said set of rollback procedures being determined based on a combination corresponding to an executed task procedure contained in said set of task procedures, said combination being contained in said plurality of combinations specified in said user program, wherein said set of rollback procedures are kept track of external to said user program in response to said executing of the corresponding task procedures; and executing said set of rollback procedures in a reverse order of said sequential order if said atomic transaction is to be aborted, wherein said rollback procedure is specified as a separate procedure from said task procedure in said user program, wherein said user program contains groups of instructions to implement respective program logic for each of said task procedure and said rollback procedure, and whereby each user program has corresponding custom logic specified by a user for each of the rollback procedures.
地址 Redwood Shores CA US