<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7651.59">
<TITLE>Trolling for Wise Ideas</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P><FONT SIZE=2 FACE="Arial">We have a recurring problem, not an urgent one, that I'd like to see if anyone has Wise Ideas about.</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">We have an environment running under HP-Ux 10.2, Powerhouse 7.33.D3, C-ISAM (unsure of version, but it's the latest version that 7.33.D3 came with) and FORTRAN (ick!).</FONT></P>

<P><FONT SIZE=2 FACE="Arial">We have an Image/3000 emulator built by a contractor: it takes the Image calls and translates them into C-ISAM calls - we've had this since 1994 and it has been very reliable.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">This particular application has one large data file (2 million plus rows) which is heavily indexed: data file currently is about 650 K but the index is twice that size.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">We have a FORTRAN program that does batch updates to the data file, locking mode 1, around the entire transaction.&nbsp; This program<U> only</U> adds to the data file.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">We also have Powerhouse screens that allow users to do maintenance on the data file, which often means deleting records that were uploaded erroneously.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">The Powehouse screens use the default locking scheme &#8230; there is nothing explicitly written in the code or dictionary regarding locking.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">Periodically we come up with corrupted indexes on the main data file and have to use the bcheck utility to re-build the indexes.&nbsp; Sometimes this happens several times in a couple of months, or like this week, it will be almost a YEAR between occurrences.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">I had long thought that we must have the FORTRAN program and the maintenance screens tripping over each other.&nbsp; This past week, when the problem showed up I actually saw 2 users in the maintenance screens as well as one of the FORTRAN uploads taking place: one of the maintenance users actually received a message that the screen was waiting on locks.&nbsp; Then, the corrupted index showed up.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">The FORTRAN does lock, although it is a mode 1 lock, which allows other concurrent users.&nbsp; </FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">So, what I'm thinking is that our FORTRAN program's locks are not keeping the maintenance screens out, the maintenance screens are deleting entries (requireing notoriously slow index rebuilds in C-ISAM) and the two processes working against each other are resulting in messed-up indexes.&nbsp; Does this make sense?</FONT></P>

<P><FONT SIZE=2 FACE="Arial">Thanks,</FONT>

<BR><FONT SIZE=2 FACE="Arial">Guy L. Werry</FONT>

<BR><FONT SIZE=2 FACE="Arial">Senior Systems Analyst</FONT>

<BR><FONT SIZE=2 FACE="Arial">Hudson Bay Mining &amp; Smelting Co., Limited. </FONT>
</P>

The information in this e-mail and any attachments is confidential and may be subject to legal professional privilege. It is intended solely for the attention and use of the named addressee(s). If you are not the intended recipient, or person responsible for delivering this information to the intended recipient, please notify the sender immediately. Unless you are the intended recipient or his/her representative you are not authorised to, and must not, read, copy, distribute, use or retain this message or any part of it.
</BODY>
</HTML>