Search squid archive

vary caching issue (segment violation 2.6/STABLE1, Solaris 10/SPARC)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Howdy all,

[ Excuse me if this is a known problem. I just (re)joined the list and
Google did not show any obvious answers. ]

I have a 2.6STABLE1 compiled/installed on a Solaris 10/SPARC machine.
Squid frequently dies with a segment violation. I compiled Squid with
--enable-poll and --enable-cache-digests options using Sun Studio 8. I
tried compiling Squid with gcc 3.4.2, but it did not make any
difference. I get the same problem.

Below is the stack trace from the core file. It looks like
state->current.key is NULL for some reason when the call to
storeKeyScan is made.

It looks like setting cache_vary to off helps. In any case, Squid
should not crash.

Your help would be appreciated.

Bertold

Reading squid
core file header read successfully
Reading ld.so.1
Reading libcrypt_i.so.1
Reading libm.so.2
Reading libsocket.so.1
Reading libnsl.so.1
Reading libc.so.1
Reading libgen.so.1
Reading libc_psr.so.1
Reading nss_files.so.1
Reading nss_nis.so.1
program terminated by signal ABRT (Abort)
0xff13d5ec: _lwp_kill+0x0008:   bcc,a,pt  %icc,_lwp_kill+0x18   ! 0xff13d5fc
Current function is death
 315       abort();
(dbx) where
 [1] _lwp_kill(0x0, 0x6, 0x0, 0x6, 0xffff0000, 0x0), at 0xff13d5ec
 [2] raise(0x6, 0x0, 0xff121af4, 0x42770, 0xff164278, 0x6), at 0xff0dd884
  [3] abort(0x793de, 0x1, 0x16554c, 0xa6544, 0xff167298, 0x0), at 0xff0bde38
=>[4] death(sig = 11), line 315 in "tools.c"
 [5] __sighndlr(0xb, 0x0, 0xffbf7030, 0x101b50, 0x0, 0x0), at 0xff13c52c
 ---- called from signal handler with signal 11 (SIGSEGV) ------
 [6] storeKeyScan(buf = (nil)), line 59 in "store_key_md5.c"
 [7] storeAddVaryReadOld(data = 0x32b5490, buf = 0x373c6e0 "HTTP/1.0
200 Internal marker object^M\nServer: squid/2.6.STABLE1^M\nDate: Tue,
18 Jul 2006 15:09:36 GMT^M\nContent-Type: x-squid-internal/vary^M
\nExpires: Wed, 19 Jul 2006 18:56:16 GMT^M\nVary:
Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ..., size = 414), line
603 in " store.c"
 [8] storeClientCallback(sc = 0x1286440, sz = 414), line 146 in
"store_client.c"
 [9] storeClientReadHeader(data = 0x1286440, buf = 0x373c6e0
"HTTP/1.0 200 Internal marker object^M\nServer:
squid/2.6.STABLE1^M\nDate: Tue, 18 Jul 2006 15:09:36
GMT^M\nContent-Type: x-squid-internal/vary^M\nExpires: Wed, 19 Jul
2006 18:56:16 GMT^M\nVary: Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ..., len = 532), line 477
in "store_client.c"
 [10] storeUfsReadDone(fd = 24, buf = 0x373c6e0 "HTTP/1.0 200
Internal marker object^M\nServer: squid/2.6.STABLE1^M\nDate: Tue, 18
Jul 2006 15:09:36 GMT^M\nContent-Type:
x-squid-internal/vary^M\nExpires: Wed, 19 Jul 2006 18:56:16
GMT^M\nVary: Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ..., len = 532, errflag =
0, my_data = 0x1379a00), line 224 in "store_io_ufs.c"
 [11] diskHandleRead(fd = 24, data = 0x7eef98), line 380 in "disk.c"
 [12] file_read(fd = 24, buf = 0x373c6e0 "HTTP/1.0 200 Internal
marker object^M\nServer: squid/2.6.STABLE1^M\nDate: Tue, 18 Jul 2006
15:09:36 GMT^M\nContent-Type: x-squid-internal/vary^M\nExpires: Wed,
19 Jul 2006 18:56:16 GMT^M\nVary: Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ..., req_len = 4096U,
file_offset = 0, handler = 0x117998 =
&`squid`store_io_ufs.c`storeUfsReadDone(int fd, const char *buf, int
len, int errflag, void *my_data), client_data = 0x1379a00), line 404
in " disk.c"
 [13] storeUfsRead(SD = 0x289428, sio = 0x1379a00, buf = 0x373c6e0
"HTTP/1.0 200 Internal marker object^M\nServer:
squid/2.6.STABLE1^M\nDate: Tue, 18 Jul 2006 15:09:36
GMT^M\nContent-Type: x-squid-internal/vary^M\nExpires: Wed, 19 Jul
2006 18:56:16 GMT^M\nVary: Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ..., size = 4096U, offset
= 0, callback = 0xf8220 =
&`squid`store_client.c`storeClientReadHeader(void *data, const char
*buf, ssize_t len), callback_data = 0x1286440), line 171 in
"store_io_ufs.c"  [14] storeRead(sio = 0x1379a00, buf = 0x373c6e0
"HTTP/1.0 200 Internal marker object^M\nServer:
squid/2.6.STABLE1^M\nDate: Tue, 18 Jul 2006 15:09:36
GMT^M\nContent-Type: x-squid-internal/vary^M\nExpires: Wed, 19 Jul
2006 18:56:16 GMT^M\nVary: Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ..., size = 4096U, offset
= 0, callback = 0xf8220 =
&`squid`store_client.c`storeClientReadHeader(void *data, const char
*buf, ssize_t len), callback_data = 0x1286440), line 103 in
"store_io.c"
 [15] storeClientFileRead(sc = 0x1286440), line 344 in "store_client.c"
 [16] storeClientCopy3(e = 0x3a07c00, sc = 0x1286440), line 328 in
"store_client.c"
 [17] storeClientCopy2(e = 0x3a07c00, sc = 0x1286440), line 250 in
"store_client.c"
 [18] storeClientCopy(sc = 0x1286440, e = 0x3a07c00, seen_offset = 0,
copy_offset = 0, size = 4096U, buf = 0x373c6e0 "HTTP/1.0 200 Internal
marker object^M\nServer: squid/2.6.STABLE1^M\nDate: Tue, 18 Jul 2006
15:09:36 GMT^M\nContent-Type: x-squid-internal/vary^M\nExpires: Wed,
19 Jul 2006 18:56:16 GMT^M\nVary: Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ..., callback = 0xeffd8 =
&`squid`store.c`storeAddVaryReadOld(void *data, char *buf, ssize_t
size), data = 0x32b5490), line 199 in "store_client.c"
 [19] storeAddVary(url = 0x7b68b8
"http://layout.eurosport.com/c/struct-5.1.css";, log_url = 0x8408a0 "
http://layout.eurosport.com/c/struct-5.1.css";, method = 1U, key =
0x1d374c "Ju\xf5^B^Y \xc7\xd2%;\xdbu{<\xdce", etag = 0x7b9028
""7ac86a-1793-1e682380"", vary = 0x7b7c78 "Accept-Encoding,
Accept-Encoding", vary_headers = 0x3a0b068
"accept-encoding="gzip,deflate", accept-encoding="gzip,deflate"",
accept_encoding = 0x3a0ca40 "gzip,deflate"), line 730 in " store.c"
 [20] storeSetPublicKey(e = 0x3a07278), line 1008 in "store.c"
 [21] httpMakePublic(entry = 0x3a07278), line 114 in "http.c"
 [22] httpProcessReplyHeader(httpState = 0x2988f40, buf = 0x18498c
"HTTP/1.1 200 OK^M\nDate: Tue, 18 Jul 2006 14:20:02 GMT^M\nServer:
Apache^M\nLast-modified: Wed, 07 Jun 2006 08:26:06 GMT^M\nEtag:
"7ac86a-1793-1e682380"^M\nAccept-ranges: bytes^M\nCache-control:
max-age=7200^M\nExpires: Tue, 18 Jul 2006 17:13:38 GMT^M\nVary:
Accept-Encoding^M\nContent-encoding: gzip^M\nContent-length:
1443^M\nContent-type: text/css^M\nVia:  1.1 S1PS^M\nConnection:
close^M\nEtag: "7

(dbx) up
0xff13c52c: __sighndlr+0x000c:  call     %i3
(dbx) up
Current function is storeKeyScan
  59           t[0] = *(buf + (j++));
(dbx) up
Current function is storeAddVaryReadOld
 603                       const cache_key *oldkey =
storeKeyScan(state->current.key);

(dbx) print *state
*state = {
   oe              = 0x3a07c00
   e               = 0x3a072b0
   sc              = 0x1286440
   url             = 0x7b7b90 "http://layout.eurosport.com/c/struct-5.1.css";
   key             = 0x840810 "4A75F5021920C7D2253BDB757B3CDC65"
   vary_headers    = 0x7b7bc8 "accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate""
   accept_encoding = 0x3a0ca88 "gzip,deflate"
   etag            = 0x7b5f50 ""7ac86a-1793-1e682380""
   seen_offset     = 414LL
   buf             = 0x373c6e0 "HTTP/1.0 200 Internal marker
object^M\nServer: squid/2.6.STABLE1^M\nDate: Tue, 18 Jul 2006 15:09:36
GMT^M\nContent-Type: x-squid-internal/vary^M\nExpires: Wed, 19 Jul
2006 18:56:16 GMT^M\nVary: Accept-Encoding^M\n^M\nKey:
21A1EB79BBB3DF2BA65E092498C98F01\nAccept-Encoding: gzip,deflate\nETag:
"7ac86a-1793-1e682380"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate",
accept-encoding="gzip,deflate"\n80"\nVaryData:
accept-encoding="gzip,deflate"\nVaryData:
accept-encoding="gzip,deflate", accept-enco" ...
   buf_size        = 4096U
   buf_offset      = 0
   done            = 0
   current         = {
       key             = (nil)
       etag            = 0x7b6290 ""7ac86a-1793-1e682380""
       accept_encoding = 0x3a0caa0 "gzip,deflate"
       this_key        = 0
       key_used        = 0
       ignore          = 0
   }
}
ac86a-1793-1e682380"^M\nCache-control: max-age=7200^M\nVary:
Accept-Encoding^M\nCache-last-checked: Tue, 18 Jul 2006 15:13:38
GMT^M\nProxy-agent: iP" ..., size = 550), line 498 in " http.c"
 [23] httpReadReply(fd = 18, data = 0x2988f40), line 719 in "http.c"
 [24] comm_select(msec = 473), line 471 in "comm_poll.c"
 [25] main(argc = 2, argv = 0xffbffcdc), line 840 in " main.c"

[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux