Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-37424

Assertion failure in QHttpNetworkConnectionChannel

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1: Critical
    • Resolution: Done
    • Affects Version/s: 5.3.0 Alpha
    • Fix Version/s: 5.3.0 Beta1
    • Component/s: Network: HTTP
    • Labels:
      None
    • Environment:
      Fedora 20 64-bit, latest qt5-stable
    • Commits:
      2bbdc6358f73ce167140bace821d606e720c0ded

      Description

      qtdeclarative/tests/auto/quick/qquickpixmapcache/tst_qquickpixmapcache fails randomly because of an assertion failure in QHttpNetworkConnectionChannel::handleUnexpectedEOF(). I can randomly reproduce the failure by putting some remarkable stress on the system while running the auto test.

      Test output and backtrace:

      (gdb) r
      Starting program: /home/jpnurmi/Projects/qt5-stable/qtdeclarative/tests/auto/quick/qquickpixmapcache/tst_qquickpixmapcache single
      [Thread debugging using libthread_db enabled]
      Using host libthread_db library "/lib64/libthread_db.so.1".
      [New Thread 0x7fffe55d9700 (LWP 6184)]
      Qt: gdb: -nograb added to command-line options.
      	 Use the -dograb option to enforce grabbing.
      [New Thread 0x7fffdbbc1700 (LWP 6189)]
      ********* Start testing of tst_qquickpixmapcache *********
      Config: Using QtTest library 5.3.0, Qt 5.3.0
      [New Thread 0x7fffdabc0700 (LWP 6190)]
      PASS   : tst_qquickpixmapcache::initTestCase()
      PASS   : tst_qquickpixmapcache::single(local)
      PASS   : tst_qquickpixmapcache::single(local)
      [New Thread 0x7fffd96c9700 (LWP 6191)]
      [New Thread 0x7fffd8cbc700 (LWP 6192)]
      PASS   : tst_qquickpixmapcache::single(remote)
      QFATAL : tst_qquickpixmapcache::single(remote) ASSERT: "reply" in file access/qhttpnetworkconnectionchannel.cpp, line 224
      FAIL!  : tst_qquickpixmapcache::single(remote) Received a fatal error.
         Loc: [Unknown file(0)]
      Totals: 4 passed, 1 failed, 0 skipped
      ********* Finished testing of tst_qquickpixmapcache *********
      
      Program received signal SIGABRT, Aborted.
      [Switching to Thread 0x7fffd8cbc700 (LWP 6192)]
      0x00007ffff46e8c39 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
      56	  return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
      (gdb) bt
      #0  0x00007ffff46e8c39 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
      #1  0x00007ffff46ea348 in __GI_abort () at abort.c:89
      #2  0x00007ffff57ba435 in qt_message_fatal (context=..., message=...) at global/qlogging.cpp:1333
      #3  0x00007ffff57b7f3e in QMessageLogger::fatal (this=0x7fffd8cbb2c0, msg=0x7ffff5b18218 "ASSERT: \"%s\" in file %s, line %d") at global/qlogging.cpp:662
      #4  0x00007ffff57b25d4 in qt_assert (assertion=0x7ffff68416eb "reply", file=0x7ffff68416a8 "access/qhttpnetworkconnectionchannel.cpp", line=224) at global/qglobal.cpp:2124
      #5  0x00007ffff67988e5 in QHttpNetworkConnectionChannel::handleUnexpectedEOF (this=0x7fffc4002eb8) at access/qhttpnetworkconnectionchannel.cpp:224
      #6  0x00007ffff679d9a1 in QHttpProtocolHandler::_q_receiveReply (this=0x7fffc4004640) at access/qhttpprotocolhandler.cpp:86
      #7  0x00007ffff679884a in QHttpNetworkConnectionChannel::_q_receiveReply (this=0x7fffc4002eb8) at access/qhttpnetworkconnectionchannel.cpp:212
      #8  0x00007ffff679c52d in QHttpNetworkConnectionChannel::qt_static_metacall (_o=0x7fffc4002eb8, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffc40049a0)
          at .moc/moc_qhttpnetworkconnectionchannel_p.cpp:100
      #9  0x00007ffff5a7b175 in QMetaCallEvent::placeMetaCall (this=0x7fffc4005d60, object=0x7fffc4002eb8) at kernel/qobject.cpp:487
      #10 0x00007ffff5a7c1bc in QObject::event (this=0x7fffc4002eb8, e=0x7fffc4005d60) at kernel/qobject.cpp:1241
      #11 0x00007ffff5a40a38 in QCoreApplicationPrivate::notify_helper (this=0x623d40, receiver=0x7fffc4002eb8, event=0x7fffc4005d60) at kernel/qcoreapplication.cpp:1054
      #12 0x00007ffff5a406fa in QCoreApplication::notify (this=0x7fffffffdbb0, receiver=0x7fffc4002eb8, event=0x7fffc4005d60) at kernel/qcoreapplication.cpp:999
      #13 0x00007ffff603523e in QGuiApplication::notify (this=0x7fffffffdbb0, object=0x7fffc4002eb8, event=0x7fffc4005d60) at kernel/qguiapplication.cpp:1457
      #14 0x00007ffff5a40602 in QCoreApplication::notifyInternal (this=0x7fffffffdbb0, receiver=0x7fffc4002eb8, event=0x7fffc4005d60) at kernel/qcoreapplication.cpp:937
      #15 0x00007ffff5a442eb in QCoreApplication::sendEvent (receiver=0x7fffc4002eb8, event=0x7fffc4005d60) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:237
      #16 0x00007ffff5a4195f in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x7fffd00036a0) at kernel/qcoreapplication.cpp:1541
      #17 0x00007ffff5a41310 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1399
      #18 0x00007ffff5ab79c8 in postEventSourceDispatch (s=0x7fffc40012c0) at kernel/qeventdispatcher_glib.cpp:279
      #19 0x00007ffff2fdd2a6 in g_main_dispatch (context=0x7fffc4000990) at gmain.c:3066
      #20 g_main_context_dispatch (context=context@entry=0x7fffc4000990) at gmain.c:3642
      #21 0x00007ffff2fdd628 in g_main_context_iterate (context=context@entry=0x7fffc4000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3713
      #22 0x00007ffff2fdd6dc in g_main_context_iteration (context=0x7fffc4000990, may_block=1) at gmain.c:3774
      #23 0x00007ffff5ab8169 in QEventDispatcherGlib::processEvents (this=0x7fffc40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
      #24 0x00007ffff5a3d2b6 in QEventLoop::processEvents (this=0x7fffd8cbbce0, flags=...) at kernel/qeventloop.cpp:136
      #25 0x00007ffff5a3d599 in QEventLoop::exec (this=0x7fffd8cbbce0, flags=...) at kernel/qeventloop.cpp:212
      #26 0x00007ffff57c5e9e in QThread::exec (this=0x7fffd00048a0) at thread/qthread.cpp:511
      #27 0x00007ffff57c6044 in QThread::run (this=0x7fffd00048a0) at thread/qthread.cpp:578
      #28 0x00007ffff57cd413 in QThreadPrivate::start (arg=0x7fffd00048a0) at thread/qthread_unix.cpp:345
      #29 0x00007ffff529ef33 in start_thread (arg=0x7fffd8cbc700) at pthread_create.c:309
      #30 0x00007ffff47a7ded in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
      

        Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            peter-har Peter Hartmann
            Reporter:
            jpnurmi J-P Nurmi
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes