From: | Nicolas Huillard <nhuillard(at)ghs(dot)fr> |
---|---|
To: | "pgsql-general(at)hub(dot)org" <pgsql-general(at)hub(dot)org>, "pgsql-sql(at)hub(dot)org" <pgsql-sql(at)hub(dot)org> |
Subject: | RE: [GENERAL] Problem with SELECT on large negative INT4 |
Date: | 2000-01-27 17:52:07 |
Message-ID: | 01BF68F7.9D1CE2B0@agen.int.ghs |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general pgsql-sql |
I haven't got the opportunity to recompile Postgres right now, but will do that. Just reading the code, I can't figure out the exact difference, but who knows...
Did someone already applied this ?
Nicolas Huillard
-----Message d'origine-----
De: Hiroshi Inoue [SMTP:Inoue(at)tpf(dot)co(dot)jp]
Date: jeudi 27 janvier 2000 17:31
À: Nicolas Huillard
Cc: pgsql-general(at)hub(dot)org; pgsql-sql(at)hub(dot)org
Objet: RE: [GENERAL] Problem with SELECT on large negative INT4
> -----Original Message-----
> From: owner-pgsql-general(at)postgresql(dot)org
> [mailto:owner-pgsql-general(at)postgresql(dot)org]On Behalf Of Nicolas Huillard
>
> I have a DB with is updated using MS Access. Primary keys are
> Int4 with default random values ("NuméroAuto" + "Aléatoire" in Access).
> The DB is migrated as-is in Postgres, with tbl_prod.cle_prod
> field containing values from -2057496808 to 2139583719.
> When I SELECT in the table, using the INT4 cle_prod value, PG
> doesn't find the tuple. When I SELECT using the VARCHAR(10)
> ref_prod value, PG finds the tuple, and show the right value for
> the cle_prod filed : the same as the one I SELECTed for...
>
> This sounds like the long negative integer values given in PSQL
> is not converted correctly while executing.
> Using a long positive integer value, all works like a charm...
>
> Below is the queries type sto sho what append.
> I'm using Postgres 6.5.2 from the RPMs.
>
Could you try the follwoing patch ?
Regards.
Hiroshi Inoue
*** nbtcompare.c 2000/01/11 03:33:34 1.3
--- nbtcompare.c 2000/01/19 05:42:06
***************
*** 34,40 ****
int32
btint4cmp(int32 a, int32 b)
{
! return a - b;
}
int32
--- 34,45 ----
int32
btint4cmp(int32 a, int32 b)
{
! if (a > b)
! return 1;
! else if (a == b)
! return 0;
! else
! return -1;
}
int32
************
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2000-01-27 17:52:37 | Re: [SQL] RE: [GENERAL] Problem with SELECT on large negative INT4 |
Previous Message | bgpyvd | 2000-01-27 17:18:18 | 18 yr. old blonde 8046 |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2000-01-27 17:52:37 | Re: [SQL] RE: [GENERAL] Problem with SELECT on large negative INT4 |
Previous Message | Jan Wieck | 2000-01-27 17:27:48 | Re: [SQL] foreign key implementation |