How do you catch a log suspend error in Sybase?


You have two issues.

One is the UNIX/Linux script does not detect errors correctly.

Secondly the transaction log is filling up frequently.

First the script needs to have the standard output AND the error output go to your log file. When you use the > it is using file descriptor 1. When you want to capture error output you need to use 2> for file descriptor 2. So the command would look like the following.

isql    > error.log    2> error.log

Better yet, use this.

isql    2>&1    > error.log

The previous command says to have file descriptor 2 go to file descriptor 1 which goes to a log file.

Now to detect errors, look for “Msg” which all Sybase errors have in front by using the grep command.






Secondly to resolve the transaction log space, you need to grow the size of the log which should be on its own device separate from data. Then you need to set the threshold to dump aka flush the completed transactions to a disk file automatically. You need to investigate the following commands to do this.

alter database, sp_helpthreshold, sp_addthreshold, sp_thresholdaction

Good SQL, good night.

Please leave a reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s