Problem integrating C stub
От | Smita Vijayakumar |
---|---|
Тема | Problem integrating C stub |
Дата | |
Msg-id | 0e685b9a00002c6a@globallogic.com обсуждение исходный текст |
Ответы |
Re: Problem integrating C stub
|
Список | pgsql-committers |
Hi, While integrating C stub in stored procedure, I came across the following problem whenever the SP was triggered: " server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request. " My C code looks like this: " PG_FUNCTION_INFO_V1(abc); Datum abc(PG_FUNCTION_ARGS) { VarChar *arg1 ; char *str; arg1=(VarChar *) PG_GETARG_VARCHAR_P(0); int str1Size = VARSIZE(arg1) - VARHDRSZ; if (arg1) str = (char *) VARDATA(arg1); short int ret ; str[str1Size]='\0'; ret =anotherfunc(str); // anotherfunc() returns smallint PG_RETURN_INT16(ret); } " I am not sure what I am doing wrong, but I notice whenever I comment out the code for extraction of the arguments " arg1=(VarChar *) PG_GETARG_VARCHAR_P(0); int str1Size = VARSIZE(arg1) - VARHDRSZ; if (arg1) str = (char *) VARDATA(arg1); " the code ceases to throw the error. The function has been declared as " CREATE FUNCTION abc(varchar) RETURNS smallint AS '/path/abc.so', 'abc' LANGUAGE C STRICT; " Am I missing something? Thanks, Smita
В списке pgsql-committers по дате отправления: