Browse Prior Art Database

Partial Checkout Scheme for Versioned Object

IP.com Disclosure Number: IPCOM000105848D
Original Publication Date: 1993-Sep-01
Included in the Prior Art Database: 2005-Mar-20
Document File: 4 page(s) / 116K

Publishing Venue

IBM

Related People

Lin, D: AUTHOR [+4]

Abstract

It is well known that version control is one of the most important functions in various data intensive application domains, such as soft- ware engineering, integrated CAD/CAM systems and office information systems dealing with compound documents. Users in these environments need to experiment with multiple versions of an object.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 43% of the total text.

Partial Checkout Scheme for Versioned Object

      It is well known that version control is one of the most
important functions in various data intensive application domains,
such as soft- ware engineering, integrated CAD/CAM systems and office
information systems dealing with compound documents.  Users in these
environments need to experiment with multiple versions of an object.

           Under version control system, users can declare objects to
be either versioned or nonversioned.  Users need to use "Checkout"
and "Checkin" commands provided by the version manager to access
versioned objects.  Users are not allowed to change the contents of
currently existing versions.  A new version will be created from the
existing version whenever it is being updated.  The version manager
keeps track of the version derivation hierarchy.

           When a user uses a "Checkout" command to check out a
versioned object, the version manager will create a transient version
for the user.  All updates will be applied to this transient object.
Since this transient object belongs only to this user, he will get an
exclusive lock automatically by the lock manager.

           Since the same parent object can be checked out by other
users, the checkout mode parameter in the "Checkout" command is used
to control the access of the parent object when a transient object is
in place.  For example, a "Freeze" access mode will prevent anyone
else from creating permanent versions of this object.

           The problem with the "Checkout" command provided by the
existing systems (e.g., IDSS*, ORBIT*) is that only one user can
check out the parent object in update mode and create permanent
objects from the transient object.

           However, in a software development environment, it is
possible that more than one person might need to work on the same
source object, but on different parts of the source object,
especially for a large source object.

           We propose a "PartialCheckout" command so that users can
check out part of an object.  The format of the command is as
follows:

          PartialCheckout(userid,objectId,from,to,mode)

           The objectId refers to the object id of the parent object;
"from" is the starting record number (or line number for a text file)
that the user wants to check out; and "to" is the ending record
number that the user wants to check out.  The access mode can be one
of the following:

           "R" gives "reference" access to the requested parent
object.  With
     the parent version locked in "referenced" mode, other users can
     still check out this parent version and create parallel versions
     through any "Checkout" or "PartialCheckout" command.

     "F" gives "freeze" access to the requested parent object within
the
     requested range ("from" to "to").  With this access right
granted,
     no one...