Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-27319

Regression: Creator freezes for long time when switching sessions

    XMLWordPrintable

Details

    • c865fe50f2 (qt-creator/qt-creator/master)

    Description

      Steps to reproduce:

      1. Open creator project in Creator.
      2. While project is being loaded, switch the session.
      3. Observe long freeze.

      Main thread (freezes for 75 seconds):

                                                                                                                                                                                                                                               
      1  __futex_abstimed_wait_common                                                                                                                                                                                                     0x7ffff517673a 
      2  pthread_cond_wait * *GLIBC_2.3.2                                                                                                                                                                                                 0x7ffff5178eb0 
      3  QWaitConditionPrivate::wait                                                                                                                                                                     qwaitcondition_unix.cpp     147  0x7ffff5a0c0fc 
      4  QWaitCondition::wait                                                                                                                                                                            qwaitcondition_unix.cpp     220  0x7ffff5a0be0e 
      5  QFutureInterfaceBase::waitForFinished                                                                                                                                                           qfutureinterface.cpp        441  0x7ffff5a0e4f3 
      6  QFuture<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>>::waitForFinished                                                                                                        qfuture.h                   137  0x7fffae245216 
      7  CMakeProjectManager::Internal::FileApiReader::stop                                                                                                                                              fileapireader.cpp           171  0x7fffae240a7f 
      8  CMakeProjectManager::Internal::FileApiReader::~FileApiReader                                                                                                                                    fileapireader.cpp           65   0x7fffae23f85a 
      9  CMakeProjectManager::Internal::CMakeBuildSystem::~CMakeBuildSystem                                                                                                                              cmakebuildsystem.cpp        216  0x7fffae113bb8 
      10 CMakeProjectManager::Internal::CMakeBuildSystem::~CMakeBuildSystem                                                                                                                              cmakebuildsystem.cpp        216  0x7fffae113c5c 
      11 CMakeProjectManager::CMakeBuildConfiguration::~CMakeBuildConfiguration                                                                                                                          cmakebuildconfiguration.cpp 1300 0x7fffae0df9fc 
      12 CMakeProjectManager::CMakeBuildConfiguration::~CMakeBuildConfiguration                                                                                                                          cmakebuildconfiguration.cpp 1301 0x7fffae0dfa6c 
      13 qDeleteAll<QList<ProjectExplorer::BuildConfiguration *>::const_iterator>                                                                                                                        qalgorithms.h               59   0x7fffc5763eee 
      14 qDeleteAll<QList<ProjectExplorer::BuildConfiguration *>>                                                                                                                                        qalgorithms.h               67   0x7fffc5762cdb 
      15 ProjectExplorer::Target::~Target                                                                                                                                                                target.cpp                  214  0x7fffc5759650 
      16 ProjectExplorer::Target::~Target                                                                                                                                                                target.cpp                  217  0x7fffc57596c0 
      17 std::default_delete<ProjectExplorer::Target>::operator()                                                                                                                                        unique_ptr.h                85   0x7fffc55f14a2 
      18 std::unique_ptr<ProjectExplorer::Target, std::default_delete<ProjectExplorer::Target>>::~unique_ptr                                                                                             unique_ptr.h                361  0x7fffc55ed9e8 
      19 std::_Destroy<std::unique_ptr<ProjectExplorer::Target, std::default_delete<ProjectExplorer::Target>>>                                                                                           stl_construct.h             151  0x7fffc55fa122 
      20 std::_Destroy_aux<false>::__destroy<std::unique_ptr<ProjectExplorer::Target, std::default_delete<ProjectExplorer::Target>> *>                                                                   stl_construct.h             163  0x7fffc55f7838 
      21 std::_Destroy<std::unique_ptr<ProjectExplorer::Target, std::default_delete<ProjectExplorer::Target>> *>                                                                                         stl_construct.h             196  0x7fffc55f485f 
      22 std::_Destroy<std::unique_ptr<ProjectExplorer::Target, std::default_delete<ProjectExplorer::Target>> *, std::unique_ptr<ProjectExplorer::Target, std::default_delete<ProjectExplorer::Target>>> alloc_traits.h              854  0x7fffc55f0b8b 
      23 std::vector<std::unique_ptr<ProjectExplorer::Target, std::default_delete<ProjectExplorer::Target>>>::~vector                                                                                    stl_vector.h                680  0x7fffc55ed02f 
      24 ProjectExplorer::ProjectPrivate::~ProjectPrivate                                                                                                                                                project.cpp                 213  0x7fffc55df6a8 
      25 ProjectExplorer::Project::~Project                                                                                                                                                              project.cpp                 231  0x7fffc55dfa28 
      26 CMakeProjectManager::CMakeProject::~CMakeProject                                                                                                                                                cmakeproject.cpp            67   0x7fffae19a9ee 
      27 CMakeProjectManager::CMakeProject::~CMakeProject                                                                                                                                                cmakeproject.cpp            67   0x7fffae19aa0a 
      28 qDeleteAll<QList<ProjectExplorer::Project *>::const_iterator>                                                                                                                                   qalgorithms.h               59   0x7fffc573a58a 
      29 qDeleteAll<QList<ProjectExplorer::Project *>>                                                                                                                                                   qalgorithms.h               67   0x7fffc5738f98 
      30 ProjectExplorer::SessionManager::removeProjects                                                                                                                                                 session.cpp                 765  0x7fffc57302fc 
      31 ProjectExplorer::SessionManager::loadSession                                                                                                                                                    session.cpp                 1113 0x7fffc5732eed 
      32 ProjectExplorer::ProjectExplorerPluginPrivate::setSession                                                                                                                                       projectexplorer.cpp         4196 0x7fffc562b755 
      33 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QAction *>, void, void (ProjectExplorer::ProjectExplorerPluginPrivate:: *)(QAction *)>::call                                  qobjectdefs_impl.h          152  0x7fffc5657fdc 
      34 QtPrivate::FunctionPointer<void (ProjectExplorer::ProjectExplorerPluginPrivate:: *)(QAction *)>::call<QtPrivate::List<QAction *>, void>                                                         qobjectdefs_impl.h          185  0x7fffc56538f8 
      35 QtPrivate::QSlotObject<void (ProjectExplorer::ProjectExplorerPluginPrivate:: *)(QAction *), QtPrivate::List<QAction *>, void>::impl                                                             qobjectdefs_impl.h          395  0x7fffc564ea1f 
      36 QtPrivate::QSlotObjectBase::call                                                                                                                                                                qobjectdefs_impl.h          375  0x7ffff57c8cc3 
      37 doActivate<false>                                                                                                                                                                               qobject.cpp                 3912 0x7ffff582fddf 
      38 QMetaObject::activate                                                                                                                                                                           qobject.cpp                 3972 0x7ffff5828737 
      39 QActionGroup::triggered                                                                                                                                                                         moc_qactiongroup.cpp        266  0x7ffff62af1d1 
      40 QActionGroup::_q_actionTriggered                                                                                                                                                                qactiongroup.cpp            79   0x7ffff684acac 
      41 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (QActionGroup:: *)()>::call(void (QActionGroup:: *)(), QActionGroup *, void * *)                                 qobjectdefs_impl.h          152  0x7ffff684da27 
      42 QtPrivate::FunctionPointer<void (QActionGroup:: *)()>::call<QtPrivate::List<>, void>(void (QActionGroup:: *)(), QActionGroup *, void * *)                                                       qobjectdefs_impl.h          185  0x7ffff684cf96 
      43 QtPrivate::QSlotObject<void (QActionGroup:: *)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void * *, bool *)                                                qobjectdefs_impl.h          395  0x7ffff684c6e3 
      44 QtPrivate::QSlotObjectBase::call                                                                                                                                                                qobjectdefs_impl.h          375  0x7ffff57c8cc3 
      45 doActivate<false>                                                                                                                                                                               qobject.cpp                 3912 0x7ffff582fddf 
      46 QMetaObject::activate                                                                                                                                                                           qobject.cpp                 3972 0x7ffff5828737 
      47 QAction::triggered                                                                                                                                                                              moc_qaction.cpp             421  0x7ffff6848e36 
      48 QAction::activate                                                                                                                                                                               qaction.cpp                 1132 0x7ffff68478a9 
      49 QMenuPrivate::activateCausedStack                                                                                                                                                               qmenu.cpp                   1410 0x7ffff7145744 
      50 QMenuPrivate::activateAction                                                                                                                                                                    qmenu.cpp                   1487 0x7ffff7145b49 
      51 QMenu::mouseReleaseEvent                                                                                                                                                                        qmenu.cpp                   2991 0x7ffff714a70d 
      52 QWidget::event                                                                                                                                                                                  qwidget.cpp                 8697 0x7ffff6f1502b 
      53 QMenu::event                                                                                                                                                                                    qmenu.cpp                   3116 0x7ffff714b0c1 
      54 QApplicationPrivate::notify_helper                                                                                                                                                              qapplication.cpp            3409 0x7ffff6e9445a 
      55 QApplication::notify                                                                                                                                                                            qapplication.cpp            2872 0x7ffff6e9223a 
      56 QCoreApplication::notifyInternal2                                                                                                                                                               qcoreapplication.cpp        1067 0x7ffff57aaf76 
      57 QCoreApplication::sendSpontaneousEvent                                                                                                                                                          qcoreapplication.cpp        1487 0x7ffff57ab982 
      58 QApplicationPrivate::sendMouseEvent                                                                                                                                                             qapplication.cpp            2409 0x7ffff6e90bc4 
      59 QWidgetWindow::handleMouseEvent                                                                                                                                                                 qwidgetwindow.cpp           575  0x7ffff6f43ea0 
      60 QWidgetWindow::event                                                                                                                                                                            qwidgetwindow.cpp           295  0x7ffff6f42eea 
      61 QApplicationPrivate::notify_helper                                                                                                                                                              qapplication.cpp            3409 0x7ffff6e9445a 
      62 QApplication::notify                                                                                                                                                                            qapplication.cpp            2767 0x7ffff6e91a03 
      63 QCoreApplication::notifyInternal2                                                                                                                                                               qcoreapplication.cpp        1067 0x7ffff57aaf76 
      64 QCoreApplication::sendSpontaneousEvent                                                                                                                                                          qcoreapplication.cpp        1487 0x7ffff57ab982 
      65 QGuiApplicationPrivate::processMouseEvent                                                                                                                                                       qguiapplication.cpp         2260 0x7ffff63bb7fa 
      66 QGuiApplicationPrivate::processWindowSystemEvent                                                                                                                                                qguiapplication.cpp         2011 0x7ffff63bac6b 
      67 QWindowSystemInterface::sendWindowSystemEvents                                                                                                                                                  qwindowsysteminterface.cpp  1166 0x7ffff6431303 
      68 xcbSourceDispatch                                                                                                                                                                               qxcbeventdispatcher.cpp     93   0x7fffe3dc9e57 
      69 g_main_context_dispatch                                                                                                                                                                                                          0x7ffff245205f 
      70 g_main_context_iterate.constprop                                                                                                                                                                                                 0x7ffff24a72a8 
      71 g_main_context_iteration                                                                                                                                                                                                         0x7ffff244f853 
      72 QEventDispatcherGlib::processEvents                                                                                                                                                             qeventdispatcher_glib.cpp   429  0x7ffff5b1c580 
      73 QXcbGlibEventDispatcher::processEvents                                                                                                                                                          qxcbeventdispatcher.cpp     132  0x7fffe3dca094 
      74 QEventLoop::processEvents                                                                                                                                                                       qeventloop.cpp              139  0x7ffff57bd3dd 
      75 QEventLoop::exec                                                                                                                                                                                qeventloop.cpp              230  0x7ffff57bd70d 
      76 QCoreApplication::exec                                                                                                                                                                          qcoreapplication.cpp        1382 0x7ffff57ab78d 
      77 QGuiApplication::exec                                                                                                                                                                           qguiapplication.cpp         1874 0x7ffff63ba564 
      78 QApplication::exec                                                                                                                                                                              qapplication.cpp            2617 0x7ffff6e913dd 
      79 main                                                                                                                                                                                            main.cpp                    795  0x40e0fc       
      

      Working thread (freezes for 70 seconds):

      1  QString::size                                                                                                                                                                                                                                                                                                                                                                                                             qstring.h                410 0x7ffff56bdc56 
      2  stringList_contains<QStringView>                                                                                                                                                                                                                                                                                                                                                                                          qstringlist.cpp          321 0x7ffff5918bbb 
      3  QtPrivate::QStringList_contains                                                                                                                                                                                                                                                                                                                                                                                           qstringlist.cpp          352 0x7ffff5918106 
      4  QListSpecialMethods<QString>::contains                                                                                                                                                                                                                                                                                                                                                                                    qstringlist.h            157 0x7ffff7a57b39 
      5  Utils::MimeXMLProvider::addAllMimeTypeNames                                                                                                                                                                                                                                                                                                                                                                               mimeprovider.cpp         996 0x7ffff7d046d8 
      6  Utils::MimeXMLProvider::addFileNameMatches                                                                                                                                                                                                                                                                                                                                                                                mimeprovider.cpp         784 0x7ffff7d03012 
      7  Utils::MimeDatabasePrivate::findByFileName                                                                                                                                                                                                                                                                                                                                                                                mimedatabase.cpp         249 0x7ffff7cebab9 
      8  Utils::MimeDatabasePrivate::mimeTypeForFileName                                                                                                                                                                                                                                                                                                                                                                           mimedatabase.cpp         237 0x7ffff7ceb8da 
      9  Utils::MimeDatabase::mimeTypesForFileName                                                                                                                                                                                                                                                                                                                                                                                 mimedatabase.cpp         711 0x7ffff7cee120 
      10 Utils::mimeTypesForFileName                                                                                                                                                                                                                                                                                                                                                                                               mimeutils.cpp            80  0x7ffff7d1813b 
      11 (anonymous namespace)::generateRawProjectParts                                                                                                                                                                                                                                                                                                                                                                            fileapidataextractor.cpp 404 0x7fffae1f3e1f 
      12 CMakeProjectManager::Internal::extractData                                                                                                                                                                                                                                                                                                                                                                                fileapidataextractor.cpp 757 0x7fffae1f703b 
      13 operator()                                                                                                                                                                                                                                                                                                                                                                                                                fileapireader.cpp        268 0x7fffae2412d9 
      14 Utils::Internal::runAsyncQFutureInterfaceDispatch<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>, CMakeProjectManager::Internal::FileApiReader::endState(const Utils::FilePath&, bool)::<lambda(QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>>&)>>(std::true_type, QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>> &, struct {...} &&) runextensions.h          257 0x7fffae244742 
      15 Utils::Internal::runAsyncMemberDispatch<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>, CMakeProjectManager::Internal::FileApiReader::endState(const Utils::FilePath&, bool)::<lambda(QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>>&)>>(QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>> &, struct {...} &&)                           runextensions.h          274 0x7fffae244702 
      16 Utils::Internal::runAsyncImpl<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>, CMakeProjectManager::Internal::FileApiReader::endState(const Utils::FilePath&, bool)::<lambda(QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>>&)>>(QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>> &, struct {...} &&)                                     runextensions.h          303 0x7fffae2446b7 
      17 Utils::Internal::AsyncJob<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>, CMakeProjectManager::Internal::FileApiReader::endState(const Utils::FilePath&, bool)::<lambda(QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>>&)>>::runHelper<0>(std::index_sequence)                                                                                                           runextensions.h          372 0x7fffae244624 
      18 Utils::Internal::AsyncJob<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>, CMakeProjectManager::Internal::FileApiReader::endState(const Utils::FilePath&, bool)::<lambda(QFutureInterface<std::shared_ptr<CMakeProjectManager::Internal::FileApiQtcData>>&)>>::run(void)                                                                                                                                   runextensions.h          352 0x7fffae24455b 
      19 QThreadPoolThread::run                                                                                                                                                                                                                                                                                                                                                                                                    qthreadpool.cpp          99  0x7ffff59ff86e 
      20 operator()                                                                                                                                                                                                                                                                                                                                                                                                                qthread_unix.cpp         356 0x7ffff59f83ac 
      21 (anonymous namespace)::terminate_on_exception<QThreadPrivate::start(void *)::<lambda()>>(struct {...} &&)                                                                                                                                                                                                                                                                                                                 qthread_unix.cpp         292 0x7ffff59f9304 
      22 QThreadPrivate::start                                                                                                                                                                                                                                                                                                                                                                                                     qthread_unix.cpp         315 0x7ffff59f8446 
      23 start_thread                                                                                                                                                                                                                                                                                                                                                                                                                                           0x7ffff5179b1a 
      24 clone3                                                                                                                                                                                                                                                                                                                                                                                                                                                 0x7ffff51fe650 
      

      Attachments

        For Gerrit Dashboard: QTCREATORBUG-27319
        # Subject Branch Project Status CR V

        Activity

          People

            con Eike Ziller
            jkobus Jarek Kobus
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes