Re: pg_dump vs malloc
Bruce Momjian <bruce@momjian.us>
From: Bruce Momjian <bruce@momjian.us>
To: Alvaro Herrera <alvherre@commandprompt.com>
Cc: Magnus Hagander <magnus@hagander.net>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2011-11-14T22:10:17Z
Lists: pgsql-hackers
Attachments
- /rtmp/pg_dump (text/x-diff) patch
Alvaro Herrera wrote: > Excerpts from Magnus Hagander's message of mi jun 22 11:25:43 -0400 2011: > > On Fri, Jun 10, 2011 at 21:07, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > > Magnus Hagander <magnus@hagander.net> writes: > > >> I came across a situation today with a pretty bad crash of pg_dump, > > >> due to not checking the return code from malloc(). When looking > > >> through the code, it seems there are a *lot* of places in pg_dump that > > >> doesn't check the malloc return code. > > > > > >> But we do have a pg_malloc() function in there - but from what I can > > >> tell it's only used very sparsely? > > > > > >> Shouldn't we be using that one more or less everywhere > > > > > > Yup. Have at it. > > > > Something along the line of this? > > Huh, do you really need a new file for the four new functions? What's > wrong with common.c? I developed the attached patch to handle this. I moved the catalog code from common.c into dumpcatalog.c, so there are just memory routines now in common.c. I created new memory routines in pg_dumpall.c because there is no AH structure in pg_dumpall.c. I then modified all the calls to use the new routines, and removed the NULL return checks that were no longer necessary. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. +