Re: Vacuum now uses AccessShareLock for analyze - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Vacuum now uses AccessShareLock for analyze
Date
Msg-id 200005291754.NAA17962@candle.pha.pa.us
Whole thread Raw
In response to Re: Vacuum now uses AccessShareLock for analyze  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Vacuum now uses AccessShareLock for analyze  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
> > How separate do people want vacuum and analyze?  Analyze currently does
> > not record the number of tuples and pages, because vacuum does that.  Do
> > people want analyze as a separate command and in a separate file?
> 
> We definitely want a separate command that can invoke just the analyze
> part.  I'd guess something like "ANALYZE [ VERBOSE ] optional-table-name
> (optional-list-of-columns)" pretty much like VACUUM.

OK.

> 
> I would be inclined to move the code out to a new file, just because
> vacuum.c is so darn big, but that's purely a code-beautification issue.

Done.

> 
> On the number of tuples/pages issue, I'd suggest removing that function
> from plain vacuum and make the analyze part do it instead.  It's always
> made me uncomfortable that vacuum needs to update system relations while
> it's holding an exclusive lock on the table-being-vacuumed (which might
> be another system catalog, or even pg_class itself).  It works, more or
> less, but that update-tuple-in-place code is awfully ugly and
> fragile-looking.  I'm also worried that there could be deadlock
> scenarios between concurrent vacuums (eg, one guy working on pg_class,
> another on pg_statistic, both need to get in and update the other guy's
> table.  Oops.  That particular problem should be gone with your changes,
> but maybe there are still problems just from the need to update
> pg_class).

How do I find the number of pages from heapscan?  Can that number just
be computed from the file size.  I can get the block number of the last
entry in the scan, but that doesn't show me expired rows at the end.

--  Bruce Momjian                        |  http://www.op.net/~candle pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Re: Additional system indexes
Next
From: Tom Lane
Date:
Subject: Re: Configuration and build clean-up