Subject Re: [firebird-support] Re: database ballooning problem
Author Helen Borrie
At 05:43 AM 6/09/2005 +0000, you wrote:

> > Duncan was referring to IBO's Savepoint method, not the SQL SAVEPOINT
> > statement. This is a client-side method (that predates Firebird's
> > SAVEPOINT syntax by about 6 years), that allows you to perform a
> > CommitRetaining on all work so far posted for a transaction. So
>IBO's
> > Savepoint method indeed creates one record version for each record it
> > updates; and it also enables the user to go back and do more updates
>on
> > these records, thus propagating more record versions that won't get
> > garbage-collected.
> >
>
>Ah, makes sense in that context then. Sounds to me like something to
>avoid (especially considering real savepoints are available in Firebird
>1.5+).

Well, true, they are; but the SQL Savepoint is nothing like the IBO/Delphi
Savepoint method and they are unrelated.

This CommitRetaining thing is *the* prevailing source of database hygiene
problems among Delphi applications. SQL SAVEPOINT won't solve that
problem. I see SQL SAVEPOINT rather as allowing developers in any language
environment to design the logic of tasks more intelligently. I see no way
that is going to mitigate the problem that Duncan describes without the
serious recoding that he seems to eschew..

./heLen



>Adam
>
>
>
>
>
>
>
>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
>Visit http://firebird.sourceforge.net and click the Resources item
>on the main (top) menu. Try Knowledgebase and FAQ links !
>
>Also search the knowledgebases at http://www.ibphoenix.com
>
>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>
>Yahoo! Groups Links
>
>
>
>