On 21. 8. 25 09:58, Joe Orton wrote:
On Tue, Aug 12, 2025 at 07:37:36PM +0200, Branko Čibej wrote:
[Sent from the wrong e-mail address the first time]
Found this while trying to use pool debugging to track down an issue in
Serf. Apparently testing pool debugging hasn't been much of a priority, heh.
Related to this, with lifetime and owner checking enabled, some of our tests
break; I haven't tracked these down yet, but the symptoms are that the test
program aborts when it tries to destroy a pool, due to ownership checks;
apparently the pool is destroyed by a different thread than the one that
created it. This happens in testlockperf, testmutexscope and testall.
Given that this is a likely scenario when multiple threads create pools, and
then the main thread calls apr_terminate(), I wonder if these ownership
checks are necessary. Or, conversely, if they should be disabled during
[global] pool destruction. They're actually triggered by apr_pool_clear(),
which /should/ pass a strict ownership check under normal circumstances.
The pool-debug tests for httpd have started failing with SIGSEGV, I am
guessing related to this change since these have been very stable for a
long time. I think this is the relevant part of the traceback:
It's probably related to what Yann pointed out yesterday. My bad. Will
fix as soon as I can, or indeed Yann could just commit and backport his
patches; I'm a bit swamped ATM.
-- Brane