JBoss.orgCommunity Documentation

ArjunaCore Development Guide

TxCore and TXOJ Programmers Guide

by Mark Red Hat Little, Jonathan Red Hat Halliday, Andrew Red Hat Dinn, and Kevin Red Hat Connor
edited by Misty Red Hat Stanley-Jones

Abstract

This guide is most relevant to engineers who are responsible for administering JBoss Transactions installations. Although this guide is specifically intended for service developers, it will be useful to anyone who would like to gain an understanding of transactions and how they function.


Preface
1. Document Conventions
1.1. Typographic Conventions
1.2. Pull-quote Conventions
1.3. Notes and Warnings
2. We Need Feedback!
1. About This Guide
1.1. Audience
1.2. Prerequisites
2. Overview
2.1. TxCore
2.2. Saving object states
2.3. The object store
2.4. Recovery and persistence
2.5. The life cycle of a Transactional Object for Java
2.6. The concurrency controller
2.7. The transactional protocol engine
2.8. The class hierarchy
3. Using TxCore
3.1. State management
3.1.1. Object states
3.1.2. The object store
3.1.3. Selecting an object store implementation
3.2. Lock management and concurrency control
3.2.1. Selecting a lock store implementation
3.2.2. LockManager
3.2.3. Locking policy
3.2.4. Object constructor and destructor
4. Advanced transaction issues with TxCore
4.1. Last resource commit optimization (LRCO)
4.2. Nested transactions
4.3. Asynchronously committing a transaction
4.4. Independent top-level transactions
4.5. Transactions within save_state and restore_state methods
4.6. Garbage collecting objects
4.7. Transaction timeouts
4.7.1. Monitoring transaction timeouts
5. Hints and tips
5.1. General
5.1.1. Using transactions in constructors
5.1.2. save_state and restore_state methods
5.2. Direct use of StateManager
6. Constructing a Transactional Objects for Java application
6.1. Queue description
6.2. Constructors and destructors
6.3. Required methods
6.3.1. save_state, restore_state, and type
6.3.2. enqueue and dequeue methods
6.3.3. queueSize method
6.3.4. inspectValue and setValue methods
6.4. The client
6.5. Comments
A. Object store implementations
A.1. The ObjectStore
A.1.1. Persistent object stores
B. Class definitions
C. Revision History