Re: [PERFORM] 'Real' auto vacuum?

2005-08-31 Thread Brad Nicholson
Mindaugas Riauba wrote: When a row is orphaned it's added to a list of possibly available rows. When a new row is needed the list of possible rows is examined and the first one with a transaction id less then the lowest running transaction id is chosen to be the new row? These rows can be in a

Re: [PERFORM] 'Real' auto vacuum?

2005-08-30 Thread Mindaugas Riauba
> > When a row is orphaned it's added to a list of possibly available rows. > > When a new row is needed the list of possible rows is examined and the > > first one with a transaction id less then the lowest running transaction > > id is chosen to be the new row? These rows can be in a heap so it

Re: [PERFORM] 'Real' auto vacuum?

2005-08-30 Thread Ralph Mason
[EMAIL PROTECTED] wrote: But, yeah. It's probably not that easy, especially with really big databases. Where is this free list stored? How efficient is it to keep track of the lowest running transaction at all times? How does one synchronize access to this free list, to ensure that processes don

Re: [PERFORM] 'Real' auto vacuum?

2005-08-30 Thread Josh Berkus
Ralph, > When a row is orphaned it's added to a list of possibly available rows. > When a new row is needed the list of possible rows is examined and the > first one with a transaction id less then the lowest running transaction > id is chosen to be the new row? These rows can be in a heap so it'

Re: [PERFORM] 'Real' auto vacuum?

2005-08-30 Thread mark
On Wed, Aug 31, 2005 at 10:21:20AM +1200, Ralph Mason wrote: > This is a wild and crazy thought which I am sure is invalid for some > good reason. > > But why can't postgres just vacuum itself as it goes along? > > When a row is orphaned it's added to a list of possibly available rows. > When

[PERFORM] 'Real' auto vacuum?

2005-08-30 Thread Ralph Mason
This is a wild and crazy thought which I am sure is invalid for some good reason. But why can't postgres just vacuum itself as it goes along? When a row is orphaned it's added to a list of possibly available rows. When a new row is needed the list of possible rows is examined and the first o