[BUGS] BUG #5906: assertion failure in AtCleanup_Portals

2011-03-02 Thread YAMAMOTO Takashi

The following bug has been logged online:

Bug reference:  5906
Logged by:  YAMAMOTO Takashi
Email address:  y...@mwd.biglobe.ne.jp
PostgreSQL version: 9.1devel
Operating system:   NetBSD current
Description:assertion failure in AtCleanup_Portals
Details: 

i got the following with my application, which uses
PQsendPrepare+PQsendQueryPrepared for nearly everything
including ROLLBACK.

PostgreSQL version is 4c966d920fb75a5d0366b887c2ef28e6d87c1eda.

(gdb) bt
#0  0xbbba4cc7 in _lwp_kill () from /usr/lib/libc.so.12
#1  0xbbba4c85 in raise (s=6) at /siro/nbsd/src/lib/libc/gen/raise.c:48
#2  0xbbba445a in abort () at /siro/nbsd/src/lib/libc/stdlib/abort.c:74
#3  0x0833eae2 in ExceptionalCondition (
conditionName=0x84bf3b8 "!(portal->cleanup == ((void *)0))", 
errorType=0x8371631 "FailedAssertion", fileName=0x84bf200 "portalmem.c",

lineNumber=766) at assert.c:57
#4  0x0835d4e3 in AtCleanup_Portals () at portalmem.c:766
#5  0x080c49a8 in CleanupTransaction () at xact.c:2325
#6  0x080c809b in CommitTransactionCommand () at xact.c:2503
#7  0x082845a3 in finish_xact_command () at postgres.c:2450
#8  0x08287b34 in PostgresMain (argc=2, argv=0xbb9126a4, 
username=0xbb9125f8 "takashi") at postgres.c:1980
#9  0x08242306 in ServerLoop () at postmaster.c:3590
#10 0x082430b8 in PostmasterMain (argc=3, argv=0xbfbfe5a8) at
postmaster.c:1110
#11 0x081e1ac9 in main (argc=3, argv=0xbfbfe5a8) at main.c:199
(gdb) fr 4
#4  0x0835d4e3 in AtCleanup_Portals () at portalmem.c:766
766 Assert(portal->cleanup == NULL);
(gdb) p *portal
$2 = {name = 0xbb9e3d48 "", prepStmtName = 0x99b35838 "41", heap =
0x99b323e8, 
  resowner = 0x99b44b8c, cleanup = 0x817dd70 , createSubid =
1, 
  sourceText = 0x99b3581c "ROLLBACK", commandTag = 0x8498daf "ROLLBACK", 
  stmts = 0x99ba681c, cplan = 0x99ba6868, portalParams = 0x0, 
  strategy = PORTAL_MULTI_QUERY, cursorOptions = 4, status = PORTAL_DONE, 
  portalPinned = 0 '\0', queryDesc = 0x0, tupDesc = 0x0, formats = 0x0, 
  holdStore = 0x0, holdContext = 0x0, atStart = 1 '\001', atEnd = 1 '\001',

  posOverflow = 0 '\0', portalPos = 0, creation_time = 352351237783155, 
  visible = 1 '\001'}
(gdb)

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


Re: [BUGS] BUG #5906: assertion failure in AtCleanup_Portals

2011-03-02 Thread Tom Lane
"YAMAMOTO Takashi"  writes:
> i got the following with my application, which uses
> PQsendPrepare+PQsendQueryPrepared for nearly everything
> including ROLLBACK.

Can't do anything about that without a test case.

regards, tom lane

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


[BUGS] Cannot create collation?

2011-03-02 Thread hubert depesz lubaczewski
hi
i'm trying to test collation per column on newest pg head, but I can't
seem to get it working.

my normal locale is en_US.UTF-8, but in database, for test purposes I
used pl_PL.UTF-8.

Which works.

When I try to create french collation, it seems to work, but fails soon:

$ CREATE COLLATION french (LOCALE = 'fr_FR.UTF-8');
CREATE COLLATION

$ create table test3 ( x text COLLATE "french" );
CREATE TABLE

$ copy test3 from '/tmp/french';
COPY 55

$ select * from test3;
 x 
---
 d'accord
 déclassé
 décolleté
 décor
 découpage
 déjà vu
 demi-glace
 demi-sec
 dénouement
 de nouveau
 dérailleur
 de règle
 de rigueur
 dernier cri
 derrière
 déshabillé
 désolé
 détente
 de trop
 diablerie
 directeur sportif
 divertissement
 dossier
 doyen
 dressage
 du jour
 écarté
 échappé
 éclair
 éclat
 écorché
 élan
 élan vital
 éminence grise
 en bloc
 en escalier
 en famille
 enfant terrible
 en garde
 ennui
 en passant
 en pointe
 en route
 entente
 entrée
 entremets
 entre nous
 entrepreneur
 escargot
 escritoire
 et toi?
 étude
 étui
 excusez-moi
 extraordinaire
(55 rows)

$ select * from test3 order by x;
ERROR:  could not create locale "fr_FR.UTF-8": Success


What is wrong in here?

In shell, I can do:
LC_COLLATE=fr_FR.UTF-8 sort /tmp/french
and it works as expected.

Best regards,

depesz

-- 
The best thing about modern society is how easy it is to avoid contact with it.
 http://depesz.com/

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


Re: [BUGS] Cannot create collation?

2011-03-02 Thread hubert depesz lubaczewski
On Wed, Mar 02, 2011 at 01:58:02PM +0100, hubert depesz lubaczewski wrote:
> $ select * from test3 order by x;
> ERROR:  could not create locale "fr_FR.UTF-8": Success
> What is wrong in here?

never mind. sort looked like ok, but in fact apparently was't, and after
adding "language-support-fr" package in ubuntu, and restarting pg - pg
works.

Best regards,

depesz

-- 
The best thing about modern society is how easy it is to avoid contact with it.
 http://depesz.com/

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


Re: [BUGS] Cannot create collation?

2011-03-02 Thread Heikki Linnakangas

On 02.03.2011 14:58, hubert depesz lubaczewski wrote:

When I try to create french collation, it seems to work, but fails soon:

$ CREATE COLLATION french (LOCALE = 'fr_FR.UTF-8');
CREATE COLLATION


Hmm, regardless of what's causing this, I wonder if we should check that 
the locale works at CREATE COLLATION time, rather than fail when you try 
to use it. Ie. add a call to pg_newlocale_from_collation() at the end of 
DefineCollation(). Or would that just make it more difficult to restore 
a database with invalid collations?



$ select * from test3 order by x;
ERROR:  could not create locale "fr_FR.UTF-8": Success


Looks like newlocale() call returned 0, but didn't set errno. I don't 
think that's supposed to happen. Which platform is this? Which operating 
system and version?


--
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


Re: [BUGS] Cannot create collation?

2011-03-02 Thread hubert depesz lubaczewski
On Wed, Mar 02, 2011 at 06:00:45PM +0200, Heikki Linnakangas wrote:
> On 02.03.2011 14:58, hubert depesz lubaczewski wrote:
> >When I try to create french collation, it seems to work, but fails soon:
> >
> >$ CREATE COLLATION french (LOCALE = 'fr_FR.UTF-8');
> >CREATE COLLATION
> 
> Hmm, regardless of what's causing this, I wonder if we should check
> that the locale works at CREATE COLLATION time, rather than fail
> when you try to use it. Ie. add a call to
> pg_newlocale_from_collation() at the end of DefineCollation(). Or
> would that just make it more difficult to restore a database with
> invalid collations?
> 
> >$ select * from test3 order by x;
> >ERROR:  could not create locale "fr_FR.UTF-8": Success
> 
> Looks like newlocale() call returned 0, but didn't set errno. I
> don't think that's supposed to happen. Which platform is this? Which
> operating system and version?

linux ubuntu 10.10.
I was missing language-pack-fr and language-support-fr.

interestingly, I'm getting weird results. with just language-pack-fr i
can order by column, but result is not the one i'd expect.

when I added language-support-fr - ordering works, and returns data as
expected.

weird.

Best regards,

depesz

-- 
The best thing about modern society is how easy it is to avoid contact with it.
 http://depesz.com/

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


Re: [BUGS] Cannot create collation?

2011-03-02 Thread Peter Eisentraut
On ons, 2011-03-02 at 18:00 +0200, Heikki Linnakangas wrote:
> Hmm, regardless of what's causing this, I wonder if we should check
> that the locale works at CREATE COLLATION time, rather than fail when
> you try to use it. Ie. add a call to pg_newlocale_from_collation() at
> the end of DefineCollation().

Yeah, I was apparently hoping that check_encoding_locale_matches() would
catch invalid locales, but it doesn't, so we should put in an explicit
check.


-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


[BUGS] BUG #5907: ODBC % bug

2011-03-02 Thread Andrew Considine

The following bug has been logged online:

Bug reference:  5907
Logged by:  Andrew Considine
Email address:  andrew.consid...@sncorp.com
PostgreSQL version: 9.0.1-1
Operating system:   Windows XP
Description:ODBC % bug
Details: 

Using a password that contains a "%" symbol does not authenticate while
using the ODBC driver.  The Postgresql installer accepts this password.  The
password will even work while logging into PGAdmin.  However when connecting
through the ODBC driver from one of our C++ applications we receive the
following error:  FATAL: password authentication failed for user
"".  We tested this behaviour with the "%" symbol in various
positions of the password with the same result.  Also, we tested this with
"^" which worked as it should and "&" which also worked as it should.  It
was only the usage of the "%" that failed to work properly while
authenticatin via the ODBC driver.

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


[BUGS] BUG #5908: PgOleDb 1.0.0.20 returns values without the digits after the dot.

2011-03-02 Thread Aldo Ribeiro

The following bug has been logged online:

Bug reference:  5908
Logged by:  Aldo Ribeiro
Email address:  aldo...@gmail.com
PostgreSQL version: 9.0.3
Operating system:   Windows XP SP3
Description:PgOleDb 1.0.0.20 returns values without the digits after
the dot.
Details: 

I'm using PostgreSQL 9.0.3 in VB6 with PgOleDb 1.0.0.20. I have a field of
type Numeric (8.2), but always returns values without the digits after the
dot. Using ODBC works. Please correct the PgOleDb and release a new
version.

Best regards,


Aldo Ribeiro
aldo...@gmail.com

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs


Re: [BUGS] BUG #5906: assertion failure in AtCleanup_Portals

2011-03-02 Thread YAMAMOTO Takashi
hi,

> "YAMAMOTO Takashi"  writes:
>> i got the following with my application, which uses
>> PQsendPrepare+PQsendQueryPrepared for nearly everything
>> including ROLLBACK.
> 
> Can't do anything about that without a test case.
> 
>   regards, tom lane

here's a small test case.

YAMAMOTO Takashi


#include 

#include 

int
main()
{
PGconn *conn;
PGresult *res;

conn = PQconnectdb("");
if (PQstatus(conn) != CONNECTION_OK) {
exit(1);
}
res = PQprepare(conn, "r", "ROLLBACK", 0, NULL);
if (PQresultStatus(res) != PGRES_COMMAND_OK) {
exit(1);
}
PQclear(res);
res = PQexec(conn, "BEGIN");
if (PQresultStatus(res) != PGRES_COMMAND_OK) {
exit(1);
}
PQclear(res);
res = PQexec(conn, "hoge");
/* a syntax error made the transaction aborted */
PQclear(res);
res = PQexecPrepared(conn, "r", 0, NULL, NULL, NULL, 0);
if (PQresultStatus(res) != PGRES_COMMAND_OK) {
exit(1);
}
PQclear(res);
exit(0);
}

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs