97 lines
5.7 KiB
HTML
97 lines
5.7 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE html
|
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html lang="en-us" xml:lang="en-us">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<meta name="security" content="public" />
|
|
<meta name="Robots" content="index,follow" />
|
|
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
|
<meta name="DC.Type" content="concept" />
|
|
<meta name="DC.Title" content="Rollback operation" />
|
|
<meta name="abstract" content="A rollback operation removes all changes made since the previous commit or rollback operation. The system also releases all locks related to the transaction." />
|
|
<meta name="description" content="A rollback operation removes all changes made since the previous commit or rollback operation. The system also releases all locks related to the transaction." />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakjrollbacks.htm" />
|
|
<meta name="copyright" content="(C) Copyright IBM Corporation 2004, 2006" />
|
|
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 2004, 2006" />
|
|
<meta name="DC.Format" content="XHTML" />
|
|
<meta name="DC.Identifier" content="rzakjrollbops" />
|
|
<meta name="DC.Language" content="en-us" />
|
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
|
<!-- US Government Users Restricted Rights -->
|
|
<!-- Use, duplication or disclosure restricted by -->
|
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
|
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
|
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
|
<title>Rollback operation</title>
|
|
</head>
|
|
<body id="rzakjrollbops"><a name="rzakjrollbops"><!-- --></a>
|
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
|
<h1 class="topictitle1">Rollback operation</h1>
|
|
<div><p>A rollback operation removes all changes made since the previous
|
|
commit or rollback operation. The system also releases all locks related to
|
|
the transaction. </p>
|
|
<p>The system performs the following steps when it receives a request to roll
|
|
back:</p>
|
|
<ul><li>The system clears records from the I/O buffer if both of the following
|
|
conditions are true: <ul><li>If records were added to a local or remote database file under commitment
|
|
control.</li>
|
|
<li>If SEQONLY(*YES) was specified when the file was opened so that blocked
|
|
I/O is used by the system and a partial block of records exists that has not
|
|
yet been written to the database.</li>
|
|
</ul>
|
|
<p>Otherwise, the I/O feedback area and I/O buffers remain unchanged.</p>
|
|
</li>
|
|
<li>The system makes a call to the commit or rollback exit program for each
|
|
API commitment resource that is present in the commitment definition. If a
|
|
location has more than one exit program registered, the system calls the exit
|
|
programs for that location in reverse order from the order in which they were
|
|
registered.</li>
|
|
<li>If a record was deleted from a file, the system adds the record back to
|
|
the file.</li>
|
|
<li>The system removes any changes to records that have been made during this
|
|
transaction, and places the original records (the before-images) back into
|
|
the file.</li>
|
|
<li>If any records were added to the file during this transaction, they remain
|
|
in the file as deleted records.</li>
|
|
<li>If any record changes were made to resources assigned to a journal during
|
|
the transaction, the system adds a journal entry of C RB to the journal,
|
|
indicating that a rollback operation occurred. The journal also contains images
|
|
of the record changes that were rolled back. Before the rollback operation
|
|
was requested, the before-images and after-images of changed records were
|
|
placed in the journal. The system also writes C RB entry to the default journal
|
|
if any committable resources are assigned to that journal.</li>
|
|
<li>The system positions the open files under commitment control at one of
|
|
the following positions: <ul><li>The last record accessed in the previous transaction</li>
|
|
<li>At the open position if no commit operation has been performed for the
|
|
file using this commitment definition</li>
|
|
</ul>
|
|
This consideration is important if you are doing sequential processing.</li>
|
|
<li>The system does not roll back noncommittable changes for database files.
|
|
For example, opened files are not closed, and cleared files are not restored.
|
|
The system does not reopen or reposition any files that were closed during
|
|
this transaction.</li>
|
|
<li>The system unlocks record locks that were acquired for commitment control
|
|
purposes and makes those records available to other users.</li>
|
|
<li>The commit identification currently saved by the system remains the same
|
|
as the commit identification provided with the last commit operation for the
|
|
same commitment definition.</li>
|
|
<li>The system reverses or rolls back object-level committable changes made
|
|
during this transaction.</li>
|
|
<li>Object locks that were acquired for commitment control purposes are unlocked
|
|
and those objects are made available to other users.</li>
|
|
<li>The system establishes the previous commitment boundary as the current
|
|
commitment boundary.</li>
|
|
<li>The system changes information in the commitment definition to show that
|
|
the current transaction has been ended.</li>
|
|
</ul>
|
|
<p>The system must perform all of the previous steps correctly for the rollback
|
|
operation to be successful.</p>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzakjrollbacks.htm" title="Commit and rollback operations affect changes that are made under commitment control.">How commit and rollback operations work</a></div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html> |