Subject Savepoints
Author Geoff Worboys
Hi All,

I have a long running stored procedure (goes through a database
to clean out records no longer needed). After recent changes I
started getting "too many savepoints" errors, so I am now going
to split the procedure into a series so that I can do a hard
commit between parts of the process (and so it is more obvious
which parts are having difficulties).

It is a simple procedure that does not use any WHEN exception
catching - just brute force checking of many thousands of
rows. In several places it uses embedded for-select loops.

What I would like to know is...

* Is there any way of identifying where Firebird will apply
its automatic internal savepoints?

* Is there a way to estimate how many savepoints are available
to a database?

* Could the problem be the volume of changes within a given
savepoint, rather than actually being the number of savepoints
created by Firebird?


I would like to know this so that in the future I can look at
a procedure and guess whether it may to get into trouble.

TIA

--
Geoff Worboys
Telesis Computing