137 lines
8.7 KiB
HTML
137 lines
8.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="Commit notify object" />
|
||
|
<meta name="abstract" content="A notify object is a message queue, data area, or database file that contains information identifying the last successful transaction completed for a particular commitment definition if that commitment definition did not end normally." />
|
||
|
<meta name="description" content="A notify object is a message queue, data area, or database file that contains information identifying the last successful transaction completed for a particular commitment definition if that commitment definition did not end normally." />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzakjstartcommit.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzakjcommitbatch.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzakjusenotify.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="rzakjnotify" />
|
||
|
<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>Commit notify object</title>
|
||
|
</head>
|
||
|
<body id="rzakjnotify"><a name="rzakjnotify"><!-- --></a>
|
||
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
||
|
<h1 class="topictitle1">Commit notify object</h1>
|
||
|
<div><p>A <dfn class="term">notify object</dfn> is a message queue, data area, or
|
||
|
database file that contains information identifying the last successful transaction
|
||
|
completed for a particular commitment definition if that commitment definition
|
||
|
did not end normally.</p>
|
||
|
<p>The information used to identify the last successful transaction for a
|
||
|
commitment definition is given by the <dfn class="term">commit identification</dfn> that
|
||
|
associates a commit operation with a specific set of committable resource
|
||
|
changes.</p>
|
||
|
<p>The commit identification of the last successful transaction for a commitment
|
||
|
definition is placed in the notify object only if the commitment definition
|
||
|
does not end normally. This information can be used to help determine where
|
||
|
processing for an application ended so that the application can be started
|
||
|
again.</p>
|
||
|
<p>For independent disk pools, the notify object must reside on the same independent
|
||
|
disk pool or independent disk pool group as the commitment definition. If
|
||
|
you move the commitment definition to another independent disk pool or independent
|
||
|
disk pool group, the notify object must also reside on that other independent
|
||
|
disk pool or independent disk pool group. The notify object on the other independent
|
||
|
disk pool or independent disk pool group is updated if the commitment definition
|
||
|
ends abnormally. If the notify object is not found on the other independent
|
||
|
disk pool or independent disk pool group, the update fails with message CPF8358.</p>
|
||
|
<p>If journaled resources participate in the current transaction and a commit
|
||
|
operation is performed with a commit identification, the commit identification
|
||
|
is placed in the commit journal entry (journal code and entry type of C CM)
|
||
|
that identifies that particular transaction as being committed. A commit journal
|
||
|
entry containing the commit identification is sent to each journal associated
|
||
|
with resources that participated in the transaction.</p>
|
||
|
<p>The following table shows how you specify the commit identification and
|
||
|
its maximum size. If the commit identification exceeds its maximum size, it
|
||
|
is truncated when it is written to the notify object.</p>
|
||
|
|
||
|
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th valign="top" id="d0e41">Language</th>
|
||
|
<th valign="top" id="d0e43">Operation</th>
|
||
|
<th valign="top" id="d0e45">Maximum characters in commit identification</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody><tr><td valign="top" headers="d0e41 ">CL</td>
|
||
|
<td valign="top" headers="d0e43 ">COMMIT command</td>
|
||
|
<td valign="top" headers="d0e45 ">3000 <sup>1</sup></td>
|
||
|
</tr>
|
||
|
<tr><td valign="top" headers="d0e41 ">ILE RPG*</td>
|
||
|
<td valign="top" headers="d0e43 ">COMIT operation code</td>
|
||
|
<td valign="top" headers="d0e45 ">4000 <sup>1</sup></td>
|
||
|
</tr>
|
||
|
<tr><td valign="top" headers="d0e41 ">PLI.</td>
|
||
|
<td valign="top" headers="d0e43 ">PLICOMMIT subroutine</td>
|
||
|
<td valign="top" headers="d0e45 ">4000 <sup>1</sup></td>
|
||
|
</tr>
|
||
|
<tr><td valign="top" headers="d0e41 ">ILE C*</td>
|
||
|
<td valign="top" headers="d0e43 ">_Rcommit function</td>
|
||
|
<td valign="top" headers="d0e45 ">4000 <sup>1</sup></td>
|
||
|
</tr>
|
||
|
<tr><td valign="top" headers="d0e41 ">ILE COBOL*</td>
|
||
|
<td valign="top" headers="d0e43 ">COMMIT verb</td>
|
||
|
<td valign="top" headers="d0e45 ">Not supported</td>
|
||
|
</tr>
|
||
|
<tr><td valign="top" headers="d0e41 ">SQL</td>
|
||
|
<td valign="top" headers="d0e43 ">COMMIT statement</td>
|
||
|
<td valign="top" headers="d0e45 ">Not supported</td>
|
||
|
</tr>
|
||
|
<tr><td colspan="3" valign="top" headers="d0e41 d0e43 d0e45 "><div class="note"><span class="notetitle">Note:</span> <sup>1</sup>If the notify object
|
||
|
is a data area, the maximum size is 2000 characters.</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
</div>
|
||
|
<p>When a notify object is updated with the commit identification, it is updated
|
||
|
as follows:</p>
|
||
|
<dl><dt class="dlterm">Database file</dt>
|
||
|
<dd>If a database file is used as the notify object, the commit identification
|
||
|
is added to the end of the file. Any existing records will be left in the
|
||
|
file. Because several users or jobs can be changing records at the same time,
|
||
|
each commit identification in the file contains unique information to associate
|
||
|
the data with the job and commitment definition that failed. The file that
|
||
|
serves can be journaled</dd>
|
||
|
<dt class="dlterm">Data area</dt>
|
||
|
<dd>If a data area is used as the notify object, the entire content of the
|
||
|
data area is replaced when the commit identification is placed in the data
|
||
|
area. If more than one user or job is using the same program, only the commit
|
||
|
identification from the last commitment definition that did not end normally
|
||
|
will be in the data area. Consequently, a single data area notify object might
|
||
|
not produce the correct information for starting the application programs
|
||
|
again. To solve this problem, use a separate data area for each commitment
|
||
|
definition for each workstation user or job.</dd>
|
||
|
<dt class="dlterm">Message queue</dt>
|
||
|
<dd>If a message queue is used as a notify object, message CPI8399 is sent
|
||
|
to the message queue. The commit identification is placed in the second-level
|
||
|
text for message CPI8399. As with using a database file for the notify object,
|
||
|
the contents of each commit identification uniquely identify a particular
|
||
|
commitment definition for a job so that an application program can be started
|
||
|
again.</dd>
|
||
|
</dl>
|
||
|
</div>
|
||
|
<div>
|
||
|
<div class="familylinks">
|
||
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzakjstartcommit.htm" title="To start commitment control, use the Start Commitment Control (STRCMTCTL) Command.">Start commitment control</a></div>
|
||
|
</div>
|
||
|
<div class="relconcepts"><strong>Related concepts</strong><br />
|
||
|
<div><a href="rzakjcommitbatch.htm" title="Batch applications might or might not need commitment control. In some cases, a batch application can perform a single function of reading an input file and updating a master file. However, you can use commitment control for this type of application if it is important to start it again after an abnormal end.">Commitment control for batch applications</a></div>
|
||
|
<div><a href="rzakjusenotify.htm" title="When a program is started after an abnormal end, it can look for an entry in the notify object. If the entry exists, the program can start a transaction again. After the transaction has been started again, the notify object is cleared by the program to prevent it from starting the same transaction yet another time.">Example: Use a notify object to start an application</a></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|