| From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
|---|---|
| To: | Qingqing Zhou <zhouqq(at)cs(dot)toronto(dot)edu> |
| Cc: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: Race conditions, race conditions! |
| Date: | 2005-08-12 21:41:06 |
| Message-ID: | 200508122141.j7CLf6R27676@candle.pha.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Patch applied. Thanks.
---------------------------------------------------------------------------
Qingqing Zhou wrote:
>
> "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes
> >
> > WARNING: relation "t1" page 196 is uninitialized --- fixing
> > TRAP: FailedAssertion("!((((PageHeader) ((PageHeader)
> pageHeader))->pd_upper == 0))", File: "hio.c", Line: 263)
> > LOG: server process (PID 11296) was terminated by signal 6
> >
>
> Inspired by this, can we put an asseration here:
>
> ---
> /*
> * lookup the buffer. IO_IN_PROGRESS is set if the requested
> * block is not currently in memory.
> */
> bufHdr = BufferAlloc(reln, blockNum, &found);
>
> + /* we are guaranted that nobody else has touched this will-be-new block */
> + Assert(!(found && isExtend));
>
> if (found)
> BufferHitCount++;
> ---
>
> BufferAlloc() consists of two parts, one is looking for the blockNum, the
> other is allocating a free buffer. If the asseration is good, then for
> "isExtend", we just need the second part. This could bring marginal
> performance benefits.
>
>
> Regards,
> Qingqing
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
> http://archives.postgresql.org
>
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
| Attachment | Content-Type | Size |
|---|---|---|
| unknown_filename | text/plain | 673 bytes |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bruce Momjian | 2005-08-12 21:42:57 | Re: [HACKERS] PL/Perl list value return causes segfault |
| Previous Message | Alvaro Herrera | 2005-08-12 21:39:28 | DROP OWNED BY |