Breaking out of RecordLock...

Robert Brenstein rjb at rz.uni-potsdam.de
Wed Feb 18 17:33:59 CST 2004


>That's exactly what we've been doing, which is why we find it odd that a
>cursor might be left "open"... we've been very careful to create and
>remove cursors in the same handler. Our program is quite large, though,
>with dozens (if not hundreds) of SQL calls, so tracking this down will
>be hard.

Have you tried writing a scavenger script? A handler that goes 
through all objects of a selected stack, fetches their script, and 
finds all valentina calls, reporting them in a sequence (or reporting 
only selected ones)?

I used this approach not that long ago in my database server to find 
out all handlers with missing database flush. I found more instances 
than I anticipated :) The report included full object references, so 
it was easy to go and fix them.

Even for a large stack, this is faster than inspecting all scripts manually.

Another thing to check is whether you do error checking after each 
valentina call. May be you do have a close request but it has a typo 
or something. If the error is not detected, the cursor is left open. 
Similar scavenger script can report these as well (particularly easy 
if a central error handler is used).

Robert


More information about the Valentina mailing list