On 11/08/2011 1:00 AM, c k wrote:
I have renamed uuid-ossp.dll to 0uuid-ossp.dll in postgresql's lib directory. But it is also found that postgresql's bin directory is not included in the path.
It doesn't have to be. On Windows, the directory containing the current executable is implicitly the first path entry. Since postgres.exe lives in the same directory as uuid-ossp.dll, that's the copy of the DLL that'll be called.
Then started the postgresql again, called the same plpython function again and again server crashed without any details in the log. Also searched for the above dll or similar in python's installation but not founf, one available was not dll but was .py file.
OK, so maybe Python doesn't use uuid-ossp but its own implementation in pure Python. I'll pull out a Windows box and check.
Recent log contains following lines.
*Fatal Python error: PyThreadState_Get: no current thread*
Hmm, that's interesting. Thanks for supplying the error message; looks like I was probably on entirely the wrong track because I was forced to guess with not enough information.
If I get a chance I'll have a play with the function you posted and see if I can reproduce the crash on my Win7 box.
In the mean time, if you want you can try to collect some more information about the crash according to these instructions:
http://wiki.postgresql.org/wiki/Getting_a_stack_trace_of_a_running_PostgreSQL_backend_on_Windows -- Craig Ringer -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general