Bruce Momjian wrote: > I can confirm your failure in current sources on Win32: > > template1=# create table test(x int8); > CREATE TABLE > template1=# insert into test values ('4567890123456789'); > INSERT 17235 1 > template1=# select * from test; > x > ------------ > -869367531 > (1 row) > > and it knows it is a large number: > > template1=# select * from test where x > 1000::int8; > x > ------------ > -869367531 > (1 row) > template1=# select * from test where x < 1000::int8; > x > --- > (0 rows) > > I am going to add some debugs to see what is being passed to *printf().
I have not found the solution yet but am heading to bed. My next guess is that Win32 isn't handling va_arg(..., long long int) properly. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend