Re: [squid-users] Restarts without any apparent reason

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Fri, 30 Jul 2010 02:04:04 +1200

Ralf Hildebrandt wrote:
> Squid 3.1.5 is stopping (and being restarted by runit) for no apparent
> reason. From the cache.log:
>
> 2010/07/29 14:55:39| could not parse headers from on disk structure!
> 2010/07/29 14:55:39| could not parse headers from on disk structure!
> 2010/07/29 14:57:39| could not parse headers from on disk structure!
> 2010/07/29 14:58:29| could not parse headers from on disk structure!
> 2010/07/29 14:58:52| could not parse headers from on disk structure!
> 2010/07/29 15:00:22| could not parse headers from on disk structure!
> 2010/07/29 15:00:22| could not parse headers from on disk structure!
> 2010/07/29 15:00:30| could not parse headers from on disk structure!
> 2010/07/29 15:00:57| could not parse headers from on disk structure!
> 2010/07/29 15:02:34| could not parse headers from on disk structure!
> 2010/07/29 15:02:52| could not parse headers from on disk structure!
>
> 2010/07/29 15:02:57| Starting Squid Cache version 3.1.5 for i686-pc-linux-gnu...
> 2010/07/29 15:02:57| Process ID 8888
> 2010/07/29 15:02:57| With 4096 file descriptors available
> 2010/07/29 15:02:57| Initializing IP Cache...
> 2010/07/29 15:02:57| DNS Socket created at [::], FD 5
> 2010/07/29 15:02:57| Adding domain charite.de from /etc/resolv.conf
> 2010/07/29 15:02:57| Adding nameserver 127.0.0.1 from /etc/resolv.conf
> 2010/07/29 15:02:57| Adding nameserver 141.42.2.22 from /etc/resolv.conf
> 2010/07/29 15:02:57| Adding nameserver 141.42.3.33 from /etc/resolv.conf
> 2010/07/29 15:02:57| Unlinkd pipe opened on FD 10
> 2010/07/29 15:02:57| Local cache digest enabled; rebuild/rewrite every 3600/3600 sec
> 2010/07/29 15:02:57| Store logging disabled
> 2010/07/29 15:02:57| Swap maxSize 15360000 + 8192 KB, estimated 1921024 objects
> 2010/07/29 15:02:57| Target number of buckets: 96051
> 2010/07/29 15:02:57| Using 131072 Store buckets
> 2010/07/29 15:02:57| Max Mem size: 8192 KB
> 2010/07/29 15:02:57| Max Swap size: 15360000 KB
> 2010/07/29 15:02:57| Version 1 of swap file with LFS support detected...
> 2010/07/29 15:02:57| Rebuilding storage in /squid-cache (DIRTY)
> 2010/07/29 15:02:57| Using Least Load store dir selection
> 2010/07/29 15:02:57| Set Current Directory to /tmp
> 2010/07/29 15:02:57| Loaded Icons.
> 2010/07/29 15:02:57| Accepting HTTP connections at [::]:8080, FD 15.
> 2010/07/29 15:02:57| Accepting ICP messages at [::]:3130, FD 16.
> 2010/07/29 15:02:57| Accepting HTCP messages on port 4827, FD 17.
> 2010/07/29 15:02:57| Accepting SNMP messages on [::]:3401, FD 18.
> 2010/07/29 15:02:57| WARNING: Peer looks like this host
> 2010/07/29 15:02:57| Ignoring Sibling proxy-cvk-1.charite.de/8080/3130
> 2010/07/29 15:02:57| Squid modules loaded: 0
> 2010/07/29 15:02:57| Adaptation support is on
> 2010/07/29 15:02:57| Ready to serve requests.
> 2010/07/29 15:02:57| Store rebuilding is 0.87% complete
> 2010/07/29 15:03:01| Done reading /squid-cache swaplog (472746 entries)
> 2010/07/29 15:03:01| Finished rebuilding storage from disk.
> 2010/07/29 15:03:01| 468209 Entries scanned
> 2010/07/29 15:03:01| 0 Invalid entries.
> 2010/07/29 15:03:01| 0 With invalid flags.
> 2010/07/29 15:03:01| 463707 Objects loaded.
> 2010/07/29 15:03:01| 0 Objects expired.
> 2010/07/29 15:03:01| 4502 Objects cancelled.

I'd hazard a guess that these 4502 objects were the ones with "could not
parse headers from on disk structure!" which may not have had time to be
erased between detection and crash.

> 2010/07/29 15:03:01| 0 Duplicate URLs purged.
> 2010/07/29 15:03:01| 0 Swapfile clashes avoided.
> 2010/07/29 15:03:01| Took 4.46 seconds (103937.58 objects/sec).
> 2010/07/29 15:03:01| Beginning Validation Procedure
> 2010/07/29 15:03:02| Completed Validation Procedure
> 2010/07/29 15:03:02| Validated 927437 Entries
> 2010/07/29 15:03:02| store_swap_size = 9418360
> 2010/07/29 15:03:02| storeLateRelease: released 0 objects
> 2010/07/29 15:03:02| Configuring Sibling proxy-cbf-1.charite.de/8080/3130
> 2010/07/29 15:03:02| Configuring Sibling proxy-cbf-2.charite.de/8080/3130
> 2010/07/29 15:03:02| Configuring Sibling proxy-cvk-2.charite.de/8080/3130
>
> Where can I find the reason?

Um. Maybe syslog or wherever the runit script 2>&1 sent it.

> Squid3 runs as the user "proxy":
>
> proxy 8888 38.9 5.2 126356 108980 ? S 15:02 1:26 /usr/sbin/squid3 -N
>
> The runit script is this:
>
> cd /etc/service/squid3
> echo 128 > /proc/sys/kernel/msgmni
> ulimit -n 4096 -c unlimited
> exec 2>&1
> exec /usr/sbin/squid3 -N

Any particular reason why you are running as a runit daemon with
no-daemon mode (-N) enabled?

The little script above is essentially identical to what deamon mode in
Squid does internally, but without a config re-parse on each loop due to
not needing to start from scratch.

>
> The config file specifies:
>
> coredump_dir /tmp
> cache_effective_user proxy
> cache_effective_group proxy
> cache_dir diskd /squid-cache 15000 32 32
>
> Yet I don't see a corefile in /tmp or /squid-cache
>
> # ls -ld /squid-cache/
> drwx------ 35 proxy proxy 4096 2010-07-29 15:03 /squid-cache/
>
> Right now I'm running it in the debugger
>

Amos

-- 
Please be using
   Current Stable Squid 2.7.STABLE9 or 3.1.5
Received on Thu Jul 29 2010 - 14:04:18 MDT

This archive was generated by hypermail 2.2.0 : Thu Jul 29 2010 - 12:00:05 MDT