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;
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 (! APR_STATUS_IS_SUC
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 (!
Graham Dumpleton wrote:
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_
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 t
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,
>
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;
>
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
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 from the connection
> objects pool object. No chance of this being destroyed prematurely
> as a result.
>
>
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 try this and see
if you
David Fraser wrote:
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
Well, sure,
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
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,
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
c
Barry Pederson wrote:
I don't know if this is the answer to the problem, but it looks like a
bug anyway. In connobject.c starting at line 133:
/* time to grow destination string? */
if (len == 0 && bytes_read == bufsize) {
_PyString_Resize(&result, bufsize + HUGE_ST
15 matches
Mail list logo