pg_dumpall segfault - Mailing list pgsql-bugs

From Nick Eskelinen
Subject pg_dumpall segfault
Date
Msg-id 20030314165514.F19185@cs.bu.edu
Whole thread Raw
List pgsql-bugs
============================================================================
                        POSTGRESQL BUG REPORT TEMPLATE
============================================================================


Your name               :       Nick Eskelinen
Your email address      :    nickesk@cs.bu.edu


System Configuration
---------------------
  Architecture (example: Intel Pentium)         :   UltraSparc

  Operating System (example: Linux 2.0.26 ELF)  :   Solaris 8

  PostgreSQL version (example: PostgreSQL-7.3.2):   PostgreSQL-7.3.2

  Compiler used (example:  gcc 2.95.2)          :   gcc 3.2.2


Please enter a FULL description of your problem:
------------------------------------------------
pg_dumpall segfaults when trying to dump group information.
Postmaster and pg_dump run fine in this installation.

Output from gdb
---------------

(gdb) r -U postgres
Starting program: /fs/cs-db/local/postgresql-7.3.2/bin/pg_dumpall -U postgres
Password:

--
-- PostgreSQL database cluster dump
--

\connect "template1"

--
-- Users
--

 [user information]

--
-- Groups
--

DELETE FROM pg_group;

Program received signal SIGSEGV, Segmentation fault.
0xfef331bc in strlen () from /usr/lib/libc.so.1

(gdb) bt
#0  0xfef331bc in strlen () from /usr/lib/libc.so.1
#1  0xfef861c8 in _doprnt () from /usr/lib/libc.so.1
#2  0xfef8833c in vsnprintf () from /usr/lib/libc.so.1
#3  0xff2386d0 in appendPQExpBuffer (str=0x273a8,
    fmt=0x14c00 "SELECT usename FROM pg_shadow WHERE usesysid = %s;")
    at pqexpbuffer.c:234
#4  0x00011c40 in dumpGroups (conn=0x27b00) at pg_dumpall.c:353
#5  0x000115b8 in main (argc=3, argv=0xffbef9e4) at pg_dumpall.c:196

(gdb) up 3
#3  0xff2386d0 in appendPQExpBuffer (str=0x273a8,
    fmt=0x14c00 "SELECT usename FROM pg_shadow WHERE usesysid = %s;")
    at pqexpbuffer.c:234
234                             nprinted = vsnprintf(str->data + str->len, avail,

(gdb) i lo
args = 0xffbef8ac
avail = 255
nprinted = 30

(gdb) p *str
$1 = {data = 0x300b8 "SELECT usename FROM pg_shadow WHERE usesysid = ",
  len = 0, maxlen = 256}


Please describe a way to repeat the problem.   Please try to provide a
concise reproducible example, if at all possible:
----------------------------------------------------------------------
All invocations of pg_dumpall result in a segmentation fault.


If you know how this problem might be fixed, list the solution below:
---------------------------------------------------------------------

pgsql-bugs by date:

Previous
From: Sean Reifschneider
Date:
Subject: Problem with RULE to update tables
Next
From: Ennio Iannucci
Date:
Subject: strange behaviour of extended ascii characters (LATIN1)