Re: BUG #15343: Segmentation fault using pg_dump with --exclude-tableif table contains identity column - Mailing list pgsql-bugs

From David Rowley
Subject Re: BUG #15343: Segmentation fault using pg_dump with --exclude-tableif table contains identity column
Date
Msg-id CAKJS1f_RzF8s5Osi2ae3fMMnBOv=zZSw51OJ1iPur=07d0Sw-w@mail.gmail.com
Whole thread Raw
In response to BUG #15343: Segmentation fault using pg_dump with --exclude-table iftable contains identity column  (PG Bug reporting form <noreply@postgresql.org>)
Responses Re: BUG #15343: Segmentation fault using pg_dump with--exclude-table if table contains identity column
List pgsql-bugs
> To reproduce:
> $ createdb foo
> $ psql foo -c "create table bar(i int generated by default as identity
> primary key);"
> $ pg_dump foo --exclude-table=bar
> Segmentation fault (core dumped)

This crashes during dumpSequence() when the owning_tab's attnames are
accessed. This array is NULL since we didn't populate it in
getTableAttrs due to the table being !interesting.

I think the fix depends exactly on what we want the behaviour to be
here.  Should dumpSequence() still dump out a CREATE SEQUENCE
statement for this, or should we just ignore the sequence?  I imagine
we should just ignore identity sequences when we're not going to dump
the table that owns them. It looks like that would require a small
modification in getOwnedSeqs().  Otherwise we'd need something like
the attached to still dump out the CREATE SEQUENCE.

-- 
 David Rowley                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Attachment

pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #15343: Segmentation fault using pg_dump with --exclude-table iftable contains identity column
Next
From: Alvaro Herrera
Date:
Subject: Re: BUG #15343: Segmentation fault using pg_dump with--exclude-table if table contains identity column