[squid-users] assertion failed: client_side.cc:1515: "connIsUsable(http->getConn())

Dan Charlesworth dan at getbusi.com
Wed Nov 5 22:56:12 UTC 2014


Terribly sorry, but I only attached half the traceback before. I've
attached two *full* tracebacks this time; one from today and one from
yesterday.

This is from a forward proxy at a school, where this crash happens exactly
once per day between 9:00 and 9:30.



On 5 November 2014 11:42, <dan at getbusi.com> wrote:

>  Hi folks
>
> I think I raised this crash a few months ago, but I can’t locate the
> thread now, so I’m starting a new one now that I actually have a gdb
> backtrace to present.
>
> I suspect it’s to do with one of our external ACLs (we use a few), but the
> backtrace I’ve attached is most undecipherable for me—hopefully someone
> else here can understand it.
>
> Thanks as always
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squid-cache.org/pipermail/squid-users/attachments/20141106/889a55b3/attachment-0001.html>
-------------- next part --------------
#0  0x0000003f28832625 in raise () from /lib64/libc.so.6
No symbol table info available.
#1  0x0000003f28833e05 in abort () from /lib64/libc.so.6
No symbol table info available.
#2  0x000000000056525f in xassert (msg=0x80ba03 "connIsUsable(http->getConn())", file=0x80a8f0 "client_side.cc", line=1515) at debug.cc:566
        __FUNCTION__ = "xassert"
#3  0x000000000053de3f in clientSocketRecipient (node=0x1c306118, http=0x1c30f038, rep=0x1e1c8e90, receivedData=...) at client_side.cc:1515
        context = {p_ = 0x1c30f908}
        mustSendLastChunk = <value optimized out>
#4  0x0000000000545d77 in clientReplyContext::processReplyAccessResult (this=0x1c3109b8, accessAllowed=<value optimized out>) at client_side_reply.cc:2058
        __FUNCTION__ = "processReplyAccessResult"
        localTempBuffer = {flags = {error = <value optimized out>}, length = 0, offset = <value optimized out>, data = 0x1c30fa17 ""}
        buf = 0x1c30f928 "HTTP/1.1 200 OK\r\nServer: nginx/1.6.0\r\nContent-Type: image/jpeg\r\nContent-Length: 1312\r\nLast-Modified: Fri, 27 Sep 2013 03:57:18 GMT\r\nETag: \"5245021e-520\"\r\nAccept-Ranges: bytes\r\nDate: Tue, 04 Nov 2014 2"...
        body_buf = <value optimized out>
        body_size = <value optimized out>
#5  0x00000000005461b3 in clientReplyContext::ProcessReplyAccessResult (rv=..., voidMe=<value optimized out>) at client_side_reply.cc:1961
        me = <value optimized out>
#6  0x00000000006ea36b in ACLChecklist::checkCallback (this=0x6ebbed8, answer=<value optimized out>) at Checklist.cc:161
        callback_ = 0x5461a0 <clientReplyContext::ProcessReplyAccessResult(allow_t, void*)>
        cbdata_ = 0x1c3109b8
        __FUNCTION__ = "checkCallback"
#7  0x000000000058a779 in externalAclHandleReply (data=<value optimized out>, reply=<value optimized out>) at external_acl.cc:1422
        cbdata = 0x6ebbed8
        state = 0x120a3f88
        __FUNCTION__ = "externalAclHandleReply"
        next = <value optimized out>
        entryData = {result = {code = ACCESS_DENIED, kind = 0}, notes = {<Lock> = {_vptr.Lock = 0xaeaa80, count_ = 0}, _vptr.NotePairs = 0xaeaa58, entries = {
              capacity = 16, count = 1, items = 0x1e492000}}, user = {static npos = 18446744073709551615, size_ = 0, len_ = 0, buf_ = 0x0}, password = {
            static npos = 18446744073709551615, size_ = 0, len_ = 0, buf_ = 0x0}, message = {static npos = 18446744073709551615, size_ = 0, len_ = 0, 
            buf_ = 0x0}, tag = {static npos = 18446744073709551615, size_ = 0, len_ = 0, buf_ = 0x0}, log = {static npos = 18446744073709551615, size_ = 512, 
            len_ = 148, 
            buf_ = 0x1e4cd340 "{\"deny_list\":0,\"deny_set\":2,\"categories\":\"[253]\",\"policy_group_id\":\"6\",\"user\":\"17lhilde\",\"user_group\":\"stu2017\",\"deny_type\":\"filesize\",\"set_id\":\"2\"}"}}
        entry = 0x1e4d9988
        label = <value optimized out>
#8  0x00000000005bb63a in helperReturnBuffer (conn=<value optimized out>, buf=<value optimized out>, len=<value optimized out>, flag=<value optimized out>, 
    xerrno=<value optimized out>, data=0x1b0afb8) at helper.cc:858
        response = {result = HelperReply::Error, notes = {<Lock> = {_vptr.Lock = 0xaeaa80, count_ = 0}, _vptr.NotePairs = 0xaeaa58, entries = {capacity = 16, 
              count = 1, items = 0x1de24510}}, whichServer = {cbc = 0x0, lock = 0x0}, other_ = {buf = 0x109a7120 "", size = 0, max_capacity = 247, 
            capacity = 2048, stolen = 0, static CBDATA_MemBuf = 14}}
        callback = 0x58a500 <externalAclHandleReply(void*, HelperReply const&)>
        cbdata = 0x120a3f88
        r = 0x110a7f00
#9  helperHandleRead (conn=<value optimized out>, buf=<value optimized out>, len=<value optimized out>, flag=<value optimized out>, 
    xerrno=<value optimized out>, data=0x1b0afb8) at helper.cc:951
        msg = 0x1b0b170 "ERR log=%7B%22deny_list%22%3A0%2C%22deny_set%22%3A2%2C%22categories%22%3A%22%5B253%5D%22%2C%22policy_group_id%22%3A%226%22%2C%22user%22%3A%2217lhilde%22%2C%22user_group%22%3A%22stu2017%22%2C%22deny_ty"...
        i = 5809408
---Type <return> to continue, or q <return> to quit---
        skip = 1
        t = 0x1b0b26a ""
        srv = 0x1b0afb8
        hlp = 0x1b0adb8
        __FUNCTION__ = "helperHandleRead"
#10 0x00000000006ed746 in AsyncCall::make (this=0x1e3b8790) at AsyncCall.cc:32
        __FUNCTION__ = "make"
#11 0x00000000006f0802 in AsyncCallQueue::fireNext (this=<value optimized out>) at AsyncCallQueue.cc:52
        call = {p_ = 0x1e3b8790}
        __FUNCTION__ = "fireNext"
#12 0x00000000006f0b50 in AsyncCallQueue::fire (this=0x19d9a00) at AsyncCallQueue.cc:38
        made = true
#13 0x00000000005845a4 in EventLoop::runOnce (this=0x7fff578e09a0) at EventLoop.cc:135
        sawActivity = <value optimized out>
        waitingEngine = 0x7fff578e0a20
        __FUNCTION__ = "runOnce"
#14 0x00000000005846f8 in EventLoop::run (this=0x7fff578e09a0) at EventLoop.cc:99
No locals.
#15 0x0000000000602928 in SquidMain (argc=<value optimized out>, argv=0x7fff578e0b98) at main.cc:1528
        WIN32_init_err = 0
        __FUNCTION__ = "SquidMain"
        signalEngine = {<AsyncEngine> = {_vptr.AsyncEngine = 0xaea790}, loop = @0x7fff578e09a0}
        store_engine = {<AsyncEngine> = {_vptr.AsyncEngine = 0xaea7f0}, <No data fields>}
        comm_engine = {<AsyncEngine> = {_vptr.AsyncEngine = 0xaf23b0}, <No data fields>}
        mainLoop = {errcount = 0, last_loop = false, engines = {capacity = 16, count = 4, items = 0x1f874a0}, timeService = 0x7fff578e0a10, 
          primaryEngine = 0x7fff578e0a20, loop_delay = 0, error = false, runOnceResult = false}
        time_engine = {_vptr.TimeEngine = 0xaecb90}
#16 0x00000000006032b8 in SquidMainSafe (argc=<value optimized out>, argv=<value optimized out>) at main.cc:1260
No locals.
#17 main (argc=<value optimized out>, argv=<value optimized out>) at main.cc:1252
No locals.
-------------- next part --------------
#0  0x0000003f28832625 in raise () from /lib64/libc.so.6
#1  0x0000003f28833e05 in abort () from /lib64/libc.so.6
#2  0x000000000056525f in xassert (msg=0x80ba03 "connIsUsable(http->getConn())", file=0x80a8f0 "client_side.cc", line=1515) at debug.cc:566
#3  0x000000000053de3f in clientSocketRecipient (node=0x11671f68, http=0xac1a798, rep=0x60494200, receivedData=...) at client_side.cc:1515
#4  0x0000000000545d77 in clientReplyContext::processReplyAccessResult (this=0xac1be98, accessAllowed=<value optimized out>) at client_side_reply.cc:2058
#5  0x00000000005461b3 in clientReplyContext::ProcessReplyAccessResult (rv=..., voidMe=<value optimized out>) at client_side_reply.cc:1961
#6  0x00000000006ea36b in ACLChecklist::checkCallback (this=0x563b5948, answer=<value optimized out>) at Checklist.cc:161
#7  0x000000000058a779 in externalAclHandleReply (data=<value optimized out>, reply=<value optimized out>) at external_acl.cc:1422
#8  0x00000000005bb63a in helperReturnBuffer (conn=<value optimized out>, buf=<value optimized out>, len=<value optimized out>, flag=<value optimized out>, 
    xerrno=<value optimized out>, data=0x1c467c8) at helper.cc:858
#9  helperHandleRead (conn=<value optimized out>, buf=<value optimized out>, len=<value optimized out>, flag=<value optimized out>, 
    xerrno=<value optimized out>, data=0x1c467c8) at helper.cc:951
#10 0x00000000006ed746 in AsyncCall::make (this=0x4e888920) at AsyncCall.cc:32
#11 0x00000000006f0802 in AsyncCallQueue::fireNext (this=<value optimized out>) at AsyncCallQueue.cc:52
#12 0x00000000006f0b50 in AsyncCallQueue::fire (this=0x1b347b0) at AsyncCallQueue.cc:38
#13 0x00000000005845a4 in EventLoop::runOnce (this=0x7fff37193f70) at EventLoop.cc:135
#14 0x00000000005846f8 in EventLoop::run (this=0x7fff37193f70) at EventLoop.cc:99
#15 0x0000000000602928 in SquidMain (argc=<value optimized out>, argv=0x7fff37194168) at main.cc:1528
#16 0x00000000006032b8 in SquidMainSafe (argc=<value optimized out>, argv=<value optimized out>) at main.cc:1260
#17 main (argc=<value optimized out>, argv=<value optimized out>) at main.cc:1252
(gdb) bt full
#0  0x0000003f28832625 in raise () from /lib64/libc.so.6
No symbol table info available.
#1  0x0000003f28833e05 in abort () from /lib64/libc.so.6
No symbol table info available.
#2  0x000000000056525f in xassert (msg=0x80ba03 "connIsUsable(http->getConn())", file=0x80a8f0 "client_side.cc", line=1515) at debug.cc:566
        __FUNCTION__ = "xassert"
#3  0x000000000053de3f in clientSocketRecipient (node=0x11671f68, http=0xac1a798, rep=0x60494200, receivedData=...) at client_side.cc:1515
        context = {p_ = 0xac1ade8}
        mustSendLastChunk = <value optimized out>
#4  0x0000000000545d77 in clientReplyContext::processReplyAccessResult (this=0xac1be98, accessAllowed=<value optimized out>) at client_side_reply.cc:2058
        __FUNCTION__ = "processReplyAccessResult"
        localTempBuffer = {flags = {error = <value optimized out>}, length = 0, offset = <value optimized out>, data = 0xac1af7f ""}
        buf = 0xac1ae08 "HTTP/1.1 200 OK\r\nAccess-Control-Allow-Origin: *\r\nDate: Wed, 05 Nov 2014 22:22:08 GMT\r\nPragma: no-cache\r\nExpires: Fri, 01 Jan 1990 00:00:00 GMT\r\nCache-Control: no-cache, no-store, must-revalidate\r\nLast"...
        body_buf = <value optimized out>
        body_size = <value optimized out>
#5  0x00000000005461b3 in clientReplyContext::ProcessReplyAccessResult (rv=..., voidMe=<value optimized out>) at client_side_reply.cc:1961
        me = <value optimized out>
#6  0x00000000006ea36b in ACLChecklist::checkCallback (this=0x563b5948, answer=<value optimized out>) at Checklist.cc:161
        callback_ = 0x5461a0 <clientReplyContext::ProcessReplyAccessResult(allow_t, void*)>
        cbdata_ = 0xac1be98
        __FUNCTION__ = "checkCallback"
#7  0x000000000058a779 in externalAclHandleReply (data=<value optimized out>, reply=<value optimized out>) at external_acl.cc:1422
        cbdata = 0x563b5948
        state = 0x5676ae88
        __FUNCTION__ = "externalAclHandleReply"
        next = <value optimized out>
        entryData = {result = {code = ACCESS_DENIED, kind = 0}, notes = {<Lock> = {_vptr.Lock = 0xaeaa80, count_ = 0}, _vptr.NotePairs = 0xaeaa58, entries = {
              capacity = 0, count = 0, items = 0x0}}, user = {static npos = 18446744073709551615, size_ = 0, len_ = 0, buf_ = 0x0}, password = {
            static npos = 18446744073709551615, size_ = 0, len_ = 0, buf_ = 0x0}, message = {static npos = 18446744073709551615, size_ = 0, len_ = 0, 
            buf_ = 0x0}, tag = {static npos = 18446744073709551615, size_ = 0, len_ = 0, buf_ = 0x0}, log = {static npos = 18446744073709551615, size_ = 0, 
            len_ = 0, buf_ = 0x0}}
        entry = 0x60d9e4a8
        label = <value optimized out>
#8  0x00000000005bb63a in helperReturnBuffer (conn=<value optimized out>, buf=<value optimized out>, len=<value optimized out>, flag=<value optimized out>, 
    xerrno=<value optimized out>, data=0x1c467c8) at helper.cc:858
        response = {result = HelperReply::Error, notes = {<Lock> = {_vptr.Lock = 0xaeaa80, count_ = 0}, _vptr.NotePairs = 0xaeaa58, entries = {capacity = 0, 
              count = 0, items = 0x0}}, whichServer = {cbc = 0x0, lock = 0x0}, other_ = {buf = 0x5e01bf90 "", size = 0, max_capacity = 1, capacity = 2048, 
            stolen = 0, static CBDATA_MemBuf = 14}}
        callback = 0x58a500 <externalAclHandleReply(void*, HelperReply const&)>
        cbdata = 0x5676ae88
        r = 0x13161c80
#9  helperHandleRead (conn=<value optimized out>, buf=<value optimized out>, len=<value optimized out>, flag=<value optimized out>, 
    xerrno=<value optimized out>, data=0x1c467c8) at helper.cc:951
        msg = 0x1c46980 "ERR"
        i = 5809408
        skip = 1
        t = 0x1c46983 ""
        srv = 0x1c467c8
---Type <return> to continue, or q <return> to quit---
        hlp = 0x1c465c8
        __FUNCTION__ = "helperHandleRead"
#10 0x00000000006ed746 in AsyncCall::make (this=0x4e888920) at AsyncCall.cc:32
        __FUNCTION__ = "make"
#11 0x00000000006f0802 in AsyncCallQueue::fireNext (this=<value optimized out>) at AsyncCallQueue.cc:52
        call = {p_ = 0x4e888920}
        __FUNCTION__ = "fireNext"
#12 0x00000000006f0b50 in AsyncCallQueue::fire (this=0x1b347b0) at AsyncCallQueue.cc:38
        made = true
#13 0x00000000005845a4 in EventLoop::runOnce (this=0x7fff37193f70) at EventLoop.cc:135
        sawActivity = <value optimized out>
        waitingEngine = 0x7fff37193ff0
        __FUNCTION__ = "runOnce"
#14 0x00000000005846f8 in EventLoop::run (this=0x7fff37193f70) at EventLoop.cc:99
No locals.
#15 0x0000000000602928 in SquidMain (argc=<value optimized out>, argv=0x7fff37194168) at main.cc:1528
        WIN32_init_err = 0
        __FUNCTION__ = "SquidMain"
        signalEngine = {<AsyncEngine> = {_vptr.AsyncEngine = 0xaea790}, loop = @0x7fff37193f70}
        store_engine = {<AsyncEngine> = {_vptr.AsyncEngine = 0xaea7f0}, <No data fields>}
        comm_engine = {<AsyncEngine> = {_vptr.AsyncEngine = 0xaf23b0}, <No data fields>}
        mainLoop = {errcount = 0, last_loop = false, engines = {capacity = 16, count = 4, items = 0x20dd930}, timeService = 0x7fff37193fe0, 
          primaryEngine = 0x7fff37193ff0, loop_delay = 0, error = false, runOnceResult = false}
        time_engine = {_vptr.TimeEngine = 0xaecb90}
#16 0x00000000006032b8 in SquidMainSafe (argc=<value optimized out>, argv=<value optimized out>) at main.cc:1260
No locals.
#17 main (argc=<value optimized out>, argv=<value optimized out>) at main.cc:1252
No locals.


More information about the squid-users mailing list