| Oracle
Workspace Manager Long Duration Transaction Sample
This sample illustrates how Workspace Manager is used by two Web developers
to simultaneously create versions of the ACME product catalog for summer,
Labor Day, and Father's Day sales.
Overview
This sample illustrates the use of the following workspace APIs, see
the Reference Guide on the Documentation page for details:
- Workspace operations: create, goto, rollback, merge, freeze and remove
workspace
- Version-enabling tables
- Workspace privileges
- Workspace locking
- Savepoints
- Conflict Resolution
- Workspace metadata views
The sample creates workspaces in Oracle8i or Oracle9i to make catalog
data changes that occur over long periods of time (in this case the catalog
development cycle) while permitting simultaneous read and write access
to the same production catalog by other users and other catalog developers.
When each catalog is complete it can either be accessed from its workspace
indefinitely, or the changes that are unique to the catalog can be merged
with the current production catalog.
Changes for each catalog are managed in a workspace, or if preferred,
in a hierarchy of workspaces. Changes are managed transparently by Workspace
Manager as a series of traditional short transactions and new row versions
inserted in the existing (and previously version-enabled) database tables.
New row versions are only visible to users in the workspace until explicitly
merged with production data. Developers in the workspaces see their changes
in the context of the rest of the unchanged data in the current production
catalog. No application specific metadata columns or views are needed
to designate the items or versions of items that are included in each
version of the catalog. The user simply executes the gotoworkspace
API to see a particular catalogue.
Prerequisites
- Oracle 8.1.6 (or later)
- Oracle Workspace Manager (automatically installed with Oracle9i)
- Two Oracle usernames and passwords
- The password for user 'system'
- SQL*Plus (to execute the SQL script)
Installation
- Unzip the file
- Invoke SQL*Plus from the same directory as the script and connect
to the Oracle database
- Execute the script: @catalog_demo.sql
|