Search Postgresql Archives

Re: Writing SRF

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Apr 29, 2010 at 3:56 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
> Jorge Arevalo <jorgearevalo@xxxxxxxxxxxx> writes:
>> Yes. For example, the function expects 2 arguments, and it's called
>> with 2 arguments: 1 composite type (following this format
>> https://svn.osgeo.org/postgis/spike/wktraster/doc/RFC1-SerializedFormat)
>> and one integer. But PG_NARGS() returns a really big value (16297)
>> when I first check the number of arguments at the beginning of the
>> function. Has sense?
>
> Given only that data point, I would guess that you forgot to mark the
> function as being called with V1 protocol (PG_FUNCTION_INFO_V1).
>
>                        regards, tom lane
>

Many thanks! That was one of my errors. Another one was this:

char szDataPointer[10];
sprintf(szDataPointer, "%p", a_pointer);

These lines caused a memory error. I changed them for:

char * pszDataPointer;
pszDataPointer = (char *)allocator(10 * sizeof(char));
sprintf(pszDataPointer, "%p", a_pointer);

Meaning "allocator" a memory allocator in a valid memory context for PostgreSQL.

And seems to work :-). Is the static memory "dangerous" in a
PostgreSQL memory context?

Thanks again!
Jorge

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux