Jump to content

Obsolete:Squid 100 percent cpu headers problem

From Wikitech
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This page contains historical information. It may be outdated or unreliable.
(gdb) bt
#0  httpHeaderGetEntry (hdr=0x2aaaf8a258a8, pos=0x7fffc793aeec) at HttpHeader.c:554
#1  0x000000000044838d in httpHeaderGetList (hdr=0x2aaaf8a258a8, id=HDR_CONNECTION) at HttpHeader.c:746
#2  0x000000000044ad9f in httpHeaderHasConnDir (hdr=0x2aaaf8a258a8, directive=0x4aec59 "keep-alive")
    at HttpHeaderTools.c:170
#3  0x000000000044b5c3 in httpReplyHdrCacheInit (rep=0x2aaaf8a25840) at HttpReply.c:363
#4  0x0000000000421f76 in clientHandleIMSReply (data=0x2aab79c63018, 
    buf=0x2aab79c63430 "HTTP/1.0 304 Not Modified\r\nDate: Fri, 12 Oct 2007 19:21:36 GMT\r\nContent-Type: image/png\r\nLast-Modified: Wed, 03 Oct 2007 17:42:05 GMT\r\nETag: \"591391015\"\r\nAge: 349\r\nX-Cache: HIT from sq4.wikimedia.org\r"..., 
    size=330) at client_side.c:1017
#5  0x0000000000472e44 in storeClientCallback (sc=0x2aab7d4d0198, sz=330) at store_client.c:146
#6  0x000000000047319f in storeClientCopy2 (e=0x11e111b8, sc=0x2aab7d4d0198) at store_client.c:321
#7  0x00000000004733bb in InvokeHandlers (e=0x11e111b8) at store_client.c:594
#8  0x000000000046edcc in storeBufferFlush (e=0x11e111b8) at store.c:1877
#9  0x0000000000442912 in httpAppendBody (httpState=0x1b41e018, buf=0x66b1aa "", len=0, buffer_filled=0) at http.c:711
#10 0x00000000004451f0 in httpReadReply (fd=438, data=<value optimized out>) at http.c:976
#11 0x0000000000428a02 in comm_select (msec=<value optimized out>) at comm_generic.c:264
#12 0x00000000004534f4 in main (argc=<value optimized out>, argv=0x7fffc793b328) at main.c:858
(gdb) frame 6
#6  0x000000000047319f in storeClientCopy2 (e=0x11e111b8, sc=0x2aab7d4d0198) at store_client.c:321
321     store_client.c: No such file or directory.
        in store_client.c
(gdb) print e
$37 = (StoreEntry *) 0x11e111b8
(gdb) print (StoreEntry *)e
$38 = (struct _StoreEntry *) 0x11e111b8
(gdb) print e->mem_obj
$39 = (MemObject *) 0x2aaaf57bfea0
(gdb) print e>mem_obj->url
No symbol "mem_obj" in current context.
(gdb) print e->mem_obj->url
$41 = 0x2aab8bf08700 "http://upload.wikimedia.org/wikipedia/commons/a/ab/Movie.png"

The request looks like:

HEAD http://upload.wikimedia.org/wikipedia/commons/a/ab/Movie.png HTTP/1.1
Host: upload.wikimedia.org
HTTP/1.1 200 OK
Content-Type: image/png
Accept-Ranges: bytes
ETag: "591391015"
Last-Modified: Wed, 03 Oct 2007 17:42:05 GMT
Content-Length: 18878
Date: Wed, 14 Nov 2007 22:27:04 GMT
Server: lighttpd/1.4.18

This seems to be triggered by massive concurrency on a single object. Apparently IE, when loading images from Javascript, can do multiple requests for the same object in parallel, or something, which can trigger this problem.

2007/11/19 18:19:49| httpHeaderUpdate: this is the old header:
2007/11/19 18:19:49| httpHeaderPrint: 0x145a090
2007/11/19 18:19:49|   (0): Date: Mon, 19 Nov 2007 09:24:03 GMT
2007/11/19 18:19:49|   (1): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:19:49|   (2): Last-Modified: Sun, 18 Nov 2007 15:06:47 GMT
2007/11/19 18:19:49|   (3): ETag: "16c020-44a-47405507"
2007/11/19 18:19:49|   (4): Accept-Ranges: bytes
2007/11/19 18:19:49|   (5): Content-Length: 1098
2007/11/19 18:19:49|   (6): Keep-Alive: timeout=15, max=100
2007/11/19 18:19:49|   (7): Connection: Keep-Alive
2007/11/19 18:19:49|   (8): Content-Type: text/x-csrc
2007/11/19 18:19:49| httpHeaderPrint: array size 9
2007/11/19 18:19:49| httpHeaderUpdate: this is the fresh header:
2007/11/19 18:19:49| httpHeaderPrint: 0x145a790
2007/11/19 18:19:49|   (0): Date: Mon, 19 Nov 2007 09:24:04 GMT
2007/11/19 18:19:49|   (1): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:19:49|   (2): Connection: Keep-Alive, Keep-Alive
2007/11/19 18:19:49|   (3): Keep-Alive: timeout=15, max=98
2007/11/19 18:19:49|   (4): ETag: "16c020-44a-47405507"
2007/11/19 18:19:49| httpHeaderPrint: array size 5
2007/11/19 18:19:49|   Considering: 0x145a090: (0): Date: Mon, 19 Nov 2007 09:24:04 GMT
2007/11/19 18:19:49|   Considering: 0x145a090: (1): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:19:49|   Considering: 0x145a090: (2): Connection: Keep-Alive, Keep-Alive
2007/11/19 18:19:49|   Considering: 0x145a090: (3): Keep-Alive: timeout=15, max=98
2007/11/19 18:19:49|   Considering: 0x145a090: (4): ETag: "16c020-44a-47405507"
2007/11/19 18:19:49| httpHeaderUpdate: 0x145a090: has 14 entries
2007/11/19 18:19:49| httpHeaderPrint: 0x145a090
2007/11/19 18:19:49|   (2): Last-Modified: Sun, 18 Nov 2007 15:06:47 GMT
2007/11/19 18:19:49|   (4): Accept-Ranges: bytes
2007/11/19 18:19:49|   (5): Content-Length: 1098
2007/11/19 18:19:49|   (8): Content-Type: text/x-csrc
2007/11/19 18:19:49|   (9): Date: Mon, 19 Nov 2007 09:24:04 GMT
2007/11/19 18:19:49|   (10): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:19:49|   (11): Connection: Keep-Alive, Keep-Alive
2007/11/19 18:19:49|   (12): Keep-Alive: timeout=15, max=98
2007/11/19 18:19:49|   (13): ETag: "16c020-44a-47405507"
2007/11/19 18:19:49| httpHeaderPrint: array size 14
2007/11/19 18:21:30| httpHeaderUpdate: this is the old header:
2007/11/19 18:21:30| httpHeaderPrint: 0x145a090
2007/11/19 18:21:30|   (2): Last-Modified: Sun, 18 Nov 2007 15:06:47 GMT
2007/11/19 18:21:30|   (4): Accept-Ranges: bytes
2007/11/19 18:21:30|   (5): Content-Length: 1098
2007/11/19 18:21:30|   (8): Content-Type: text/x-csrc
2007/11/19 18:21:30|   (9): Date: Mon, 19 Nov 2007 09:24:04 GMT
2007/11/19 18:21:30|   (10): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:21:30|   (11): Connection: Keep-Alive, Keep-Alive
2007/11/19 18:21:30|   (12): Keep-Alive: timeout=15, max=98
2007/11/19 18:21:30|   (13): ETag: "16c020-44a-47405507"
2007/11/19 18:21:30| httpHeaderPrint: array size 14
2007/11/19 18:21:30| httpHeaderUpdate: this is the fresh header:
2007/11/19 18:21:30| httpHeaderPrint: 0x145b300
2007/11/19 18:21:30|   (0): Date: Mon, 19 Nov 2007 09:25:45 GMT
2007/11/19 18:21:30|   (1): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:21:30|   (2): Connection: Keep-Alive, Keep-Alive
2007/11/19 18:21:30|   (3): Keep-Alive: timeout=15, max=99
2007/11/19 18:21:30|   (4): ETag: "16c020-44a-47405507"
2007/11/19 18:21:30| httpHeaderPrint: array size 5
2007/11/19 18:21:30|   Considering: 0x145a090: (0): Date: Mon, 19 Nov 2007 09:25:45 GMT
2007/11/19 18:21:30|   Considering: 0x145a090: (1): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:21:30|   Considering: 0x145a090: (2): Connection: Keep-Alive, Keep-Alive
2007/11/19 18:21:30|   Considering: 0x145a090: (3): Keep-Alive: timeout=15, max=99
2007/11/19 18:21:30|   Considering: 0x145a090: (4): ETag: "16c020-44a-47405507"
2007/11/19 18:21:30| httpHeaderUpdate: 0x145a090: has 19 entries
2007/11/19 18:21:30| httpHeaderPrint: 0x145a090
2007/11/19 18:21:30|   (2): Last-Modified: Sun, 18 Nov 2007 15:06:47 GMT
2007/11/19 18:21:30|   (4): Accept-Ranges: bytes
2007/11/19 18:21:30|   (5): Content-Length: 1098
2007/11/19 18:21:30|   (8): Content-Type: text/x-csrc
2007/11/19 18:21:30|   (14): Date: Mon, 19 Nov 2007 09:25:45 GMT
2007/11/19 18:21:30|   (15): Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-22
2007/11/19 18:21:30|   (16): Connection: Keep-Alive, Keep-Alive
2007/11/19 18:21:30|   (17): Keep-Alive: timeout=15, max=99
2007/11/19 18:21:30|   (18): ETag: "16c020-44a-47405507"
2007/11/19 18:21:30| httpHeaderPrint: array size 19