Eric, It's in the works. This involves several other people as the large server is owned by another group and getting our backend software ready to be called from httpd is somewhat involved. The build needs to be done by someone else as well. I've requested they build with --enable-pool-concurrency-check as that's what allows me to see which two threads are stepping on each other. I looked at your change and I see that you changed the logic so that the worker mutex is set for the first call to ap_proxy_initialize_worker(). I don't think that hurts anything and probably makes it easier to read, but I don't think it has an effect as in the first call (the one that allocates the pool), there is no way for any other thread to be using the pool. You also moved the worker mutex unlock so it only happens if worker->s->hmax != NULL and leave the two calls to connection_constructor() un-serialized. I don't have in my notes definite proof that this function must be serialized, so hopefully the test will show if this is ok. However, even in the case where worker->s->hmax == NULL, we need to unlock the worker mutex before returning. If this shows as a problem in the test, I can make that small change and run again and we should also put back the unlock call in the error condition for init_conn_pool(), as we shouldn't leave the mutex locked if we error out of this routine. Also, when this is finalized, all the new calls to APLOGNO need to go through your utility to assign message numbers.
> -----Original Message----- > From: Eric Covener <[email protected]> > Sent: Monday, August 12, 2019 3:25 PM > To: Apache HTTP Server Development List <[email protected]> > Subject: Re: [PATCH 63503] - Reverse proxy server - SIGSEGV > > Hi Don, can you try this very similar patch? I applied yours to my > sandbox to get more context and made a few minor changes (including > pre-existing stuff that looked misleading) > > http://people.apache.org/~covener/trunk-proxy-segv.diff -- Don Poitras - Host R&D SAS Institute Inc. SAS Campus Drive mailto:[email protected] (919)531-5637 Fax:677-4444 Cary, NC 27513
