<html><head><META content="text/html; charset=us-ascii" http-equiv="Content-Type">



<meta content="text/html; charset=us-ascii" http-equiv=Content-Type>
<meta content="Microsoft Word 11 (filtered medium)" name=Generator>
<style>
<!--
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:Arial;
        color:windowtext;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
        {page:Section1;}
-->
</style>

</head><BODY>
<DIV>

<div class=Section1>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'>Hi all.<o:p></o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'>In prepareTuples(...) there is a try/catch block which
catches (SQLException).... It looks like:<o:p></o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New";color:#7F0055;font-weight:bold'>try</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'> {<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>.........</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New";color:#7F0055;font-weight:bold'>catch</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'> (SQLException e) {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>if</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> (<span style='background:silver'>stmt</span> == </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:#7F0055;font-weight:bold'>null</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'>) {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>throw</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> Util.<i><span style='font-style:italic'>newError</span></i>(e, </span></font><u><font color=blue face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>message</span></font></u><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'>);</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
} </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>else</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span style='background:silver'>stmt</span>.handle(e);</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New";color:#7F0055;font-weight:bold'>finally</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'> {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>if</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> (<span style='background:silver'>stmt</span> != </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:#7F0055;font-weight:bold'>null</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'>) {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span style='background:silver'>stmt</span>.close();</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'>This catch-block fails to re-throw the exception processed
by the stmt.handle() method. As a result, errors occurring during the execution
of this thread are unreported. No error is raised to calling code and undefined
activity subsequently happens.<o:p></o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'>This issue was identified in the 3.04 code base, but the
same error exists in the current 3.1 repository.<o:p></o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'>The code should read:<o:p></o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New";color:#7F0055;font-weight:bold'>try</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'> {<o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>.........</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New";color:#7F0055;font-weight:bold'>catch</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'> (SQLException e) {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>if</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> (<span style='background:silver'>stmt</span> == </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:#7F0055;font-weight:bold'>null</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'>) {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>throw</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> Util.<i><span style='font-style:italic'>newError</span></i>(e, </span></font><u><font color=blue face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>message</span></font></u><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'>);</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
} </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>else</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>throw</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> <span style='background:silver'>stmt</span>.handle(e);</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New";color:#7F0055;font-weight:bold'>finally</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'> {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight:
bold'>if</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";color:black'> (<span style='background:silver'>stmt</span> != </span></font><b><font color="#7f0055" face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:#7F0055;font-weight:bold'>null</span></font></b><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:
"Courier New";color:black'>) {</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span style='background:silver'>stmt</span>.close();</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
}</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;
font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal style='text-autospace:none'><font color=black face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New";
color:black'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size=2><span style='font-size:10.0pt;font-family:"Courier New"'><o:p></o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font face=Arial size=2><span style='font-size:10.0pt;
font-family:Arial'>Rolf<o:p></o:p></span></font></p>

</div>

</DIV>
<DIV>&nbsp;</DIV>
<DIV STYLE="FONT-SIZE: 9pt; FONT-FAMILY: Courier New">
<HR>

<DIV ALIGN="justify" STYLE="FONT-SIZE: 9pt; FONT-FAMILY: Courier New"><FONT FACE="Arial" SIZE="1">This email and any files transmitted with it are confidential and proprietary to Algorithmics Incorporated and its affiliates ("Algorithmics"). If received in error, use is prohibited. Please destroy, and notify sender. Sender does not waive confidentiality or privilege. Internet communications cannot be guaranteed to be timely, secure, error or virus-free. Algorithmics does not accept liability for any errors or omissions. Any commitment intended to bind Algorithmics must be reduced to writing and signed by an authorized signatory.</FONT></DIV>
<HR>

<DIV></DIV></DIV></body></html>