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

110 lines
9.6 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="Application does not complete in the expected time" />
<meta name="abstract" content="If the request takes longer than expected to complete, the first place to check is at the application requester (AR)." />
<meta name="description" content="If the request takes longer than expected to complete, the first place to check is at the application requester (AR)." />
<meta name="DC.subject" content="problem handling, wait, loop, performance problems, application requester, application requester, problem diagnosis, wait problem, loop problem, distributed relational database problems, waiting, looping, performance, at the application requester, wait, loop, performance problems, application server, problem diagnosis, application server, performance problems, system performance, applicator requester problem, distributed relational database problems, at the application server, performance, delays on connect" />
<meta name="keywords" content="problem handling, wait, loop, performance problems, application requester, application requester, problem diagnosis, wait problem, loop problem, distributed relational database problems, waiting, looping, performance, at the application requester, wait, loop, performance problems, application server, problem diagnosis, application server, performance problems, system performance, applicator requester problem, distributed relational database problems, at the application server, performance, delays on connect" />
<meta name="DC.Relation" scheme="URI" content="rbal1prbiso.htm" />
<meta name="DC.Relation" scheme="URI" content="rbal1locatej.htm" />
<meta name="DC.Relation" scheme="URI" content="rbal1workjb.htm" />
<meta name="DC.Relation" scheme="URI" content="rbal1wrkusrj.htm" />
<meta name="DC.Relation" scheme="URI" content="rbal1act.htm" />
<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="rbal1appnotcomp" />
<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>Application does not complete in the expected time</title>
</head>
<body id="rbal1appnotcomp"><a name="rbal1appnotcomp"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Application does not complete in the expected time</h1>
<div><p>If the request takes longer than expected to complete, the first
place to check is at the application requester (AR).</p>
<div class="section"><p>Check the job log for message SQL7969, which indicates that a
connection to a relational database is complete. This tells you the application
is a distributed relational database application. Check the AR for a loop
by using the <span class="cmdname">Work with Job (WRKJOB)</span> command to display
the program stack, and check the program stack to determine whether the system
is looping. If the application itself is looping, contact the application
programmer for resolution. If you see QAPDEQUE and QCNSRCV on the stack, the
AR is waiting for the application server (AS). If the system is not in a communications
wait state, use problem analysis procedures to show whether there is a performance
problem or a wait state somewhere else.</p>
</div>
<div class="example"> <div class="fignone" id="rbal1appnotcomp__rbal1arwlp"><a name="rbal1appnotcomp__rbal1arwlp"><!-- --></a><span class="figcap">Figure 1. Resolve wait, loop, or performance problems
on the application requester</span><br /><img src="rv2w732.gif" alt="Flow chart for resolving wait, loop, and performance problems on the AR." /><br /></div>
</div>
<div class="section"><p>You can find the AR job name by looking at the job log on the
AS. When
you need to check the AS job, use the <span class="cmdname">Work with Job (WRKJOB)</span>, <span class="cmdname">Work
with Active Jobs (WRKACTJOB)</span>, or <span class="cmdname">Work with User Jobs (WRKUSRJOB)</span> command
to locate the job on the AS.</p>
</div>
<div class="section"><p>From one of these job displays, look at the program stack to see
if the AS is looping. If it is looping, use problem analysis to handle the
problem. If it is not looping, check the program stack for WAIT with QCNTRCV,
which means the AS is waiting for the AR. If both servers are in this communications
wait state, there is a problem with your network. If the AS is not in a wait
state, there is a performance issue that might have to be addressed.</p>
</div>
<div class="section"><p>Two common sources of slow query performance are: </p>
<ul><li>An accessed table does not have an index. If this is the case, create
an index using an appropriate field or fields as the key.</li>
<li>The rows returned on a query request are not blocked. Whether the rows
are blocked can cause a significant difference in query performance. It is
important to understand the factors that affect blocking, and tune the application
to take advantage of it.</li>
</ul>
</div>
<div class="section"><p>The first time you connect to DB2 Universal Database™ for iSeries™ from
a workstation using a product such as DB2<sup>®</sup> JDBC Universal Driver or DB2
Universal Database™ for Linux<sup>®</sup>, UNIX<sup>®</sup> and Windows<sup>®</sup>, if you have not already created
the SQL packages for the product in DB2 UDB for iSeries, the packages will be created
automatically, and the NULLID collection might need to be created automatically
as well. This will result in a somewhat lengthy delay in getting a response
back from the server for one of the first SQL statements issued after the
initial connection. </p>
</div>
<div class="section"><p>A long delay will occur if the server to which you are trying
to connect over TCP/IP is not available. A several minute timeout delay will
precede the message <samp class="codeph">A remote host did not respond within the timeout
period.</samp> An incorrect IP address in the RDB directory will cause this
behavior as well.</p>
</div>
<div class="example"> <div class="fignone" id="rbal1appnotcomp__rbal1aswlp"><a name="rbal1appnotcomp__rbal1aswlp"><!-- --></a><span class="figcap">Figure 2. Resolve wait, loop, or performance problems
on the application server</span><br /><img src="rv2w733.gif" alt="Flow chart for resolving wait, loop, or performance problems on the AS." /><br /></div>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rbal1prbiso.htm" title="A problem you encounter when running a distributed relational database application can exhibit two general symptoms: incorrect output or the application does not complete in the expected time.">Isolate distributed relational database problems</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><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 class="reltasks"><strong>Related tasks</strong><br />
<div><a href="rbal1locatej.htm" title="When you are looking for information about a distributed relational database job on an application requester (AR) and you know the user profile that is used, you can find that job by using the Work with User Jobs (WRKUSRJOB) command.">Locate distributed relational database jobs</a></div>
<div><a href="rbal1workjb.htm" title="The Work with Job (WRKJOB) command presents the Work with Job menu. This menu allows you to select options to work with or to change information related to a specified job. Enter the command without any parameters to get information about the job you are currently using.">Work with jobs in a distributed relational database</a></div>
<div><a href="rbal1wrkusrj.htm" title="If you know the user profile (user name) being used by a job, you can use the Work with User Jobs (WRKUSRJOB) command to display or change job information. Enter the command without any parameters to get a list of the jobs in the server with your user profile.">Work with user jobs in a distributed relational database</a></div>
<div><a href="rbal1act.htm" title="Use the Work with Active Jobs (WRKACTJOB) command if you want to monitor the jobs running for several users or if you are looking for a job and you do not know the job name or the user ID.">Work with active jobs in a distributed relational database</a></div>
</div>
</div>
</body>
</html>