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

143 lines
9.3 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<?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="Updates to the notify object" />
<meta name="abstract" content="This topic lists the uncommitted changes for purposes of the notify object." />
<meta name="description" content="This topic lists the uncommitted changes for purposes of the notify object." />
<meta name="DC.Relation" scheme="URI" content="rzakjsysteminit.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakjendcommit.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakjactvgrpend.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakjrtstepend.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakjabmnlend.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakjresourcetypes.htm" />
<meta name="DC.Relation" scheme="URI" content="rzakjrtstepend.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="rzakjupdatenotify" />
<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>Updates to the notify object</title>
</head>
<body id="rzakjupdatenotify"><a name="rzakjupdatenotify"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Updates to the notify object</h1>
<div><p>This topic lists the uncommitted changes for purposes of the notify
object.</p>
<ul><li>An update to a record that is made under commitment control.</li>
<li>A record that is deleted under commitment control.</li>
<li>An object level change that is made to a local DDL object under commitment
control.</li>
<li>A read operation performed for a database file that was opened under commitment
control. This is because file position is brought back to the last commitment
boundary when a rollback operation is performed. If you perform a read operation
under commitment control, the file position is changed and therefore, an uncommitted
change then exists for the commitment definition.</li>
<li>A commitment definition with one of the following resources that are added
is always considered to have uncommitted changes: <ul><li>An API commitment resource</li>
<li>A remote Distributed
Relational Database Architecture™ (DRDA<sup>®</sup> *) resource</li>
<li>A Distributed Database Management Architecture (DDM) resource</li>
<li>An LU 6.2 resource</li>
</ul>
<p>This is because the system does not know when a real change is made
to the object or objects that are associated with these types of resources.
Types of committable resources has more information about how you add and
work with these types of resources.</p>
</li>
</ul>
<p>The system makes updates to the notify object, based on the
following ways that a commitment definition can end:</p>
<ul><li>If a job ends normally and no uncommitted changes exist, the system does
not place the commit identification of the last successful commit operation
in the notify object.</li>
<li>If an implicit commit operation is performed for an activation-group-level
commitment definition when the activation group is ended, the system does
not place the commit identification of the last successful commit operation
in the notify object.<div class="note"><span class="notetitle">Note:</span> Implicit commit operations are never performed
for the *DFTACTGRP or *JOB commitment definition</div>
</li>
<li>If the system, job, or an activation group ends abnormally before the
first successful commit operation for a commitment definition, the system
does not update the notify object because there is no last commit identification.
To differentiate between this condition and a normal program completion, your
program must update the notify object with a specific entry before completing
the first successful commit operation for the commitment definition.</li>
<li>If an abnormal job end or an abnormal system end occurs after at least
one successful commit operation, the system places the commit identification
of that commit operation in the notify object. If the last successful commit
operation did not specify a commit identification, then the notify object
is not updated. For an abnormal job end, this notify object processing is
performed for each commitment definition that was active for the job. For
an abnormal system end, this notify object processing is performed for each
commitment definition that was active for all jobs on the system.</li>
<li>The system updates the notify object with the commit identification
of the last successful commit operation for that commitment definition if
all of the following events occur: <ul><li>A activation group ends.</li>
<li>An implicit rollback operation is performed for the activation-group-level
commitment definition.</li>
<li>At least one successful commit operation has been performed for that commitment
definition.</li>
</ul>
<p>If the last successful commit operation did not specify a commit identification,
then the notify object is not updated. An implicit rollback operation is performed
for an activation-group-level commitment definition if the activation group
is ending abnormally or errors occurred when closing the files that were opened
under commitment control and that were scoped to that activation group. For
more information about scoping database files to activation groups and how
activation groups can be ended, see the reference book for the ILE language
that you are using.</p>
</li>
<li>If uncommitted changes exist when a job ends normally and at least one
successful commit operation has been performed, the commit identification
of the last successful commit operation is placed in the notify object and
the uncommitted changes are rolled back. If the last successful commit operation
did not specify a commit identification, then the notify object is not updated.
This notify object processing is performed for each commitment definition
that was active for the job when the job ended.</li>
<li>If uncommitted changes exist when the ENDCMTCTL command is run, the notify
object is updated only if the last successful commit operation specified a
commit identification: <ul><li>For a batch job, the uncommitted changes are rolled back and the commit
identification of the last successful commit operation is placed in the notify
object.</li>
<li>For an interactive job, if the response to inquiry message CPA8350 is
to rollback the changes, the uncommitted changes are rolled back and the commit
identification of the last successful commit operation is placed in the notify
object.</li>
<li>For an interactive job, if the response to inquiry message CPA8350 is
to commit the changes, the system prompts for a commit identification to use
and the changes are committed. The commit identification that is entered on
the prompt display is placed in the notify object.</li>
<li>For an interactive job, if the response to inquiry message CPA8350 is
to cancel the ENDCMTCTL request, the pending changes remain and the notify
object is not updated.</li>
</ul>
</li>
</ul>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzakjsysteminit.htm" title="The system can end commitment control, or perform an implicit commit or rollback operation. Sometimes the system-initiated end of commitment control is normal. Other times, commitment control ends with an abnormal system or job end.">System-initiated end of commitment control</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="rzakjendcommit.htm" title="You can find what prerequisites are necessary to end commitment control and how to end commitment control in this topic.">End commitment control</a></div>
<div><a href="rzakjactvgrpend.htm" title="The system automatically ends an activation-group-level commitment definition when an activation group ends.">Commitment control during activation group end</a></div>
<div><a href="rzakjrtstepend.htm" title="The system ends all commitment definitions for a job when a routing step is normally ended.">Commitment control during normal routing step end</a></div>
<div><a href="rzakjabmnlend.htm" title="This topic applies only to commitment definitions with job-scoped locks.">Commitment control during abnormal system or job end</a></div>
<div><a href="rzakjresourcetypes.htm" title="The table in this topic lists the different types of committable resources.">Types of committable resources</a></div>
</div>
</div>
</body>
</html>