assert(e->mem_status == NOT_IN_MEMORY) versus TCP_MEM_HIT.

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Fri, 25 Sep 2009 23:40:08 +1200

This is the current blocker on trunk...

Attempting to swap-in an object which is already in memory and on disk.

Program received signal SIGABRT, Aborted.

#3 0x080884c0 in xassert (msg=0x81e0480 "e->mem_status ==
NOT_IN_MEMORY", file=0x81e0551 "store_swapin.cc", line=47) at debug.cc:557
#4 0x08120d9c in storeSwapInStart (sc=0x86b6c38) at store_swapin.cc:47
#5 0x08118e58 in store_client::startSwapin (this=0x86b6c38) at
store_client.cc:393
#6 0x081191a5 in store_client::doCopy (this=0x86b6c38,
anEntry=0xb6f3fb90) at store_client.cc:375
#7 0x08119267 in storeClientCopy2 (e=0xb6f3fb90, sc=0x86b6c38) at
store_client.cc:331
#8 0x0807a867 in clientReplyContext::doGetMoreData (this=0xb6d39018) at
client_side_reply.cc:1679
#9 0x0807b04b in clientReplyContext::identifyStoreObject
(this=0xb6d39018) at client_side_reply.cc:1457
#10 0x0807d997 in ClientHttpRequest::httpStart (this=0x86e6c98) at
client_side_request.cc:1121
#11 0x0807e11d in ClientHttpRequest::doCallouts (this=0x86e6c98) at
client_side_request.cc:1323
#12 0x0807f5ff in ClientRequestContext::clientRedirectDone (this=0x86f4050,
     result=0xb79a800a "http://web.mac.com/tomm..._rollover_0.png") at
client_side_request.cc:1047
#13 0x080fe820 in redirectHandleReply (data=0x86f81d8,
     reply=0xb79a800a "http://web.mac.com/tomm..._rollover_0.png") at
redirect.cc:81
#14 0x080bf55f in helperHandleRead (fd=9,
     buf=0xb79a8008 "0 http://web.mac.com/tomm..._rollover_0.png",
len=148, flag=COMM_OK, xerrno=0, data=0x84283a8) at helper.cc:913
#15 0x08146d75 in CommIoCbPtrFun::dial (this=0x8761d6c) at CommCalls.cc:183
#16 0x081396e3 in AsyncCall::make (this=0x8761d50) at AsyncCall.cc:34

(gdb) f 4
#4 0x08120d9c in storeSwapInStart (sc=0x86b6c38) at store_swapin.cc:47
47 in store_swapin.cc

(gdb) p *sc
$9 = {cmp_offset = 0, entry = 0xb6f3fb90, swapin_sio = {p_ = 0x0}, flags
= {disk_io_pending = 0, store_copying = 1, copy_event_pending = 0},
   delayId = {pool_ = 0, compositeId = {p_ = 0x0}, markedAsNoDelay =
false}, node = {data = 0x86b6c38, prev = 0x0, next = 0x0}, copyInto = {
     flags = {error = 0}, length = 4096, offset = 0, data = 0xb6d5b024
""}, static CBDATA_store_client = 26, type = 2, object_ok = true,
   _callback = {callback_handler = 0x807ba30
<clientReplyContext::CacheHit(void*, StoreIOBuffer)>, callback_data =
0xb6d39018}}

(gdb) p *e
$2 = {<_hash_link> = {key = 0xb6eedc48, next = 0xb6f86074},
_vptr.StoreEntry = 0x81de6c8, mem_obj = 0x8618b28, repl = {data =
0xb701001c},
   timestamp = 1253865128, lastref = 1253865618, expires = 1253865188,
lastmod = 1237898828, swap_file_sz = 10030, refcount = 474,
   flags = 1122, swap_filen = 97209, swap_dirn = 0, lock_count = 1,
mem_status = IN_MEMORY, ping_status = PING_NONE, store_status = STORE_OK,
   swap_status = SWAPOUT_DONE, static pool = 0x8616058}

(gdb) p *(e->mem_obj)
$10 = {method = {static RequestMethodStr = 0x8235460, theMethod =
METHOD_GET, theImage = {static npos = <optimized out>, size_ = 0, len_ = 0,
       buf_ = 0x0}},
   url = 0x876cc18 "http://web.mac.com/tomm..._rollover_0.png", data_hdr
= {inmem_hi = 3886, nodes = {head = 0x84abf38, elements = 1}}, inmem_lo
= 0, clients = {head = 0x86b6c58,
     tail = 0x86b6c58}, nclients = 1, swapout = {queue_offset = 0,
memnode = 0x0, sio = {p_ = 0x0}}, request = 0x0, start_ping = {tv_sec = 0,
     tv_usec = 0}, ping_reply_callback = 0, ircb_data = 0x0, abort =
{callback = 0, data = 0x0},
   log_url = 0x876c080
"http://www.restorativejustice.com/..._rollover_0.png",
   repl = {data = 0xb76fd4c0}, id = 0, object_sz = 9820, swap_hdr_sz =
210, vary_headers = 0x0, _reply = 0x861d208, deferredReads = {
     deferredReads = {head = 0x0}}}

(gdb) p *((*(e->mem_obj))->data_hdr->nodes->head)->data
$17 = {nodeBuffer = {flags = {error = 0}, length = 3886, offset = 0,
     data = 0xb6a080dc "HTTP/1.0 200 OK\r\nAge: 0\r\nDate: Wed, 05 Aug
2009 19:38:40 GMT\r\nContent-Length: 9376\r\nContent-Type:
image/png\r\nCache-Control: max-age=60, must-revalidate\r\nConnection:
keep-alive\r\nProxy-Connection: keep-"...},
   data = "HTTP/1.0 200 OK\r\nAge: 0\r\nDate: Wed, 05 Aug 2009 19:38:40
GMT\r\nContent-Length: 9376\r\nContent-Type: image/png\r\nCache-Control:
max-age=60, must-revalidate\r\nConnection:
keep-alive\r\nProxy-Connection: keep-alive\r\nServer:
AppleIDiskServer-1E4123\r\nx-responding-server: hpng034\r\nX-dmUser:
tomm...\r\nETag:
\"u-1g3s18hn-9d2p-1d9dyjlk2s-11hl44zdvg0\"\r\nLast-Modified: Tue, 24 Mar
2009 12:47:08 GMT\r\nVia: 1.1 hpcache003 (NetCache NetApp/6.0.5P2D2)\r\n\r\n

Amos

-- 
Please be using
   Current Stable Squid 2.7.STABLE7 or 3.0.STABLE19
   Current Beta Squid 3.1.0.13
Received on Fri Sep 25 2009 - 11:40:22 MDT

This archive was generated by hypermail 2.2.0 : Sat Sep 26 2009 - 12:00:09 MDT