ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzakj_5.4.0.1/rzakjsequence.htm

188 lines
11 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="Sequence of journal entries under commitment control" />
<meta name="abstract" content="This table shows the sequence of entries that are typically written while a commitment definition is active. You can use the Journal entry information finder to get more information about the contents of the journal entries." />
<meta name="description" content="This table shows the sequence of entries that are typically written while a commitment definition is active. You can use the Journal entry information finder to get more information about the contents of the journal entries." />
<meta name="DC.Relation" scheme="URI" content="rzakjresources.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakjcommitops.htm" />
<meta name="DC.Relation" scheme="URI" content="../rzaki/rzakijournalfinder.htm" />
<meta name="DC.Relation" scheme="URI" content="../cl/endcmtctl.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="rzakjsequence" />
<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>Sequence of journal entries under commitment control</title>
</head>
<body id="rzakjsequence"><a name="rzakjsequence"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Sequence of journal entries under commitment control</h1>
<div><p>This table shows the sequence of entries that are typically written
while a commitment definition is active. You can use the Journal entry information
finder to get more information about the contents of the journal entries.</p>
<p>Commitment control entries are written to a local journal
if at least one of the following conditions is true:</p>
<ul><li>The journal is specified as the default journal on the Start Commitment
Control (STRCMTCTL) command.</li>
<li>At least one file journaled to the journal is opened under commitment
control.</li>
<li>At least one API commitment resource associated with the journal is registered
under commitment control.</li>
</ul>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th valign="top" id="d0e35">Entry type</th>
<th valign="top" id="d0e37">Description</th>
<th valign="top" id="d0e39">Where it is written</th>
<th valign="top" id="d0e41">When it is written</th>
</tr>
</thead>
<tbody><tr><td rowspan="2" valign="top" headers="d0e35 ">C BC</td>
<td rowspan="2" valign="top" headers="d0e37 ">Begin commitment control</td>
<td valign="top" headers="d0e39 ">To the default journal, if one is specified on the STRCMTCTL command.</td>
<td valign="top" headers="d0e41 ">When the STRCMTCTL command is used.</td>
</tr>
<tr><td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">When the first file journaled to a journal is opened or when an API
resource is registered for a journal.</td>
</tr>
<tr><td rowspan="2" valign="top" headers="d0e35 ">C SC</td>
<td rowspan="2" valign="top" headers="d0e37 ">Start commit cycle</td>
<td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">When the first record change occurs for the transaction for a file
journaled to this journal<sup>1</sup>.</td>
</tr>
<tr><td valign="top" headers="d0e39 ">To the journal for an API resource.</td>
<td valign="top" headers="d0e41 ">When the QJOSJRNE API is first used with the <var class="varname">Include Commit
Cycle Identifier</var> key.</td>
</tr>
<tr><td valign="top" headers="d0e35 ">Journal codes D and F</td>
<td valign="top" headers="d0e37 ">DDL object-level entries</td>
<td valign="top" headers="d0e39 ">To the journal associated with the object being updated. Only journal
entries that contain a commit cycle identifier represent a DDL object-level
change that is part of the transaction.</td>
<td valign="top" headers="d0e41 ">When updates occur.</td>
</tr>
<tr><td valign="top" headers="d0e35 ">Journal code R</td>
<td valign="top" headers="d0e37 ">Record-level entries</td>
<td valign="top" headers="d0e39 ">To the journal associated with the file being updated.</td>
<td valign="top" headers="d0e41 ">When the updates occur.</td>
</tr>
<tr><td valign="top" headers="d0e35 ">Journal code U</td>
<td valign="top" headers="d0e37 ">User-created entries</td>
<td valign="top" headers="d0e39 ">To the journal associated with an API resource.</td>
<td valign="top" headers="d0e41 ">If the application program uses the QJOSJRNE API is first used with
the <var class="varname">Include Commit Cycle Identifier</var> key.</td>
</tr>
<tr><td rowspan="2" valign="top" headers="d0e35 ">C CM</td>
<td rowspan="2" valign="top" headers="d0e37 ">Commit</td>
<td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">When the commit has completed successfully.</td>
</tr>
<tr><td valign="top" headers="d0e39 ">To the default journal.</td>
<td valign="top" headers="d0e41 ">If any committable resources are associated with the journal.</td>
</tr>
<tr><td rowspan="2" valign="top" headers="d0e35 ">C RB</td>
<td rowspan="2" valign="top" headers="d0e37 ">Rollback</td>
<td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">After the rollback operation has completed.</td>
</tr>
<tr><td valign="top" headers="d0e39 ">To the default journal.</td>
<td valign="top" headers="d0e41 ">If any committable resources are associated with the journal.</td>
</tr>
<tr><td valign="top" headers="d0e35 ">C LW</td>
<td valign="top" headers="d0e37 ">End transaction</td>
<td valign="top" headers="d0e39 ">To the default journal, if one is specified on the STRCMTCTL command.
The system writes an LW header record and one or more detail records. These
entries are written only if OMTJRNE(*NONE) is specified on the STRCMTCTL command
or if a system error occurs.</td>
<td valign="top" headers="d0e41 ">When the commit or rollback operation has completed.</td>
</tr>
<tr><td rowspan="2" valign="top" headers="d0e35 ">C EC</td>
<td rowspan="2" valign="top" headers="d0e37 ">End commitment control</td>
<td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">When the End Commitment Control (ENDCMTCTL) command is completed.</td>
</tr>
<tr><td valign="top" headers="d0e39 ">To a local journal that is not the default journal.</td>
<td valign="top" headers="d0e41 ">When a commit boundary is established, following the point when all
committable resources associated with that journal have been removed from
commitment control.</td>
</tr>
<tr><td valign="top" headers="d0e35 "> C SB</td>
<td valign="top" headers="d0e37 ">Start of savepoint or nested commit cycle.</td>
<td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">When the application creates an SQL SAVEPOINT, or when the system creates
an internal nested commit cycle to handle a series of database functions as
a single operation<sup>2</sup>.</td>
</tr>
<tr><td valign="top" headers="d0e35 "> C SQ</td>
<td valign="top" headers="d0e37 ">Release of savepoint or commit of nested commit cycle.</td>
<td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">When the application releases an SQL SAVEPOINT, or when the system
commits an internal nested commit cycle<sup>2</sup>.</td>
</tr>
<tr><td valign="top" headers="d0e35 "> C SU</td>
<td valign="top" headers="d0e37 ">Rollback of savepoint or nested commit cycle.</td>
<td valign="top" headers="d0e39 ">To the journal.</td>
<td valign="top" headers="d0e41 ">When the application rolls back an SQL SAVEPOINT, or when the system
rolls back an internal nested commit cycle<sup>2</sup>.</td>
</tr>
<tr><td colspan="4" valign="top" headers="d0e35 d0e37 d0e39 d0e41 "><div class="note"><span class="notetitle">Notes:</span> <p><sup>1</sup> You
can specify that the fixed-length portion of the journal entry includes transaction
information by specifying the Logical Unit of Work (*LUW) value for the Fixed-Length
Data (FIXLENDTA) parameter of the Create Journal (CRTJRN) or Change Journal
(CHGJRN) command. By specifying the FIXLENDTA (*LUW) parameter, the fixed-length
portion of each C SC journal entry will contain the Logical Unit of Work ID
(LUWID) of the current transaction. Likewise for XA transactions, if you specify
the FIXLENDTA(*XID) parameter, the fixed-length portion of each C SC journal
entry will contain the XID of the current transaction. The LUWID or XID can
help you find all the commit cycles for a particular transaction if multiple
journals or systems are involved in the transaction.</p>
<p><sup>2</sup> These
entries are sent only if you set the QTN_JRNSAVPT_MYLIB_MYJRN environment
variable to *YES where MYJRN is the journal you are using and MYLIB is the
library the journal is stored in. Special value *ALL is supported for the
MYLIB and MYJRN values. You can set these variables system-wide or for a specific
job. To have the entries sent for journal MYLIB/MYJRN for just one job, use
this command in that job:</p>
<ul><li>ADDENVVAR ENVVAR(QTN_JRNSAVPT_MYLIB_MYJRN) VALUE(*YES)</li>
</ul>
<p>To have entries sent for all journals for all jobs, use this command:</p>
<ul><li>ADDENVVAR ENVVAR('QTN_JRNSAVPT_*ALL_*ALL') VALUE(*YES) LEVEL(*SYS)</li>
</ul>
<p>You need to set the environment variable before you start commitment
control.</p>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzakjresources.htm" title="When you place an object under commitment control, it becomes a committable resource. It is registered with the commitment definition. It participates in each commit operation and rollback operation that occurs for that commitment definition.">How commitment control works with objects</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="rzakjcommitops.htm" title="A commit operation makes permanent all changes made under commitment control since the previous commit or rollback operation. The system also releases all locks related to the transaction.">Commit operation</a></div>
<div><a href="../rzaki/rzakijournalfinder.htm">Journal entry information finder</a></div>
</div>
<div class="relref"><strong>Related reference</strong><br />
<div><a href="../cl/endcmtctl.htm">End Commitment Control (ENDCMTCTL) command</a></div>
</div>
</div>
</body>
</html>