Guillaume Smet escribió:
> Alvaro,
>
> On 10/4/07, Alvaro Herrera <alvherre@commandprompt.com> wrote:
> > I came up with the following patch. What this does is cancel any
> > ANALYZE started by autovacuum, at the top of ALTER TABLE.
>
> It doesn't seem to work for me. I still have my ALTER TABLEs waiting:
> \_ postgres: postgres cityvox [local] ALTER TABLE waiting
> \_ postgres: autovacuum worker process cityvox
> \_ postgres: autovacuum worker process cityvox
> \_ postgres: autovacuum worker process cityvox
>
> I have a lot of NOTICE: cancelling auto-analyze lines in my log but
> it doesn't seem to change the overall behaviour (even if it's a bit
> better than before). With cost delay of 20:
> real 44m20.525s
> user 0m35.757s
> sys 0m2.985s
> compared to 51 minutes before applying your patch.
Hmm, it looks like the race condition Heikki mentioned is the culprit.
We need a way to stop future analyzes from starting. Back to the
drawing board ...
--
Alvaro Herrera http://www.PlanetPostgreSQL.org/
Criptografía: Poderosa técnica algorítmica de codificación que es
empleada en la creación de manuales de computadores.