ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzaiu_5.4.0.1/rzaiurzaiu319.htm

178 lines
12 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="reference" />
<meta name="DC.Title" content="Save-while-active object locking rules" />
<meta name="DC.Relation" scheme="URI" content="rzaiuswaconsid.htm" />
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu320.htm" />
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu321.htm" />
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu314.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="rzaiu319" />
<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>Save-while-active object locking rules</title>
</head>
<body id="rzaiu319"><a name="rzaiu319"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Save-while-active object locking rules</h1>
<div><div class="section"><p>The object locking rules that the server uses for save-while-active
requests are less restrictive than the rules it uses for other save operations.
These object locking rules allow users to perform update operations and use
most object-level commands after the server performs checkpoint processing.
Generally, the server keeps a shared, no update (*SHRNUP) lock on the objects
through the checkpoint processing. After the establishes checkpoints, the
server unlocks most of the objects. Other objects remain allocated with a
shared for read (*SHRRD) lock.</p>
</div>
<div class="section"><div class="p">The following table shows the locks a normal save operation holds,
by a save-while-active operation during checkpoint processing, and by a save-while-active
operation after checkpoint processing is complete.
<div class="tablenoborder"><a name="rzaiu319__savlock"><!-- --></a><table cellpadding="4" cellspacing="0" summary="" id="rzaiu319__savlock" width="100%" frame="hsides" border="0" rules="none"><caption>Table 1. Lock Type Needed for Save Operation</caption><thead align="left"><tr><th valign="top" width="39.963833634719705%" id="d0e29">&nbsp;</th>
<th valign="top" width="20.07233273056058%" id="d0e30">&nbsp;</th>
<th colspan="2" align="center" valign="bottom" id="d0e31">Save-While-Active</th>
</tr>
<tr><th align="left" valign="bottom" width="39.963833634719705%" id="d0e34">Object Type</th>
<th align="left" valign="bottom" width="20.07233273056058%" id="d0e36">SAVACT(*NO)</th>
<th align="left" valign="bottom" width="20.07233273056058%" id="d0e38">Establish Checkpoint</th>
<th align="left" valign="bottom" width="19.89150090415913%" id="d0e40">After Checkpoint</th>
</tr>
</thead>
<tbody><tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Most object types</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRNUP</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRNUP</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Configuration object</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">None</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 "><sup>1</sup></td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 "><sup>1</sup></td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Data area</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRNUP</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Database members</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRNUP</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Document</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRNUP</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Folder</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRRD</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Job queue</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRRD</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Journal</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRRD</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Journal receiver</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRRD</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">*SHRRD</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Library, when the library or an object in
it is being saved</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRUPD</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRUPD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">*SHRRD</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Output queue</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRRD</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRRD</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">None</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Product load</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRNUP</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">*SHRNUP</td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">*SHRRD</td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">System resource management object</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRNUP</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 "><sup>1</sup></td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 "><sup>1</sup></td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">User profiles, authorization lists, and authority
holders</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*SHRRD</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 "><sup>1</sup></td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 "><sup>1</sup></td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Object, if STG(*FREE) is specified</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">*EXCL<sup>2</sup></td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 "><sup>1</sup></td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 "><sup>1</sup></td>
</tr>
<tr><td align="left" valign="top" width="39.963833634719705%" headers="d0e29 d0e34 ">Objects in directories</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e30 d0e36 ">Share with readers</td>
<td align="left" valign="top" width="20.07233273056058%" headers="d0e31 d0e38 ">Share with readers<sup>3, 4</sup></td>
<td align="left" valign="top" width="19.89150090415913%" headers="d0e31 d0e40 ">Share with readers and writers<sup>3</sup></td>
</tr>
<tr><td colspan="4" align="left" valign="top" headers="d0e29 d0e30 d0e31 d0e34 d0e36 d0e38 d0e40 "> <dl><dt class="dlterm"><sup>1</sup></dt>
<dd>The save-while-active function is not available when saving these objects.</dd>
<dt class="dlterm"><sup>2</sup></dt>
<dd>Applies to document, file, journal receiver, module, program, SQL package,
and service program. Other types remain as listed previously.</dd>
<dt class="dlterm"><sup>3</sup></dt>
<dd>Objects in QNTC are not synchronized with SAVACT(*SYNC). Furthermore,
all locks for these file systems will be released before the checkpoint message
is sent.</dd>
<dt class="dlterm"><sup>4</sup></dt>
<dd>Objects that are saved with SAVACTOPT(*ALWCKPWRT) and have the QP0L_ATTR_ALWCKPWRT
system attribute set, have an implied <em>share with readers and writers</em> lock.</dd>
</dl>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="section"><p>These locking rules pertain to object-level locks and not database
record-level locks. The locking rules allow the opening and closing of database
file members and any record-level I/O operations to database file members
during any phase of the save-while-active operation.</p>
</div>
</div>
<div>
<ul class="ullinks">
<li class="ulchildlink"><strong><a href="rzaiurzaiu320.htm">Object locking: During save-while-active checkpoint processing</a></strong><br />
</li>
<li class="ulchildlink"><strong><a href="rzaiurzaiu321.htm">Object locking: After save-while-active checkpoint processing</a></strong><br />
</li>
</ul>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzaiuswaconsid.htm">Considerations and restrictions for the save-while-active function</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="rzaiurzaiu314.htm">Save-while-active restrictions</a></div>
</div>
</div>
</body>
</html>