crash if group doesn't exist (postgres 6.5, linux 2.2.10, rh 6.0)
От | David Sauer |
---|---|
Тема | crash if group doesn't exist (postgres 6.5, linux 2.2.10, rh 6.0) |
Дата | |
Msg-id | m2wvwyf4v3.fsf@orfinet.cz обсуждение исходный текст |
Список | pgsql-hackers |
Hallo, I think, that I found reproducible bug: % sql template1 Welcome to the POSTGRESQL interactive sql monitor: Please read the file COPYRIGHT for copyright terms of POSTGRESQL [PostgreSQL 6.5.0 on i586-pc-linux-gnu, compiled by gcc egcs-2.91.66] type \? for help on slash commands type \q to quit type \g or terminate with semicolon to execute queryYou are currentlyconnected to the database: template1 template1=> insert into pg_group values ('dummies', 501, '{503}'); INSERT 18784 1 template1=> select * from pg_user where usename = 'dummy'; usename|usesysid|usecreatedb|usetrace|usesuper|usecatupd|passwd |valuntil -------+--------+-----------+--------+--------+---------+--------+-------- dummy | 503|f |t |f |t |********| (1 row) template1=> create table tab ( i int ); CREATE template1=> \z tab Database = template1+----------+--------------------------+| Relation | Grant/Revoke Permissions |+----------+--------------------------+|tab | |+----------+--------------------------+ template1=> grant all on tab to group dummies; CHANGE template1=> \z tab Database = template1+----------+----------------------------+| Relation | Grant/Revoke Permissions |+----------+----------------------------+|tab | {"=","group dummies=arwR"} |+----------+----------------------------+ template1=> delete from pg_group; DELETE 1 template1=> \z tab NOTICE: get_groname: group 501 not found pqReadData() -- backend closed the channel unexpectedly.This probably means the backend terminated abnormallybefore or whileprocessing the request. And in log is: PGSQL: NOTICE: get_groname: group 501 not found PGSQL: NOTICE: Message from PostgreSQL backend: PGSQL: ^IThe Postmaster has informed me that some other backend died abnormally and possibly corrupted shared memory. PGSQL: ^II have rolled back the current transaction and am going to terminate your database system connection and exit. PGSQL: ^IPlease reconnect to the database system and repeat your query. This look like that \z causes (if group doesn't more exist) database crash ... and I hate crashes ... -- * David Sauer, student of Czech Technical University * electronic mail: davids@orfinet.cz (mime compatible)
В списке pgsql-hackers по дате отправления: