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

tst_QSet flaky since qtbase/b057e32dc455d81f9378d6bd0c58888a7eddd155

    XMLWordPrintable

Details

    • 3
    • d9280bb63b (qt/qtbase/dev) d9280bb63b (qt/tqtc-qtbase/dev)

    Description

      Since b057e32dc455d81f9378d6bd0c58888a7eddd155 was merged (https://codereview.qt-project.org/c/qt/qtbase/+/427765), tst_qset::qhash() has become flaky. This is reproducible by running the test in a tight loop:

        i=0
        while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do
           let '++i'
           echo -n "$i "
        done
      

      I cannot get more than a few dozen runs in w/o failure:

      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 32
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 6
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 5
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 18
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 65
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 20
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 42
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 38
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 20
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 15
      marc@nobby:~/Qt/qt5-build-clang$ i=0; while qtbase/tests/auto/corelib/tools/qset/tst_qset qhash > /dev/null 2>&1; do let '++i'; echo -n "$i "; done; echo $i
      1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 40
      

      If I revert b057e32dc455d81f9378d6bd0c58888a7eddd155 locally, then the same loop spins up to 10k without failing.

      Attachments

        Activity

          People

            thiago Thiago Macieira
            mmutz Marc Mutz
            Vladimir Minenko Vladimir Minenko
            Alex Blasche Alex Blasche
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: