> WSGIDaemonProcess apache user=apache group=apache processes=5
> threads=5

This could be part of your problem -- it should be `threads=1`.  This
is because GEOS is not a thread safe library, and the serialization to
WKT code in particular uses static variables that can cause
unpredictable behavior if multiple threads enter the code at the same
time.  Thus, you also made the right choice in choosing a prefork
version of Apache (which Robert should also be using instead of the
worker).

> > I've been fighting a nearly identical bug to Robert for a while now
> > too, in fact, but his greater gdb-fu has got him further. my problem
> > description of the problem is nearly identical:
>
> w00t! well. not for you, But i'm glad to know i'm not the only one.

I've been trying to figure this out as well, wish y'all had told me
sooner!  There's something fishy going on with Intrepid's version of
Apache.  I was able to get mod_wsgi to deploy on both 32 and 64-bit
versions, but I experienced an exception (on 32-bit) and a segfault
(on 64-bit) as a geometry is transformed when trying to view a record
in the admin.  I've created a ticket to document this behavior:

http://code.djangoproject.com/ticket/9694

The patch fixes the exception on 32-bit, but does not fix the segfault
on 64-bit.

For 1.1, I'm doing a minor refactor of the GEOS interface (mostly to
use the non-deprecated IO WKT|WKB reader APIs).  I've created a
mercurial repo:

http://geodjango.org/hg/gis-geos/

In my current interface I do not explicitly specify the response type
of character pointers as `c_char_p` this is because ctypes
automatically converts `c_char_p` to Python string objects in the
errcheck function, and thus the memory address is not available to be
freed.  My ctypes-fu has improved, and in the refactor I've created a
simple subclass of `c_char_p` -- this prevents conversion to a Python
string object and allows me to free the address, all while explicitly
setting the expected type of the pointer to be returned.  When I
replaced with the geos interface refactor, the segfault no longer
occurs on 64-bit (I've yet to do 32-bit as I'm in the midst of
finals).  You can check out this changeset for the relevant details:

http://geodjango.org/hg/gis-geos/rev/77f86525906d

Try replacing the geos lib of your django with the one from the repo
and let me know if it also works for you.

Best Regards,
-Justin

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/modwsgi?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to