Re: segmentation fault when cassert enabled

From: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
To: tgl(at)sss(dot)pgh(dot)pa(dot)us
Cc: jgdr(at)dalibo(dot)com, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: segmentation fault when cassert enabled
Date: 2019-10-28 07:47:02
Message-ID: 20191028.164702.1704313690000434195.horikyota.ntt@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

At Fri, 25 Oct 2019 12:28:38 -0400, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote in
> Jehan-Guillaume de Rorthais <jgdr(at)dalibo(dot)com> writes:
> > When investigating for the bug reported in thread "logical replication -
> > negative bitmapset member not allowed", I found a way to seg fault postgresql
> > only when cassert is enabled.
> > ...
> > I hadn't time to digg further yet. However, I don't understand why this crash
> > is triggered when cassert is enabled.
>
> Most likely, it's not so much assertions that provoke the crash as
> CLOBBER_FREED_MEMORY, ie the actual problem here is use of already-freed
> memory.

Agreed.

By the way I didn't get a crash by Jehan's script with the
--enable-cassert build of the master HEAD of a few days ago.

FWIW I sometimes got SEGVish crashes or mysterious misbehavor when
some structs were changed and I didn't do "make clean". Rarely I
needed "make distclean". (Yeah, I didn't ususally turn on
--enable-depend..)

regards.

--
Kyotaro Horiguchi
NTT Open Source Software Center

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fujii Masao 2019-10-28 07:53:23 Re: pgbench - extend initialization phase control
Previous Message 曾文旌 (义从) 2019-10-28 07:15:18 Re: [Proposal] Global temporary tables