Re: Segfaults in ConnectionHander (Possible Solution)

2006-01-31 Thread Volodya
On Mon, Jan 30, 2006 at 09:40:39PM -0500, Graham Dumpleton wrote: Graham Dumpleton wrote .. Extending the above code as: Py_BEGIN_ALLOW_THREADS; rc = ap_get_brigade(c-input_filters, bb, mode, APR_BLOCK_READ, bufsize); Py_END_ALLOW_THREADS; if (!

Re: Segfaults in ConnectionHander (Possible Solution)

2006-01-31 Thread Jim Gallacher
Volodya wrote: On Mon, Jan 30, 2006 at 09:40:39PM -0500, Graham Dumpleton wrote: Graham Dumpleton wrote .. Extending the above code as: Py_BEGIN_ALLOW_THREADS; rc = ap_get_brigade(c-input_filters, bb, mode, APR_BLOCK_READ, bufsize); Py_END_ALLOW_THREADS; if (!

Re: Segfaults in ConnectionHander (Possible Solution)

2006-01-31 Thread Jim Gallacher
Jim Gallacher wrote: Volodya wrote: On Mon, Jan 30, 2006 at 09:40:39PM -0500, Graham Dumpleton wrote: Graham Dumpleton wrote .. Extending the above code as: Py_BEGIN_ALLOW_THREADS; rc = ap_get_brigade(c-input_filters, bb, mode, APR_BLOCK_READ, bufsize); Py_END_ALLOW_THREADS;

Re: Segfaults in ConnectionHander FreeBSD (was Re: 3.2.6 test period - how long do we wait?)

2006-01-30 Thread David Fraser
Jim Gallacher wrote: Barry Pederson wrote: I think this is the general kind of thing we're looking for though, with some mistaken pointer/memory operation. Too bad we can't write *everything* in python. :( You haven't been following PyPy then? :-) David

Re: Segfaults in ConnectionHander

2006-01-30 Thread Gregory (Grisha) Trubetskoy
This may be a good question to post to dev@httpd.apache.org Grisha On Mon, 30 Jan 2006, Graham Dumpleton wrote: Getting a bit closer now, have next part of puzzle worked out. Graham Dumpleton wrote .. This is starting to look really ugly. In _conn_read(), it first creates a bucket brigade

Re: Segfaults in ConnectionHander (Possible Solution)

2006-01-30 Thread Graham Dumpleton
Graham Dumpleton wrote .. Returning back up to _conn_read() in mod_python source code, we have where core_input_filter() was called ap_get_brigade(): Py_BEGIN_ALLOW_THREADS; rc = ap_get_brigade(c-input_filters, bb, mode, APR_BLOCK_READ, bufsize); Py_END_ALLOW_THREADS;

Re: Segfaults in ConnectionHander (Possible Solution)

2006-01-30 Thread Graham Dumpleton
Graham Dumpleton wrote .. Extending the above code as: Py_BEGIN_ALLOW_THREADS; rc = ap_get_brigade(c-input_filters, bb, mode, APR_BLOCK_READ, bufsize); Py_END_ALLOW_THREADS; if (! APR_STATUS_IS_SUCCESS(rc)) { PyErr_SetObject(PyExc_IOError,

Re: Segfaults in ConnectionHander

2006-01-30 Thread Jim Gallacher
Jim Gallacher wrote: Graham Dumpleton wrote: What I might speculate is that if the test in mod_python for the connection handler is setup to run on a secondary listener port, but with the primary still active, that it may trigger the problem on other systems like Linux. Jim, you might want to

Re: Segfaults in ConnectionHander FreeBSD (was Re: 3.2.6 test period - how long do we wait?)

2006-01-29 Thread Barry Pederson
Jim Gallacher wrote: Dang, it's frustrating not being able to reproduce this bug in Linux. I suppose it's maybe something to do with different malloc implementations or such. I haven't seen any +1s for OpenBSD, which would be interesting to see since they added some stuff in 3.8 to help

Re: Segfaults in ConnectionHander

2006-01-29 Thread Graham Dumpleton
Changed subject heading. See more of what I have uncovered below. Not sure where to go next. Graham Dumpleton wrote .. Unlike suggestions by someone else that self seemed to be getting corrupted, it looks fine to me, and code simply crashed down in: apr_bucket_read(b, data, size,