ibm-information-center/dist/eclipse/plugins/i5OS.ic.ddp_5.4.0.1/rbal1blocksummary.htm

104 lines
5.9 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="reference" />
<meta name="DC.Title" content="Summarization of DRDA blocking rules" />
<meta name="DC.Relation" scheme="URI" content="rbal1facblk.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rbal1blocksummary" />
<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>Summarization of DRDA blocking rules</title>
</head>
<body id="rbal1blocksummary"><a name="rbal1blocksummary"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Summarization of DRDA<sup>®</sup> blocking rules</h1>
<div><div class="section"><p>In summary, what these rules (including the notes) say is that
in the absence of certain special or unusual conditions, blocking will occur
in both of the following cases:</p>
<ul><li>It will occur if the cursor is read-only (see note 3) and if: <ul><li>Either the application requester or application server is a non-<span class="keyword">DB2 Universal Database™ for iSeries™</span>.</li>
<li>Both the application requester and application server are <span class="keyword">DB2 Universal Database for iSeries</span> and
ALWBLK(*ALLREAD) is specified and COMMIT(*ALL) is <strong>not</strong> specified.</li>
</ul>
</li>
<li>It will occur if COMMIT(*ALL) was not specified and all of the following
conditions are also true: <ul><li>There is no FOR UPDATE OF clause in the SELECT, and</li>
<li>There are no UPDATE or DELETE WHERE CURRENT OF statements against the
cursor in the program, and</li>
<li>Either the program does not contain dynamic SQL statements or a precompile/bind
option was used to request limited-block protocol (/K=ALL with <span>DB2
Universal Database™ for Linux<sup>®</sup>, UNIX<sup>®</sup> and Windows<sup>®</sup></span>, ALWBLK(*ALLREAD) with DB2<sup>®</sup> UDB
for iSeries,
CURRENTDATA(NO) with DB2 Universal Database for z/OS<sup>®</sup>, SBLOCK
with DB2
Universal Database for VM). </li>
</ul>
</li>
</ul>
</div>
<div class="section"> <div class="note"><span class="notetitle">Notes:</span> <ol><li>A cursor is updatable if it is not read-only (see note 3), and one of
the following is true: <ul><li>The select statement contained the FOR UPDATE OF clause, or</li>
<li>There exists in the program an UPDATE or DELETE WHERE CURRENT OF against
the cursor.</li>
</ul>
</li>
<li>A cursor is potentially updatable if it is not read-only (see note 3),
and if the program includes an EXECUTE or EXECUTE IMMEDIATE statement (or
when connected to a non-<span class="keyword">iSeries server</span>,
any dynamic statement), and a precompile or bind option is used that caused
the package default value to be single-row protocol. <ul><li>For <span class="keyword">DB2 Universal Database for iSeries</span>, this is
the ALWBLK(*READ) precompile option (the default).</li>
<li>For DB2,
this is CURRENTDATA(YES) on BIND PACKAGE (the default).</li>
<li>For DB2
Universal Database for VM, this is the SBLOCK keyword on SQLPREP.</li>
<li>For DB2 for OS/2<sup>®</sup> (DB2/2),
this is /K=UNAMBIG on SQLPREP or SQLBIND (the default).</li>
</ul>
</li>
<li>A cursor is read-only if one or more of the following conditions are true:
<ul><li>The DECLARE CURSOR statement specified an ORDER BY clause but did not
specify a FOR UPDATE OF clause.</li>
<li>The DECLARE CURSOR statement specified a FOR FETCH ONLY clause.</li>
<li>The DECLARE CURSOR statement specified the SCROLL keyword without DYNAMIC
(<span class="keyword">i5/OS™</span> only).</li>
<li>One or more of the following conditions are true for the cursor or a view
or logical file referenced in the outer subselect to which the cursor refers:
<ul><li>The outer subselect contains a DISTINCT keyword, GROUP BY clause, HAVING
clause, or a column function in the outer subselect.</li>
<li>The select contains a join function.</li>
<li>The select contains a UNION operator.</li>
<li>The select contains a subquery that refers to the same table as the table
of the outer-most subselect.</li>
<li>The select contains a complex logical file that had to be copied to a
temporary file.</li>
<li>All of the selected columns are expressions, scalar functions, or constants.</li>
<li>All of the columns of a referenced logical file are input only (<span class="keyword">i5/OS</span> only).</li>
</ul>
</li>
</ul>
</li>
</ol>
</div>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rbal1facblk.htm" title="A very important performance factor is whether blocking occurs when data is transferred between the application requester (AR) and the application server (AS). A group of rows transmitted as a block of data requires much less communications overhead than the same data sent one row at a time.">Factors that affect blocking for DRDA</a></div>
</div>
</div>
</body>
</html>