Lists: | pgsql-bugs |
---|
From: | "Sebastian" <skurscheid(at)gmail(dot)com> |
---|---|
To: | pgsql-bugs(at)postgresql(dot)org |
Subject: | BUG #6062: psql terminates on auto-complete |
Date: | 2011-06-15 19:22:16 |
Message-ID: | 201106151922.p5FJMGue044731@wwwmaster.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-bugs |
The following bug has been logged online:
Bug reference: 6062
Logged by: Sebastian
Email address: skurscheid(at)gmail(dot)com
PostgreSQL version: 9.0.1
Operating system: Darwin Kernel Version 10.7.0: Sat Jan 29 15:17:16 PST
2011; root:xnu-1504.9.37~1/RELEASE_I386 i386
Description: psql terminates on auto-complete
Details:
I have encountered a peculiar psql behavior which I can consistently
replicate:
When using the auto-complete function (TAB) to complete the name of a
particular set of tables when writing a SELECT statement, psql crashes with
following error:
"malloc: *** error for object 0x2: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap"
I will make the assumption that this error is not caused by the actual table
definition, but is rather caused by some psql behavior associated with the
auto-complete feature.
The names of the tables are:
postgres=# \dt temp.a*
List of relations
Schema | Name | Type | Owner
--------+-------------------------------+-------+------------
temp | assoc_rel | table | skurscheid
temp | association | table | skurscheid
temp | association_isoform | table | skurscheid
temp | association_property | table | skurscheid
temp | association_qualifier | table | skurscheid
temp | association_species_qualifier | table | skurscheid
(6 rows)
This also occurs when the tables are stored under a different schema (such
as "go" - this is a local copy of the Gene Ontology database, which
otherwise works without any problems)
This error does not occur when using e.g. \dt in psql.
Also, after some more testing I have determined that this error only occurs
following this sequence:
postgres=# select * from go.assoc (TAB, TAB) [- this will bring up the list
of all matching objects]
postgres=# select * from go.associpsql(87623) malloc: *** error for object
0x7: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap
I would hazard the guess that the "_" character in some of the objects names
might have something to do with it, because:
postgres=# select * from go.assoc_(TAB)rel;
id | from_id | to_id | relationship_type_id
----+---------+-------+----------------------
(0 rows)
works fine.
I hope the supplied information is sufficient to address this bug.
From: | John R Pierce <pierce(at)hogranch(dot)com> |
---|---|
To: | Sebastian <skurscheid(at)gmail(dot)com> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #6062: psql terminates on auto-complete |
Date: | 2011-06-16 05:37:17 |
Message-ID: | 4DF9968D.2040408@hogranch.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-bugs |
On 06/15/11 12:22 PM, Sebastian wrote:
> The following bug has been logged online:
>
> Bug reference: 6062
> Logged by: Sebastian
> Email address: skurscheid(at)gmail(dot)com
> PostgreSQL version: 9.0.1
> Operating system: Darwin Kernel Version 10.7.0: Sat Jan 29 15:17:16 PST
> 2011; root:xnu-1504.9.37~1/RELEASE_I386 i386
> Description: psql terminates on auto-complete
> Details:
>
> I have encountered a peculiar psql behavior which I can consistently
> replicate:
>
> When using the auto-complete function (TAB) to complete the name of a
> particular set of tables when writing a SELECT statement, psql crashes with
> following error:
>
> "malloc: *** error for object 0x2: pointer being freed was not allocated
> *** set a breakpoint in malloc_error_break to debug
> Abort trap"
does by any chance the Mac port use BSD editline instead of Gnu readline ?
editline has been very unstable for me on other Unix platforms such as
Solaris. I have zero OS X specific knowlege
--
john r pierce N 37, W 122
santa cruz ca mid-left coast
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Sebastian" <skurscheid(at)gmail(dot)com> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #6062: psql terminates on auto-complete |
Date: | 2011-06-16 05:39:40 |
Message-ID: | 18987.1308202780@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-bugs |
"Sebastian" <skurscheid(at)gmail(dot)com> writes:
> Operating system: Darwin Kernel Version 10.7.0: Sat Jan 29 15:17:16 PST
> 2011; root:xnu-1504.9.37~1/RELEASE_I386 i386
> When using the auto-complete function (TAB) to complete the name of a
> particular set of tables when writing a SELECT statement, psql crashes with
> following error:
> "malloc: *** error for object 0x2: pointer being freed was not allocated
> *** set a breakpoint in malloc_error_break to debug
> Abort trap"
Yeah, this is a known bug in Apple's version of libedit. See our
archives, eg here:
http://archives.postgresql.org/pgsql-bugs/2010-04/msg00127.php
Aside from pestering Apple to fix it, there's not much you can do except
install GNU libreadline and link against that instead.
regards, tom lane