On Tue, 25 Mar 2003, Fabio Furia Silva wrote: > For example, the following function doesn't work as expected: > > /********************************/ > #include "postgres.h" > #include "fmgr.h" > > PG_FUNCTION_INFO_V1(next_value); > > Datum next_value(PG_FUNCTION_ARGS) > { > static int n; > PG_RETURN_INT32(n); > n++; > } > > /********************************/ > create function next_value() > returns integer as > 'next.so' language C; > > /********************************/ > Calling > > select next_value(); > > will always return 0, > even if I declare 'n' as a global variable outside the C function.
Which seems right since the n++ is never executed (being after the return statement). Does it do what you want if you increment first? ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])