It happened again.....

But first a little summary of what I did to prevent (what happened again)

o I disabled the pinger.exe helper because I don't need it
o I installed a test binary which should fix these problems: 
  1 - Windows handles are inherited from child helpers, this is wrong
  2 - UDP based helpers don't detects properly Squid shutdown and not 
      terminate itself.
o I changed the fs from ufs to awin32

Well....yesterday evening it happened again:

Squid started the storeDirWriteCleanLogs function and got a problem after that:

2003/08/14 20:23:34| storeDirWriteCleanLogs: Starting...
2003/08/14 20:23:34| WARNING: Closing open FD   10
2003/08/14 20:23:35|     65536 entries written so far.
2003/08/14 20:23:37|    131072 entries written so far.
2003/08/14 20:23:39|    196608 entries written so far.
2003/08/14 20:23:41|    262144 entries written so far.
2003/08/14 20:23:43|    327680 entries written so far.
2003/08/14 20:23:47|    393216 entries written so far.
2003/08/14 20:23:56|    458752 entries written so far.
2003/08/14 20:24:02|   Finished.  Wrote 524285 entries.
2003/08/14 20:24:02|   Took 28.0 seconds (18703.8 entries/sec).
FATAL: logfileWrite: c:/squid/log/store.log: (13) Permission denied

Squid Cache (Version 2.5.STABLE3-NT-CVS): Terminated abnormally.

Well - I saved the FD information a couple of hours before it happened:

File Type   Tout Nread  * Nwrite * Remote Address        Description
---- ------ ---- -------- -------- --------------------- ------------------------------
   0 Log       0       0        0                        stdin
   1 Log       0       0        0                        stdout
   2 Log       0       0        0                        stderr
   3 Log       0       0        0                        c:/squid/log/cache.log
   4 File      0       0   578059                        c:/squid/log/access.log
   5 File      0       0   580474                        c:/squid/log/store.log
   7 Socket    0       0        0  127.0.0.1.3245        unlinkd -> squid
   8 Socket    0       0        0  .0                    unlinkd.exe(2328) CHILD socket
   9 Socket    0   28046     8924  .0                    DNS Socket
  10 Socket    0       0*       0  .0                    HTTP Socket
  12 Socket    1    7068*    2211  204.53.201.75.1475    Waiting for next request
  13 Socket    0       0*       0  .0                    ICP Socket
  14 Socket    0       0*       0  .0                    HTCP Socket
  15 Socket    0       0*       0  .0                    SNMP Port
  16 File      0       0    26016                        e:/cache/swap.state

Well...if Squid is supposed to close the store.log right after it starts the 
storeDirWriteCleanLogs function then it obviously got confused with the file 
descriptors.

What can I do to fix this problem? So far I only found some kind of workaround:

I rotate the logfiles more often because everytime I rotate the logfiles squid starts 
the
storeDirWriteCleanlogs function but when I rotate the logfiles this function works and 
I 
don�t get any permission denied errors. The error only occurs when squid starts this 
function
without rotating the logfiles.

thanks for your help,

Markus Wagner





Reply via email to