[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: slotmem + balancer

On 8 May 2018, at 18:19, Jim Jagielski <jim@xxxxxxxxxxx> wrote:

I am under the impression is that we should likely restore mod_slotmem_shm
back to its "orig" condition, either:

and try to rework all of this. I fear that all the subsequent work has really made this module extremely fragile. We need, IMO, a very minimal fix for PR 62044

Just for the heck of it, didn't r1822341 actually *FIX* the PR? 


To follow-up as the reporter of 62044, the original problem was a segmentation fault due to an entirely different 3rd party vendor module, which Apache 2.4.32 magically fixed, no idea how. However, the segfaults meant that the SHMs and/or SHM placeholder files weren't getting correctly cleaned up on restarts (in 2.4.29). I think it is important for httpd to handle the segfault case well because 3rd party modules can cause problems that httpd can’t anticipate. Ultimately, httpd is creating a bunch of persistent external state that it should make an effort to deal with cleanly when httpd stops unexpectedly and is subsequently restarted.

We restart/reload Apache frequently enough that preserving balancer state is useful but not critical.

I think you will find it difficult to re-work effectively unless you can identify representative test cases possibly including a segfault.

For me the most important characteristics of the fix were (a) to more accurately identify genuine virtual host changes (rather than simple line number shifts) that might invalidate balancer state and at least in some cases, to pick up existing SHMs left-over from the last httpd start. 

- Mark