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

tst_qfilesystemmodel::rows{Inserted,Removed} fails off-by-one on 64-bit ARM Macs in the CI

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P0: Blocker
    • None
    • Some future release
    • None

    Description

       127015: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::AscendingOrder 1) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 6
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::DescendingOrder 1) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 6
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::AscendingOrder 2) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 7
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::DescendingOrder 2) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 7
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::AscendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 8
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::DescendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 8
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 1) QTestLib: This test case check ("QTest::currentTestFailed() || ((((model->rowCount(root))) == (oldCount - count)))") failed because the requested timeout (5000 ms) was too short, 11300 ms would have been sufficient this time.
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::DescendingOrder 1) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 4
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 2) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 3
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::DescendingOrder 2) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 3
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 2
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::DescendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 2
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       Totals: 56 passed, 12 failed, 8 skipped, 0 blacklisted, 286940ms
       
       
       127144: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::AscendingOrder 1) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 6
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 31687ms
       
       
       127157: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::AscendingOrder 1) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 6
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 27300ms
       
       
       127170: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::AscendingOrder 1) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 6
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 27044ms
       
       
       127194: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::DescendingOrder 1) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 6
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 28899ms
       
       
       127218: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsInserted(Qt::AscendingOrder 2) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount + count)         : 7
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(459)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 22671ms
       
       
       127319: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 2
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 23842ms
       
       
       127332: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 2
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 23067ms
       
       
       127345: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 2
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 25754ms
       
       
       127358: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 3) Compared values are not the same
          Actual   (((model->rowCount(root)))): 5
          Expected (oldCount - count)         : 2
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 27236ms
       
       
       127636: ********* Start testing of tst_QFileSystemModel *********
       FAIL!  : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 3) QTestLib: This test case check ("QTest::currentTestFailed() || ((((model->rowCount(root))) == (oldCount - count)))") failed because the requested timeout (5000 ms) was too short, 9450 ms would have been sufficient this time.
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(535)]
       INFO   : tst_QFileSystemModel::rowsRemoved(Qt::AscendingOrder 3) QVERIFY(dead.remove())
          Loc: [/Users/qt/work/qt/qtbase/tests/auto/gui/itemmodels/qfilesystemmodel/tst_qfilesystemmodel.cpp(160)]
       Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 15610ms
       
      
      Build log: https://testresults.qt.io/logs/qt/qtbase/3756e493b387b4c6910b645b3a5845bc0545e1ca/MacOSMacOS_11_00arm64MacOSMacOS_11_00arm64Clangqtci-macos-11.0-arm64TestOnly/06fac322326442498daf499b72c8da2e233795d2/test_1649436882/log.txt.gz
      

      My guess is that the CPU architecture is not to blame. The filesystem type must be.

          QTRY_COMPARE(model->rowCount(root), oldCount + count);
      

      On my Linux system, oldCount = 5 (the number of files created by prepareTestModelRoot and count is the input from the QFETCH.

      The CI is also reporting that the test would have succeeded if the wait was for 11 seconds, which means the filesystem notification did happen at some point. Why that was delayed, I have no clue.

      Attachments

        Issue Links

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

          Activity

            People

              jujokini Jukka Jokiniva
              thiago Thiago Macieira
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes