Browse Prior Art Database

Algorithm for the Assured Placement of Files into Syncpoint Enabled System

IP.com Disclosure Number: IPCOM000123469D
Original Publication Date: 1998-Dec-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 2 page(s) / 107K

Publishing Venue

IBM

Related People

Capps, CL: AUTHOR [+4]

Abstract

Problem The file systems that most operating systems use do not have any concept of "unit of work" or syncpoint control. Whenever it is necessary to move a set of files into a system that does support "unit of work" or syncpoint control, for example a database or a queuing system, extreme care must be taken. It is a requirement that all of the files are placed in to the syncpoint system in a controlled manner, that mimics a unit of work. This means that either all of the files must be moved, or none of the files are moved. The files need to be placed into the syncpoint controlled environment once and only once. Failures, such as power failures, operating system crashes cannot effect the integrity of the operation.

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

Algorithm for the Assured Placement of Files into Syncpoint Enabled
System

   Problem

   The file systems that most operating systems use do not
have any concept of "unit of work" or syncpoint control.  Whenever
it is necessary to move a set of files into a system that does
support "unit of work" or syncpoint control, for example a database
or a queuing system, extreme care must be taken.  It is a requirement
that all of the files are placed in to the syncpoint system in a
controlled manner, that mimics a unit of work.  This means that
either all of the files must be moved, or none of the files are
moved.  The files need to be placed into the syncpoint controlled
environment once and only once.  Failures, such as power failures,
operating system crashes cannot effect the integrity of the
operation.

   Solution

   The following procedure was devised to move a group of
files from a non-syncpoint enabled filesystem to a syncpoint
controlled environment.  The syncpoint controlled environment,
whether it is a queuing system or a database, can be on the local
machine or on a remote machine.  The procedure is designed so that if
a system failure occurs at any point, there is a defined way to
recover from the operation.  Recovery means one of two things:
completing the operation, making it appear that the failure occurred
after the operation, or removing any trace that the operation had
begun, making it appear that the failure occurred before the
operation started.  In other words, the operation appears as a single
instruction.

   For each step in which there is disk I/O, the disk cache
is flushed at the end of the step.  Also, the files written in steps
2, 3, and 10 are written with a format that allows one to know that
the entire file was written.  The steps of the operation are:
  1.  Copy all of the files to be placed into the syncpoint
      controlled environment into a known recovery directory.
  2.  Write a file in the recovery directory with the full
      path to all files to be moved.
  3.  Write a file in the recovery directory with the full
      path to the copies of the files to be moved that were
      created in step 1.
  4.  Write a zero byte file to the recovery directory.  This
      file is used as a marker to signal that the operation has
      reached a point from which the operation can be completed.
  5.  Delete all of the original files.
  6.  Delete the file containing the list of original files,
      created in step 2.
  7.  Copy the files into the syncpoint controlled
      environment.  This may mean placing the files on to a
      queue, or as data in a database table.
  8.  In a temporary area i...