Thread: Bug in pg_dump 7.4
Part of dump file: CREATE DOMAIN doc_ident AS bigint NOT NULL DEFAULT nextval('doc.seq_doc_id'::text)CONSTRAINT cnst_chk_doc_id CHECK fn_chk_doc_id(VALUE); It should look like this: CREATE DOMAIN doc_ident AS bigint NOT NULL DEFAULT nextval('doc.seq_doc_id'::text)CONSTRAINT cnst_chk_doc_id CHECK ( fn_chk_doc_id(VALUE) ) ; I did not notice any similar error report on the list, so I believe that this is not fixed yet ? Regards !
> CREATE DOMAIN doc_ident AS bigint NOT NULL DEFAULT > nextval('doc.seq_doc_id'::text) > CONSTRAINT cnst_chk_doc_id CHECK ( fn_chk_doc_id(VALUE) ) ; > > I did not notice any similar error report on the list, so I believe that this > is not fixed yet ? It comes out right for me in 7.4.2.
On Thu, May 06, 2004 at 10:17:31 -0400, Rod Taylor <pg@rbt.ca> wrote: > > CREATE DOMAIN doc_ident AS bigint NOT NULL DEFAULT > > nextval('doc.seq_doc_id'::text) > > CONSTRAINT cnst_chk_doc_id CHECK ( fn_chk_doc_id(VALUE) ) ; > > > > I did not notice any similar error report on the list, so I believe that this > > is not fixed yet ? > > It comes out right for me in 7.4.2. What type is fn_chk_doc_id? There was a bug like this for boolean variables in the 7.4 beta. Maybe there is a similar bug for boolean functions? Just to be sure, this is happening in a released version of 7.4, not a beta version, correct?
Rod Taylor <pg@rbt.ca> writes: >> CREATE DOMAIN doc_ident AS bigint NOT NULL DEFAULT >> nextval('doc.seq_doc_id'::text) >> CONSTRAINT cnst_chk_doc_id CHECK ( fn_chk_doc_id(VALUE) ) ; > It comes out right for me in 7.4.2. AFAICT the relevant fix was well before 7.4 release: 2003-10-04 14:22 tgl * src/: backend/utils/adt/ruleutils.c,backend/utils/cache/lsyscache.c, include/utils/lsyscache.h: Fixpg_get_constraintdef()to ensure CHECK constraints are always shownwith required outer parentheses. Breakage seems tobe leftoverfrom domain-constraint patches. This could be smarter aboutsuppressing extra parens, but at this stage of therelease cycle Iwant certainty not cuteness. regards, tom lane
Sorry, this was 7.4 beta 3 ( I was upgrading one test database from 7.4 beta 3, pg_restore was version 7.4.2). You are right, fn_chk_doc_id is bool type. However I'll try to dump upgraded database with a new version of pg_dump and let You know. Sorry again :-( Regards ! ----- Original Message ----- From: "Bruno Wolff III" <bruno@wolff.to> To: "Rod Taylor" <pg@rbt.ca> Cc: "Darko Prenosil" <darko.prenosil@finteh.hr>; "PostgreSQL Development" <pgsql-hackers@postgresql.org> Sent: Thursday, May 06, 2004 6:41 PM Subject: Re: [HACKERS] Bug in pg_dump 7.4 > On Thu, May 06, 2004 at 10:17:31 -0400, > Rod Taylor <pg@rbt.ca> wrote: > > > CREATE DOMAIN doc_ident AS bigint NOT NULL DEFAULT > > > nextval('doc.seq_doc_id'::text) > > > CONSTRAINT cnst_chk_doc_id CHECK ( fn_chk_doc_id(VALUE) ) ; > > > > > > I did not notice any similar error report on the list, so I believe that this > > > is not fixed yet ? > > > > It comes out right for me in 7.4.2. > > What type is fn_chk_doc_id? There was a bug like this for boolean variables > in the 7.4 beta. Maybe there is a similar bug for boolean functions? > Just to be sure, this is happening in a released version of 7.4, not a beta > version, correct? > > ---------------------------(end of broadcast)--------------------------- > TIP 8: explain analyze is your friend >