Subject Re: [firebird-support] Maintenance of temporary tables
Author Jerome Bouvattier
Hi Alan,

Thank for your help.

> From: Alan McDonald
> To: firebird-support@yahoogroups.com

> > I'm using a fake temporary table to hold lists of IDs. It has two fields
:
> > LISTID and ID.
> > The common scenario is that I insert records in this table at the
> > start of a
> > tansaction and delete them all when committing, so that the table always
> > "looks" empty.
> >
>
> Is there only one person sing this temp table? or one per user?

It's accessed by my middle tier with a connection pool. So one *db* user but
multiple connections. I don't expect the pool size going beyond 5 instances.

> How long does this transaction stay open?

30-500ms on average. 1 sec at most.

> > I expect to insert and delete at most 300000 rows a day (10
> > consecutive days
> > per month).
> >
> > What kind of issues should I expect and how should I prevent them ?
> >
> > Some ideas ...
> >
> > Should I issue a "Select count(*)" every once in a while during the day
to
> > take care of GC, or should I leave that up the nightly SWEEP ?
>
> oooooh, sweep every night eh? suck it in every night - blow it out every
> day... seems like a waste of time to me. Let your databse server manage
it's
> own space requirements, i'll use what it's created very efficiently.

How will space be reused if no GC ever happen ?
Also, if I let garbage growing and growing, isn't there a risk for a
connection to get "hit" one day by a big GC task ?
I always thought one should be careful with bulk deletes, that's why I'm
asking.

Regards.

--
Jerome