Re: [HACKERS] alter_table.sql

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: prlw1(at)cam(dot)ac(dot)uk
Cc: pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: [HACKERS] alter_table.sql
Date: 2000-03-08 19:29:36
Message-ID: 26433.952543776@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Patrick Welche <prlw1(at)newn(dot)cam(dot)ac(dot)uk> writes:
> Story so far: I have a table called "found". vacuum() in
> src/backend/commands/vacuum.c gets called with vacrel="found". During
> vc_init() at line 177, vacrel is cleared (="").

What the ???

Somebody broke this code badly since I last looked at it. The vacuum
initialization sequence has been rearranged so that it does not work:
there is a CommitTransactionCommand call that occurs before the vacuum
parameters have been copied into safe-across-transactions storage.
We are reading already-freed memory at line 186.

Will fix ASAP.

BTW, this also demonstrates that the CLOBBER_FREED_MEMORY testing hack
I put into aset.c needs more work; it ought to clobber implicitly-freed
memory as well as explicitly pfree'd blocks. Had I done that I would
probably have seen a regression test failure from this bug. Will add
some more clobbering code and see what else breaks ;-)

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2000-03-08 19:33:44 Re: [HACKERS] regex (from TODO)
Previous Message Patrick Welche 2000-03-08 18:58:28 Re: [HACKERS] alter_table.sql