[squid-dev] [PATCH] Bug 3819: "fd >= 0" assertion in file_write() during reconfiguration

Amos Jeffries squid3 at treenet.co.nz
Tue Sep 20 10:10:36 UTC 2016


On 20/09/2016 9:52 a.m., Alex Rousskov wrote:
> Hello,
> 
>     The attached trunk patch fixes bug 3819 in our tests.
> 
> Please note that the underlying problem may lead to other assertions,
> including "NumberOfUFSDirs" in UFSSwapDir and "fd >= 0" in file_close().
> 
> Since trunk r9181.3.1, reconfiguration is done in at least two steps:
> First, mainReconfigureStart() closes/cleans/disables all modules
> supporting hot reconfiguration and then, at the end of the event loop
> iteration, mainReconfigureFinish() opens/configures/enables them again.
> UFS code hits assertions if it has to log entries or rebuild swap.state
> between those two steps.  The patch disables or delays those activities
> during reconfiguration.
> 
> The tiny assertion opportunity window hides these bugs from most proxies
> that are not doing enough disk I/O or are not being reconfigured
> frequently enough.
> 

+1. Thank you.

Amos



More information about the squid-dev mailing list