RE: [squid-users] logfileWrite: c:/squid/log/store.log: (13 ) Permission denied after storeDirWriteCleanLogs (Squid 2.5 on Windows 2000)

From: Wagner Markus <WagnerMarkus@dont-contact.us>
Date: Mon, 18 Aug 2003 15:59:21 +0200

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
Received on Mon Aug 18 2003 - 07:59:34 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:20:29 MST