147 lines
9.5 KiB
HTML
147 lines
9.5 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="Considerations and restrictions for commitment control" />
|
|
<meta name="abstract" content="The topic talks about miscellaneous considerations and restrictions for commitment control." />
|
|
<meta name="description" content="The topic talks about miscellaneous considerations and restrictions for commitment control." />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakjconcepts.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/ovrdbf.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/apyjrnchg.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/rmvjrnchg.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../sqlp/rbafykickoff.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/sbmrmtcmd.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/commit.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../cl/rollback.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../apis/QTNADDCR.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="../rzahc/ensuretwophase.htm" />
|
|
<meta name="DC.Relation" scheme="URI" content="rzakjlocklevel.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="rzakjmiscconsid" />
|
|
<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>Considerations and restrictions for commitment control</title>
|
|
</head>
|
|
<body id="rzakjmiscconsid"><a name="rzakjmiscconsid"><!-- --></a>
|
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
|
<h1 class="topictitle1">Considerations and restrictions for commitment control</h1>
|
|
<div><p>The topic talks about miscellaneous considerations and restrictions
|
|
for commitment control.</p>
|
|
<div class="section"><h4 class="sectiontitle">Database file considerations</h4><ul><li>If you specify that a shared file be opened under commitment control,
|
|
all subsequent uses of that file must be opened under commitment control.</li>
|
|
<li>If SEQONLY(*YES) is specified for the file opened for read-only with LCKLVL(*ALL)
|
|
(either implicitly or by a high-level language program, or explicitly by the
|
|
Override with Database File (OVRDBF) command), then SEQONLY(*YES) is ignored
|
|
and SEQONLY(*NO) is used.</li>
|
|
<li>Record-level changes made under commitment control are recorded in a journal.
|
|
These changes can be applied to or removed from the database with the Apply
|
|
Journaled Changes (APYJRNCHG) command or the Remove Journaled Changes (RMVJRNCHG)
|
|
command.</li>
|
|
<li>Both before-images and after-images of the files are journaled under commitment
|
|
control. If you specify only to journal the after-images of the files, the
|
|
system also automatically journals the before-image of the file changes that
|
|
occurred under commitment control. However, because the before-images are
|
|
not captured for all changes made to the files, you cannot use the RMVJRNCHG
|
|
command for these files.</li>
|
|
</ul>
|
|
</div>
|
|
<div class="section"><h4 class="sectiontitle">Considerations for object and record-level changes</h4><ul><li>Object-level and record-level changes made under commitment control using
|
|
SQL will use the commitment definition that is currently active for the activation
|
|
group that the requesting program is running in. If neither the job-level
|
|
nor the activation-group-level commitment definition is active, SQL will start
|
|
an activation-group-level commitment definition. </li>
|
|
</ul>
|
|
</div>
|
|
<div class="section"><h4 class="sectiontitle">One-phase and two-phase commit considerations</h4><ul><li>While a one-phase remote conversation or connection is established, remote
|
|
conversations or connections to other locations are not allowed. If a commitment
|
|
boundary is established and all resources are removed, the location can be
|
|
changed.</li>
|
|
<li>If you are using two-phase commit, you do not need to use the Submit Remote
|
|
Command (SBMRMTCMD) command to start commitment control or perform any other
|
|
commitment control operations at the remote locations. The system performs
|
|
these functions for you.</li>
|
|
<li>For a one-phase remote location, the COMMIT and ROLLBACK CL commands will
|
|
fail if SQL is in the call stack and the remote relational database is not
|
|
on a system. If SQL is not on the call stack, the COMMIT and ROLLBACK commands
|
|
will not fail.</li>
|
|
<li>For a one-phase remote location, commitment control must be started on
|
|
the source system before making committable changes to remote resources. The
|
|
system automatically starts commitment control for distributed database SQL
|
|
on the source system at connection time if the SQL program is running with
|
|
the commitment control option other than *NONE. When the first remote resource
|
|
is placed under commitment control, the system starts commitment control on
|
|
the target system.</li>
|
|
</ul>
|
|
</div>
|
|
<div class="section"><h4 class="sectiontitle">Save consideration</h4><p>A save operation is prevented
|
|
if the job performing the save has one or more active commitment definitions
|
|
with any of the following types of committable changes:</p>
|
|
<ul><li>A record change to a file that resides in the library being saved. For
|
|
logical files, all the related physical files are checked.</li>
|
|
<li>Any object-level changes within a library that is being saved.</li>
|
|
<li>Any API resource that was added using the Add Commitment Resource (QTNADDCR)
|
|
API and with the Allow normal save processing field set to the default value
|
|
of N.</li>
|
|
</ul>
|
|
<p>This prevents the save operations from saving to the save media changes
|
|
that are due to a partial transaction.</p>
|
|
<div class="note"><span class="notetitle">Note:</span> If you use the new save with
|
|
partial transactions feature the object can be saved without ending a commitment
|
|
definition.<p>Object locks and record locks prevent pending changes from commitment
|
|
definitions in other jobs from being saved to the save media. This is true
|
|
only for API commitment resources if locks are acquired when changes are made
|
|
to the object or objects associated with the API commitment resource.</p>
|
|
</div>
|
|
</div>
|
|
<div class="section"><h4 class="sectiontitle">Miscellaneous considerations and restrictions</h4><ul><li>Before upgrading your system to a new release, all pending resynchronizations
|
|
must either be completed or canceled.</li>
|
|
<li>The COMMIT and ROLLBACK values are shown on the WRKACTJOB Function field
|
|
during a commit or rollback. If the Function remains COMMIT or ROLLBACK for
|
|
a long time, one of the following events might have occurred: <ul><li>A resource failure during the commit or rollback requires resynchronization.
|
|
Control will not return to the application until the resynchronization completes
|
|
or is canceled.</li>
|
|
<li>This system voted read-only during the commit. Control will not return
|
|
to the application until the system that initiated the commit sends data to
|
|
this system.</li>
|
|
<li>This system voted OK to leave out during the commit. Control will not
|
|
return to the application until the system that initiated the commit sends
|
|
data to this system.</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzakjconcepts.htm" title="This topic provides information to help you understand how commitment control works, how it interacts with your system, and how it interacts with other systems in your network.">Commitment control concepts</a></div>
|
|
</div>
|
|
<div class="relconcepts"><strong>Related concepts</strong><br />
|
|
<div><a href="../rzahc/ensuretwophase.htm">Ensure two-phase commit integrity</a></div>
|
|
<div><a href="rzakjlocklevel.htm" title="The value you specify for the LCKLVL parameter on the Start Commitment Control (STRCMTCTL) command becomes the default level of record locking for database files that are opened and placed under commitment control for the commitment definition.">Commit lock level</a></div>
|
|
</div>
|
|
<div class="relref"><strong>Related reference</strong><br />
|
|
<div><a href="../cl/ovrdbf.htm">Override with Database File (OVRDBF) command</a></div>
|
|
<div><a href="../cl/apyjrnchg.htm">Apply Journaled Changes (APYJRNCHG) command</a></div>
|
|
<div><a href="../cl/rmvjrnchg.htm">Remove Journaled Changes (RMVJRNCHG) command</a></div>
|
|
<div><a href="../sqlp/rbafykickoff.htm">SQL programming</a></div>
|
|
<div><a href="../cl/sbmrmtcmd.htm">Submit Remote Command (SBMRMTCMD) command</a></div>
|
|
<div><a href="../cl/commit.htm">COMMIT command</a></div>
|
|
<div><a href="../cl/rollback.htm">ROLLBACK command</a></div>
|
|
<div><a href="../apis/QTNADDCR.htm">Add Commitment Resource (QTNADDCR) API</a></div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html> |