[squid-users] 100% cpu while http CONNECT & delay pool

From: fedorischev <fedorischev_at_bsu.edu.ru>
Date: Tue, 15 Dec 2009 16:06:37 +0300

Hello, list !

Several days ago I find that squid 3.0STABLE16 eating cpu when client using
HTTP connect and his request is hitting by squid delay pool. I posted message
on list and were noticed to be using squid3.0STABLE20 - last stable version
in 3.0 branch. I tried to upgrade our squid to 3.0STABLE20 and the problem is
still exist.

The problem is described below:

Clients, who using http CONNECT for downloading files & hitting the generic
squid delay pool, increase squid server's CPU loading to 90-100%.

Here is described test:

part of squid.conf:
#-------------------------------------------------------------------------------------------------
acl class0 src 172.16.7.107/32
acl class0_time time T 00:00-23:59
http_access allow class0 class0_time

delay_class 5 1
delay_access 5 allow class0
#16Kbyte-shaper
delay_parameters 5 16000/16000
#-------------------------------------------------------------------------------------------------

172.16.7.107 - it's my test machine.

I tried to download file through squid3.0STABLE20. Top reports 100% CPU
immediately after download started. I used small self-writed utility for
tests that may CONNECT'ing to proxy.

English is not my native tongue, sorry if I describing problem not very well.

Here is some additional information:

squid -v:

Squid Cache: Version 3.0.STABLE20
configure options: '--build=x86_64-redhat-linux-gnu'
'--host=x86_64-redhat-linux-gnu'
'--target=x86_64-redhat-linux-gnu'
'--program-prefix='
'--prefix=/usr'
'--exec-prefix=/usr'
'--bindir=/usr/bin'
'--sbindir=/usr/sbin'
'--sysconfdir=/etc'
'--includedir=/usr/include'
'--libdir=/usr/lib64'
'--libexecdir=/usr/libexec'
'--sharedstatedir=/usr/com'
'--mandir=/usr/share/man'
'--infodir=/usr/share/info'
'--exec_prefix=/usr'
'--bindir=/usr/sbin'
'--libexecdir=/usr/lib64/squid'
'--localstatedir=/var'
'--datadir=/usr/share'
'--sysconfdir=/etc/squid'
'--disable-dependency-tracking'
'--enable-arp-acl'
'--enable-auth=basic,digest,ntlm,negotiate'
'--enable-basic-auth-helpers=LDAP,MSNT,NCSA,PAM,SMB,YP,getpwnam,multi-domain-NTLM,SASL'
'--enable-negotiate-auth-helpers=squid_kerb_auth'
'--enable-cache-digests'
'--enable-cachemgr-hostname=localhost'
'--enable-delay-pools'
'--enable-digest-auth-helpers=password'
'--enable-epoll'
'--enable-external-acl-helpers=ip_user,ldap_group,unix_group,wbinfo_group'
'--enable-icap-client'
'--enable-ident-lookups'
'--enable-linux-netfilter'
'--enable-ntlm-auth-helpers=SMB,fakeauth'
'--enable-referer-log'
'--enable-removal-policies=heap,lru'
'--enable-snmp'
'--enable-ssl'
'--enable-storeio=aufs,diskd,null,ufs'
'--enable-useragent-log'
'--enable-wccpv2'
'--with-aio'
'--with-default-user=squid'
'--with-filedescriptors=16384'
'--with-dl' '--with-openssl=/usr/kerberos'
'--with-pthreads'
'build_alias=x86_64-redhat-linux-gnu'
'host_alias=x86_64-redhat-linux-gnu'
'target_alias=x86_64-redhat-linux-gnu'
'CFLAGS=-fPIE -Os -g -pipe -fsigned-char -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'
'LDFLAGS=-pie'
'CXXFLAGS=-fPIE -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'
'FFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'

[root_at_test-proxy ~]# cat /etc/redhat-release
CentOS release 5.3 (Final)
[root_at_test-proxy ~]# arch
x86_64
[root_at_test-proxy ~]# cat /proc/version
Linux version 2.6.18-128.el5 (mockbuild_at_builder10.centos.org) (gcc version
4.1.2 20080704 (Red Hat 4.1.2-44)) #1 SMP Wed Jan 21 10:41:14 EST 2009

I'll put an email to Henrik Nordstrom with detailed debug info. Do I must make
a bugreport on squid-cache.org or/and do something else ?

Thank for tips & help.
Received on Tue Dec 15 2009 - 13:06:52 MST

This archive was generated by hypermail 2.2.0 : Tue Dec 15 2009 - 12:00:02 MST