[GENERAL] hashtable issue - HASH_FIND??

2010-08-04 Thread Jay Flattery
Hi there, I'm looking to use the PostgreSQL Hash Table for some custom functions. However, the example, as per http://wiki.postgresql.org/wiki/HashTable crashes postmaster (or segfaults from the cmd line) when trying to retrieve an element from the hash. Specifically this line fails: elem = ha

Re: [GENERAL] hashtable issue - HASH_FIND??

2010-08-04 Thread Jay Flattery
ation fault Wondering if it was just me..? - Original Message From: Tom Lane To: Jay Flattery Cc: pgsql-general@postgresql.org Sent: Wed, August 4, 2010 3:46:24 PM Subject: Re: [GENERAL] hashtable issue - HASH_FIND?? Jay Flattery writes: > I'm looking to use the PostgreS

Re: [GENERAL] hashtable issue - HASH_FIND??

2010-08-04 Thread Jay Flattery
m Lane To: Jay Flattery Cc: pgsql-general@postgresql.org Sent: Wed, August 4, 2010 4:51:30 PM Subject: Re: [GENERAL] hashtable issue - HASH_FIND?? Jay Flattery writes: > I'm looking to use the PostgreSQL Hash Table for some custom functions. > However, the example, as per http:

[GENERAL] fork() and dynamically loaded c functions....

2010-08-10 Thread Jay Flattery
Hi there, I have some functions written in C that are dynamically loaded. I persist some state between function calls, initialised by _PG_init. This works fine I now fork() a process in _PG_Init() (both processes interact), but when I shutdown postgre I get: LOG: failed to find proc 0x1331110

Re: [GENERAL] fork() and dynamically loaded c functions....

2010-08-10 Thread Jay Flattery
Thanks for your reply >> I now fork() a process in _PG_Init() (both processes interact), but when I >> shutdown postgre I get: LOG: failed to find proc 0x1331110 in ProcArray >What exactly is that child process doing? It sure sounds like it thinks >it's a valid backend. Actually it's not doi

Re: [GENERAL] fork() and dynamically loaded c functions....

2010-08-11 Thread Jay Flattery
>You might find that doing on_exit_reset() in the child would fix the >worst problems, but it still sounds chancy as heck. Thanks for that. The fork() is certainly more convenient than exec'g something else - hopefully OK since we're just prototyping something. Quick question: where is _exit_re