From: | Chris Hayner <hayner80(at)astro(dot)ocis(dot)temple(dot)edu> |
---|---|
To: | PostgreSQL-General <pgsql-general(at)postgresql(dot)org> |
Subject: | C function woes (more info) |
Date: | 2001-02-20 21:56:53 |
Message-ID: | Pine.OSF.4.32.0102201653400.31416-100000@typhoon.ocis.temple.edu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
additional information whic may be useful for those smarter than i:
thanks for any possible help, Chris
how it was made:
gcc -fPIC -c test.c
gcc -shared test.o
*** --I have also tried using ld -shared (GNU ld)
a.out test.so
from psql:
test=# select hello();
hello
-------
sesu
(1 row)
test=# select hello();
hello
-------
(1 row)
test=# select hello();
^CCancel request sent
^CCancel request sent
^CCancel request sent --at this point, the whole back end freezes
-----------------------------------------------------------------
hello all:
I am attempting to create a function which will return data from a
C-function. This is what i have, and it so far has been successful. Any
help anyone can give me would be greatly appreciated.
gcc Compiler, PgSQL 7.1 beta 3
thanks,
chris
-----------------------------------------------------------------------
#include <string.h>
#include "/usr/local/pgsql/include/postgres.h"
text *
hello()
{
char data[] = "hello world";
int32 new_text_size = VARHDRSZ + sizeof(data);
text *new_text = (text *) palloc(new_text_size);
strcpy(VARDATA(new_text), data);
return new_text;
}
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2001-02-20 22:52:23 | Re: C function woes |
Previous Message | Mitch Vincent | 2001-02-20 21:31:59 | Re: Re: Printing PostgreSQL reports |