Michael Peppler
Sybase Consulting
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
Sybase on Linux FAQ
Sybperl FAQ
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: ldusadev at kestrok dot com (Rich Bailey)
Subject: transaction log problems
Date: Dec 1 1997 8:11PM

Hi all:
I have a perl program that does 
$ref = $A->ct_sql("delete $database_name..BILLHIST where datediff(mm,
BILLING_DATE, getdate()) >= 14");)
Sometimes I get a transaction log problem, because the delete pulls too many
rows. The process hangs because the transaction log becomes suspended. The
log filled up I guess. 
I then added a callback to handle the server errors and waited for a
tranaction log message. 
ct_callback(CS_SERVERMSG_CB, "srv_cb");
When I saw one then I tried cancelling the delete with ct_cancel. However,
it never seemed to work. So I just decided to quit the program and print an
error to a log file.
It would be nice if I could have cancelled the delete then have the program
continue on. Does anyone have ideas on how to deal with transaction log
problems they can share. Would it be possible to figure out a way to make
sure the transaction log was large enough before I try the delete??
Thanks a lot for any ideas.