Re: BUG #5418: psql exits after using tab-completion with error message

From: Ben Madin <ben(at)ausvet(dot)com(dot)au>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>, pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #5418: psql exits after using tab-completion with error message
Date: 2010-04-15 13:43:17
Message-ID: D500103B-E461-4213-974E-2E70F5DD817F@ausvet.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Thanks Tom,

I also reported it to Apple, but without this information, so I hope they get the sense that it might be important enough to look at, especially if there is already a fix known.

I also contacted William Kyngesbury, and he was sympathetic (but had never had the problem himself, but neither does he use the tab-completion), but would rather Apple fixed it because his GIS software suite is very based on using Apple OSX frameworks where they exist.

cheers

Ben

On 15/04/2010, at 12:13 , Tom Lane wrote:

> I wrote:
>> It's fairly easy to reproduce in the regression database:
>> type "\d ten<TAB>". I'm not sure what the triggering condition
>> is exactly, because some seemingly-similar cases don't fail,
>> for instance "\d test<TAB>" works as expected, ditto "\d t<TAB>".
>
> It turns out that the problem occurs when there are exactly 9 + 10*N
> possible completions, for any N>=0. There's an off-by-one logic bug
> in libedit that results in a memory stomp because it forgets to enlarge
> an array before storing a terminating null pointer in it.
>
> The upstream netbsd sources incorporated a fix some time ago:
> http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libedit/readline.c.diff?r1=1.82&r2=1.83&sortby=date&f=h
> with credit to Caleb Welton at Greenplum --- I wonder if he found it
> because of psql failing? Apple hasn't incorporated this fix as of
> OS X 10.6.3, however.
>
> What's slightly more distressing is that the same source file
> (readline.c) appears to have at least two other occurrences of the same
> broken array-enlargement coding pattern, which were *not* fixed.
>
> I've reported this to Apple but I'm not real sure where to file NetBSD
> bugs. Anybody want to yank the BSD guys' chain about the other errors?
>
> regards, tom lane

--

Ben Madin
AusVet Animal Health Services
P.O. Box 5467
Broome WA 6725
Australia

t : +61 8 9192 5455
f : +61 8 9192 5535
m : 0448 887 220
e : ben(at)ausvet(dot)com(dot)au

AusVet's website: http://www.ausvet.com.au

This transmission is for the intended addressee only and is confidential information. If you have received this transmission in error, please delete it and notify the sender. The contents of this email are the opinion of the writer only and are not endorsed by AusVet Animal Health Services unless expressly stated otherwise. Although AusVet uses virus scanning software we do not accept liability for viruses or similar in any attachments.

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2010-04-15 13:49:59 Re: BUG #5418: psql exits after using tab-completion with error message
Previous Message Scott Mead 2010-04-15 12:51:25 Re: BUG #5423: problems installing postgresql-8.4 deleted folder / .s.PGSQL.lock not initiate the connecti