Skip site navigation (1) Skip section navigation (2)

Re: nodeRead: did not find '}' at end of plan node

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Martin Sarsale <lists(at)runa(dot)sytes(dot)net>
Cc: pgsql-admin(at)postgresql(dot)org
Subject: Re: nodeRead: did not find '}' at end of plan node
Date: 2004-03-15 22:07:09
Message-ID: 8062.1079388429@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-admin
Martin Sarsale <lists(at)runa(dot)sytes(dot)net> writes:
> Im running psql (PostgreSQL) 7.3.2 here and since some weeks Im getting this error when trying to dump all databases (to upgrade to pg 7.4.1)

> \connect XXX
> pg_dump: SQL command failed
> pg_dump: Error message from server: ERROR:  nodeRead: did not find '}' at end of plan node
> pg_dump: The command was: select (select usename from pg_user where usesysid = datdba) as dba, encoding, datpath from pg_database where datname = 'emepe3'
> pg_dumpall: pg_dump failed on emepe3, exiting

It would appear that the view rule for the pg_user view is corrupt, or
at least not quite the same format that the backend code is expecting.

Can you do "select * from pg_user" in any of your databases, or does it
fail the same way in all?  If it fails in each database then I'd suspect
some kind of version mismatch; if not then it's just corrupt in that
particular database.

We had a similar report last November which seemed to be related to a
glibc update --- see the thread starting here:
http://archives.postgresql.org/pgsql-general/2003-11/msg01102.php
The complainant lost interest after finding a workaround, so we
never did get a complete explanation of what happened, but I'm
suspicious there was some software incompatibility involved, not
data corruption per se.  I would like to find out the truth of the
matter.  If you are interested you could try manually creating an
equivalent of pg_user, viz

CREATE VIEW my_pg_user AS 
    SELECT 
        usename, 
        usesysid, 
        usecreatedb, 
        usesuper, 
        usecatupd, 
        '********'::text as passwd, 
        valuntil, 
        useconfig 
    FROM pg_shadow;

and then see if you can do "select * from my_pg_user", and if so,
what is the difference between the pg_rewrite entries for the two
views.  (See the above-referenced thread for more info.)

			regards, tom lane

In response to

Responses

pgsql-admin by date

Next:From: Thomas LeungDate: 2004-03-16 04:02:24
Subject: create function problem
Previous:From: Campano, TroyDate: 2004-03-15 21:42:56
Subject: Re: POrtability of ODBC and DBArtisan connection information

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group