Browse Prior Art Database

Two-Integer Encoding of File Modification Histories in a Hierarchy

IP.com Disclosure Number: IPCOM000102228D
Original Publication Date: 1990-Nov-01
Included in the Prior Art Database: 2005-Mar-17
Document File: 2 page(s) / 78K

Publishing Venue

IBM

Related People

Harrison, WH: AUTHOR [+3]

Abstract

Disclosed is an encoding of file modification histories as pairs of bounded integers. The encoding permits determination of whether one file has been derived from another by a sequence of modifications. The encoding is appropriate when: (1) stores are arranged in a hierarchy, (2) file transfer is between parent and child stores only, and (3) file f'is permitted to overwrite file f only if f' is derived from f.

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

Two-Integer Encoding of File Modification Histories in a Hierarchy

       Disclosed is an encoding of file modification histories
as pairs of bounded integers.  The encoding permits determination of
whether one file has been derived from another by a sequence of
modifications.  The encoding is appropriate when:  (1) stores are
arranged in a hierarchy, (2) file transfer is between parent and
child stores only, and (3) file f'is permitted to overwrite file f
only if f' is derived from f.

      In this encoding, a modification history is a pair of bounded
integers (p,c), called the "parent number" and "child number,"
respectively.  If f is a file, pn(f) and cn(f) denote the parent and
child numbers of f, respectively, and fn(f) denotes the file name of
f.

      Let S be a store, and R be its parent in the store hierarchy.
The following invariants are maintained:

      The only operations permitted on files are those listed below.
The manner in which the modification histories are manipulated in
each case ensures preservation of the invariants:
      1.   A new file can be created in a store provided there is no
file of the same name already in the store.  It is assigned
modification history (O,c), for any c > O.
      2.   A modification of any kind can be performed on a file with
modification history (p,c).  The file's modification history is
changed to (p,c'), for any c' > c.
      3.   A file r in parent store R with modification history (p,c)
can be downloaded to child store S, provided that, if S already
contains a file s with the same file name as r, then pn(s) = cn(s).
The downloaded file in S is given modification history (c,c).
      4.   A file s e S with modification history (0,c) can be
uploaded to parent store R, provided R does not already contain a
file with the same name.  The uploaded file in R is assigned
modification history (0,c), and the modification history...