Re: TRAP: FailedAssertion("!((itemid)->lp_flags & 0x01)",

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: "Jim C(dot) Nasby" <jnasby(at)pervasive(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Gavin Sherry <swm(at)linuxworld(dot)com(dot)au>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: TRAP: FailedAssertion("!((itemid)->lp_flags & 0x01)",
Date: 2005-10-28 20:47:09
Message-ID: 20051028204708.GA29523@surnet.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Jim C. Nasby wrote:
> Here's another core... (pid 805 for reference)

All of them have in common that the slotno being passed ($3 below) is in
SLRU_PAGE_READ_IN_PROGRESS state ... could it be a problem with lock
reordering? Maybe somebody is trying to read in a page, and somebody
else steals the buffer from under them. Not sure how likely is that.

BTW what's the relationship with the other assertion failure (the one in
the subject)?

> #3 0x000000000047365f in SimpleLruReadPage (ctl=0x7d9f40, pageno=169039, xid=0) at slru.c:307
> 307 Assert(shared->page_number[slotno] == pageno &&
>
> $1 = {ControlLock = SubtransControlLock, page_buffer = {0x2a98298380 "", 0x2a9829a380 "",
> 0x2a9829c380 "", 0x2a9829e380 "", 0x2a982a0380 "", 0x2a982a2380 "", 0x2a982a4380 "",
> 0x2a982a6380 ""}, page_status = {SLRU_PAGE_DIRTY, SLRU_PAGE_CLEAN,
> SLRU_PAGE_READ_IN_PROGRESS, SLRU_PAGE_CLEAN, SLRU_PAGE_CLEAN, SLRU_PAGE_READ_IN_PROGRESS,
> SLRU_PAGE_CLEAN, SLRU_PAGE_CLEAN}, page_number = {169452, 169351, 169163, 169238, 169236,
> 169328, 169233, 169239}, page_lru_count = {17108, 4, 1, 3, 5, 0, 6, 2}, buffer_locks = {
> 24, 25, 26, 27, 28, 29, 30, 31}, latest_page_number = 169452}
> $2 = 169039
> $3 = 2
> $4 = 1 '\001'
> $5 = 0

--
Alvaro Herrera Valdivia, Chile ICBM: S 39º 49' 17.7", W 73º 14' 26.8"
"Nadie esta tan esclavizado como el que se cree libre no siendolo" (Goethe)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2005-10-28 20:58:56 Re: TRAP: FailedAssertion("!((itemid)->lp_flags & 0x01)",
Previous Message Rod Taylor 2005-10-28 20:36:26 Re: enums