![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Hi newsgroup, today we are about to go crazy because of our sybase ase 11.4 on linux. What we try to do is to simply call a stored procedure. But this stored procedure does not return from execution as expected. After a long while it returns telling us that the transaction logbook is full and that there is no space left on device. We have seen different error numbers like 546, 1105, 7415. After we have dumped the transaction logs (dump trun DB_NAME with no_log) and increased its size we could see that the behaviour did not change. Somehow the stored procedure fills the transaction logs. But we do not know why! The database runs with the option are "trunc log on checkpoint". We have also increases procedure cache. But the strange behaviour remains... The tempdb-Database is twice as large as our main-database. When looking at the stored procedures source code, we cannot see any problems. All the SP does is to delete one data set in different tables. The source code looks like this: delete from tabel A where id=5 delete from tabel B where id=5 delete from table C where id=5 and so on. When manually deleting the data set from each table we run into trouble if a table has foreign key constraints or triggers. This delete-command returns if the transaction log is completely filled. By the way, the stored procedures have worked for a long long time without any problems. But only today... Any ideas what else we can analyse? What causes the stored procedure to completely fill the transaction log? Any help is apreciated. Thanks in advance, Roland |
#3
| |||
| |||
|
|
Have any of the databases on your server been made "read-only" or "dbo-use-only"? If so, does the procedure try to do anything with objects in such a database? I've seen similar behavior where a proc just kept trying to renormalize or recompile over and over again becuase of such settings. |
|
Another cause might be CR 275637, which was fixed in 12.0.0.6 and 12.5.0.2. "Occasionally, Adaptive Server will fail to compile a stored procedure that creates a table using the format <owner>.<table_name>. A "table already exists" error or 11060 error may be reported in more recent 12.0.x versions of Adaptive Server, whilst the compilation might endlessly loop thereby filling the log in older 12.0.x versions." |
#4
| |||
| |||
|
|
When manually deleting the data set from each table we run into trouble if a table has foreign key constraints or triggers. This delete-command returns if the transaction log is completely filled. By the way, the stored procedures have worked for a long long time without any problems. But only today... Any ideas what else we can analyse? |
#5
| |||
| |||
|
|
On 7 Sep 2004 15:43:34 -0700, Bret Halford <bret (AT) sybase (DOT) com> wrote: Hi Bret, thanks for your answer. Have any of the databases on your server been made "read-only" or "dbo-use-only"? If so, does the procedure try to do anything with objects in such a database? I've seen similar behavior where a proc just kept trying to renormalize or recompile over and over again becuase of such settings. I have checked our database. It has neither been made 'read-only' nor 'dbo-use-only'. Another cause might be CR 275637, which was fixed in 12.0.0.6 and 12.5.0.2. "Occasionally, Adaptive Server will fail to compile a stored procedure that creates a table using the format <owner>.<table_name>. A "table already exists" error or 11060 error may be reported in more recent 12.0.x versions of Adaptive Server, whilst the compilation might endlessly loop thereby filling the log in older 12.0.x versions." But as reported im my first posting, my stored procedure is nothing more than 5 sql-commands like delete from table A where id=5 delete from table B... Executing these commands works fine until a data set is to be deleted from a table with a foreign key constraint. In this case somehow the transaction log is filled until no more space is left. How can I find out why the SP fills the transaction log? Thanks for your answer! Roland |
#6
| |||
| |||
|
![]() |
| Thread Tools | |
| Display Modes | |
| |