On Thu, 2007-04-12 at 18:16 -0600, Duane Wessels wrote:
> On Thu, 12 Apr 2007, Alex Rousskov wrote:
>
> > rousskov 2007/04/12 08:51:10 MDT
> >
> > Modified files:
> > src main.cc
> > Log:
> > This change should fix bug #1837: Segfault on configuration error
> >
> > When quitting on a fatal error, such as a configuration error, Squid may need
> > to write clean state/log files. Squid uses comm_ routines to do so. Thus, we
> > must initialize comm_ before such fatal errors are discovered.
> >
> > Perhaps a better fix would be to avoid writing clean state/log files until
> > the old ones become dirty?
>
> The last comment is correct. Squid should not write clean state files
> until existing state files have been entirely read.
>
> I fixed this bug a couple of days ago in the following revisions:
>
> 1.88 +2 -2 squid3/src/store_rebuild.cc
> 1.157 +9 -2 squid3/src/store_dir.cc
>
> store_dirs_rebuilding should be initialized to 1
>
> store_dirs_rebuilding is initialized to _1_ as a hack so that
> storeDirWriteCleanLogs() doesn't try to do anything unless _all_
> cache_dirs have been read. For example, without this hack, Squid
> will try to write clean log files if -kparse fails (becasue it
> calls fatal()).
>
>
> Sorry I did not realize there was a bugzilla entry for it.
> I'd suggest backing out your patch.
With pleasure. I saw your store_dirs_rebuilding initialization hack but
thought it was added before the bug report.
Thank you,
Alex.
Received on Thu Apr 12 2007 - 22:27:43 MDT
This archive was generated by hypermail pre-2.1.9 : Sun Apr 29 2007 - 12:00:03 MDT