============================================================================
POSTGRESQL BUG REPORT TEMPLATE
============================================================================
Your name : Don Meyer
Your email address : dlmeyer@uiuc.edu
Category : runtime: back-end
Severity : non-critical
Summary: GRANT to GROUP(s) causes PG_DUMP(ALL) to fail
System Configuration
--------------------
Operating System : Linux 2.0.36 (RedHat 5.1+)
PostgreSQL version : 6.4.2
Compiler used :
Hardware:
---------
Linux wcb.aces.uiuc.edu 2.0.36 #2 Mon Nov 16 10:50:16 CST 1998 i686 unknown
Versions of other tools:
------------------------
gcc 2.7.2.3
--------------------------------------------------------------------------
Problem Description:
--------------------
When access has been granted to a group, the PSQL "\z" command
results in the following error:
"pqReadData() -- backend closed the channel unexpectedly.
The pg_dumpall command will also fail when it reaches the db
to which this command has been applied. (Same behaviour under
postgreSQL 6.3.2...)
Backend channels are closed for all active connections when
this error is encountered on any one.
--------------------------------------------------------------------------
Test Case:
----------
; {begin setup phase}
createdb test
psql test
exec the following in psql:
INSERT INTO pg_group VALUES ('ratbert');
CREATE USER fubar IN GROUP ratbert;
CREATE TABLE ROOMS(
RoomID integer NOT NULL,
OrderMapID integer NOT NULL);
GRANT ALL ON ROOMS TO GROUP RATBERT;
;{end setup phase}
;{ Execute a "pg_dumpall" here, or simply try the "\z" command within psql. }
;{begin undo phase}
REVOKE ALL ON ROOMS FROM GROUP RATBERT;
;{end undo phase}
;{ Test again as above; usually will now work. Sometimes not though... }
;{ begin cleanup }
psql test
exec the following in psql:
DELETE FROM pg_group WHERE GRONAME = 'ratbert';
\q
destroydb test
;{ end cleanup }
--------------------------------------------------------------------------
Solution:
---------
--------------------------------------------------------------------------