From: | "Cristian Prieto" <cristian(at)clickdiario(dot)com> |
---|---|
To: | <pgsql-hackers(at)postgresql(dot)org> |
Subject: | somebody could explain this? |
Date: | 2005-11-04 16:16:50 |
Message-ID: | 008901c5e15b$2a0b14d0$6500a8c0@gt.ClickDiario.local |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hello, I'm using PostgreSQL 8.0.4 in Fedora Core 3, right now I'm learning a
little about the postgresql internals and the way some kind of SPs could be
written in c language; I found something really weird and I cannot explain
to me this behavior:
#include "postgres.h"
#include "fmgr.h"
PG_FUNCTION_INFO_V1(test);
Datum
repeat_item(PG_FUNCTION_ARGS)
{
int num_times;
num_times = PG_GETARG_FLOAT8(0) * 100;
PG_RETURN_INT32(num_times);
}
Inside psql this happens:
# Create or replace function test(float) returns integer as 'test.so'
language 'c' stable;
select test(0.1);
Returns 10
Select test(0.11);
Returns 11
Select test(0.12)
Returns 11
Select test(0.13)
Returns 13
Select test(0.14)
Returns 14
Select test(0.15)
Returns 14
What Is happening here?
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2005-11-04 16:22:09 | PG 8.1 supported platforms list: IRIX is MIA |
Previous Message | Andrew Dunstan | 2005-11-04 15:35:30 | Re: postgresql-8.1RC1 on Solaris 10, amd64x2 |