← Back to Patent Explorer
US5958004A Expired / Lapsed US ⏱️ 0.0 years remaining

Disabling and enabling transaction committal in transactional application components

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1997-10-28
•
Granted: 1999-09-28
•
Expires: 2017-10-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A run-time environment implemented as system services and component integration interfaces provides a capability for components of a component-based server application to reversibly disable committal of a transaction in which the component participates. On return from a call to the component which leaves the component's transactional work in an invalid state, the component can disable commit of the transaction so as to avoid premature committal of the component's transactional work. On return from a call to the component which renders the component's transactional work in a valid state, the component re-enables commit of the transaction. If committal of the transaction is initiated when any component in the transaction disables commit, the transaction is aborted.

Inventors

  • 👤 Patrick James Helland
  • 👤 Rodney Limprecht
  • 👤 Mohsen Al-Ghosein

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 23:47
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/466; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944; Y10S707/99945; Y10S707/99948; Y10S707/99951; Y10S707/99952

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 99 words
In a distributed computer network, a method of coordinating work of a plurality of software components as an atomic transaction, comprising: tracking a state of work of each component in a transaction, where the state of work may be reversibly set to a disable commit state; on receiving a request to commit the transaction, determining whether a state of work of any component in the transaction is the disable commit state; and disallowing committal of all work of the components in the transaction if a state of work of any component in the transaction is the disable commit state.
Claim 2
Dependent Claim 99 words
In a distributed computer network, a method of coordinating work of a plurality of software components as an atomic transaction, comprising: tracking a state of work of each component in a transaction, where the state of work may be reversibly set to a disable commit state; on receiving a request to commit the transaction, determining whether a state of work of any component in the transaction is the disable commit state; and disallowing committal of all work of the components in the transaction if a state of work of any component in the transaction is the disable commit state.
Claim 3
Dependent Claim 31 words
The method of claim 1 further comprising: aborting all work of the components in the transaction if a state of work of any component in the transaction is the disable state.
Claim 4
Dependent Claim 49 words
The method of claim 1 wherein the state of work of a component also may be set to an abort state, the method further comprising: aborting all work of the components in the transaction if a state of work of any component in the transaction is the abort state.
Claim 5
Dependent Claim 31 words
The method of claim 1 further comprising: maintaining context data of the components external to the components, the context data comprising the state of work of the components in the transaction.
Claim 6
Dependent Claim 124 words
An execution environment of component-based server applications for avoiding premature committal of work by server application components in a transaction, comprising: a transaction manager for selectively committing or aborting work of a plurality of server application components in a transaction as an atomic unit; and an interface for calling by the server application components, the interface having an abort function for causing the transaction manager to abort the transaction, a disable commit function for temporarily and reversibly disabling commit of the transaction by the transaction manager, and an enable commit for reversing the disabling of commit of the transaction; whereby one of the server application components can prevent premature committal of as yet incomplete work in the transaction by calling the disable commit function.
Claim 7
Dependent Claim 124 words
An execution environment of component-based server applications for avoiding premature committal of work by server application components in a transaction, comprising: a transaction manager for selectively committing or aborting work of a plurality of server application components in a transaction as an atomic unit; and an interface for calling by the server application components, the interface having an abort function for causing the transaction manager to abort the transaction, a disable commit function for temporarily and reversibly disabling commit of the transaction by the transaction manager, and an enable commit for reversing the disabling of commit of the transaction; whereby one of the server application components can prevent premature committal of as yet incomplete work in the transaction by calling the disable commit function.
Claim 8
Dependent Claim 48 words
The execution environment of claim 5 further comprising: a second interface having a commit function for initiating committal of the transaction by the transaction manager, the transaction manager being operative to suppress committal when committal is initiated and any of the components in the transaction has disabled commit.
Claim 9
Dependent Claim 49 words
The execution environment of claim 6 further comprising: a second interface having a commit function for initiating committal of the transaction by the transaction manager, the transaction manager being operative to abort the transaction when committal is initiated and any of the components in the transaction has disabled commit.
Claim 10
Dependent Claim 145 words
An execution environment of component-based server applications for avoiding premature committal of work by server application components in a transaction, comprising: a component context associated with each component for recording a value indicating a state of work of the associated component in the transaction; an interface having a disable commit function for calling by a component to set the value in its associated component context to indicate a disable commit state, and having an enable commit function for calling by the component to set the value in its associated component context to indicate an enable commit state; and a transaction manager operative responsive to a commit signal to determine whether a state of work of any component is the disable commit state, and to disallow committal of the transaction if a state of work of any component in the transaction is the disable commit state.
Claim 11
Dependent Claim 145 words
An execution environment of component-based server applications for avoiding premature committal of work by server application components in a transaction, comprising: a component context associated with each component for recording a value indicating a state of work of the associated component in the transaction; an interface having a disable commit function for calling by a component to set the value in its associated component context to indicate a disable commit state, and having an enable commit function for calling by the component to set the value in its associated component context to indicate an enable commit state; and a transaction manager operative responsive to a commit signal to determine whether a state of work of any component is the disable commit state, and to disallow committal of the transaction if a state of work of any component in the transaction is the disable commit state.
Claim 12
Dependent Claim 32 words
The execution environment of claim 8 wherein the transaction manager is operative to abort the transaction if a state of work of any component in the transaction is the disable commit state.
Claim 13
Dependent Claim 109 words
A computer readable storage medium having computer executable instructions stored thereon for avoiding premature committal of transactional work of a component-based server application, the instructions comprising: code for reversibly disabling committal of a transaction on return from a first call to a component of the server application in which transactional work of the component is left in an invalid state; code for again enabling committal of the transaction on return from a second call to the component in which the component's transactional work is left in a valid state; and code for suppressing committal of the transaction if any component in the transaction currently disables committal of the transaction.
Claim 14
Dependent Claim 109 words
A computer readable storage medium having computer executable instructions stored thereon for avoiding premature committal of transactional work of a component-based server application, the instructions comprising: code for reversibly disabling committal of a transaction on return from a first call to a component of the server application in which transactional work of the component is left in an invalid state; code for again enabling committal of the transaction on return from a second call to the component in which the component's transactional work is left in a valid state; and code for suppressing committal of the transaction if any component in the transaction currently disables committal of the transaction.
Claim 15
Dependent Claim 34 words
The computer readable storage medium of claim 10 wherein the instructions further comprise: code for aborting the transaction if, when committal is initiated, any component in the transaction currently disables committal of the transaction.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-09-27 2003-03-29 2003-09-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-09-27 2007-03-29 2007-09-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-09-27 2011-03-29 2011-09-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag