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

Creator become randomly unresponsive due to folderChanged() calls in Qt4ProjectManager

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • Qt Creator 2.1.0
    • Qt Creator 2.2.0
    • None
    • 2GHz Macbook, Intel Core Duo, 2GB. OS X 10.5.8

    Description

      Qt Creator becomes randomly unresponsive when it decides to update something related to the filesystem. By sampling the process with OS X tools (see attachment), it was easy to see that the culprit is folderChanged() call, which in turn calls recursiveEnumerate() in a loop. These calls are made a lot when the update is being run, and from the timings file, you can see that the calls take even 70ms, and that there are multiple, consequent calls that take such a long time. Qt Creator eats around 100% of the CPU while these calls are being made, making it unresponsive, so OS X "spinning beachball of death" appears for a few seconds.

      The timings.txt file was produced by starting Qt Creator from shell and applying a three-line patch that measures how long the recursiveEnumerate() calls take, at

      void Qt4PriFileNode::folderChanged(const QString &)
      

      Attachments

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

        Activity

          People

            dt Daniel Teske
            holmsted Lasse Holmstedt
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes