Do we need a quick APR 1.6.4 to pick up r1819938? From CHANGES:
*) poll, port: re-add the wakeup pipe to the pollset after it triggered.
Not doing this occasionally lead to httpd event MPM processes hanging
during process shutdown. PR 61786. [Yann Ylavic]
From the commit log:
====================================================================
Merge r1819857, r1819858, r1819860, r1819861, r1819934, r1819935 from trunk:
testpoll: check that the wakeup pipe is still in the pollset after
returning from poll(), e.g. APR_POLLSET_PORT should re-arm it automatically.
poll, port: re-add the wakeup pipe to the pollset after it triggered.
Just like user fds (file, socket), otherwise it's one shot only (PR-61786).
Corresponding test committed in r1819857.
poll, port: no need to release and re-acquire the lock in between
walking the pollset and handling the dead ring, all is
simple/fast/nonblocking ops.
Also, set types of "i" and "j" respectively to the ones of nget and *num.
poll, port: follow up to r1819860.
This test is redundant now, axe it (no functional change).
poll, kqueue: save a pollfd (mem)copy per returned event.
poll, epoll: pollset's pfd is not modified on poll(), mark it const.
====================================================================
At least on Solaris this looks useful. Or do we think that change is to
big to put it into the deps tarball?
And for APR-Util there is r1825312. From CHANGES:
*) apr_dbm_gdbm: Fix handling of error codes. This makes gdbm 1.14 work.
apr_dbm_gdbm will now also return error codes starting with
APR_OS_START_USEERR, as apr_dbm_berkleydb does, instead of always
returning APR_EGENERAL. [Stefan Fritsch]
and from the commit log:
====================================================================
Fix error handling in gdbm
Only check for gdbm_errno if the return value of the called gdbm_*
function says so. This fixes apr-util with gdbm 1.14, which does not
seem to always reset gdbm_errno.
Also make the gdbm driver return error codes starting with
APR_OS_START_USEERR instead of always returning APR_EGENERAL. This is
what the berkleydb driver already does.
Also ensure that dsize is 0 if dptr == NULL.
(backport of r1825311 in apr trunk)
====================================================================
The risk of breaking things is formally smaller, because builders can
always switch back to the old dependency tarball without the need for a
new httpd release, although that situation would produce a bit of confusion.
Regards,
Rainer