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

tst_WaylandReconnect::multipleScreens is flaky on Ubuntu 22.04

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 6.10
    • Other
    • None

    Description

      http://testresults.qt.io/grafana/d/d8bebf9c-6e1c-4bff-a214-8d506943f23c/new-flaky-crashed-failed-tests?var-group_by_interval=1d&orgId=1&from=2025-01-02T12:12:05.878Z&to=2025-01-09T12:12:05.879Z&timezone=utc&var-branch=1&var-test_case_n=1670&var-test_function_n=22032

      The first run fails.

      ********* Start testing of tst_WaylandReconnect *********                                                                                                                                  
      Config: Using QtTest library 6.9.0, Qt 6.9.0 (x86_64-little_endian-lp64 shared (dynamic) debug build; by GCC 11.4.0), ubuntu 22.04                                                         
      PASS   : tst_WaylandReconnect::initTestCase()                                                                                                                                              
      QWARN  : tst_WaylandReconnect::basicWindow() global_type* MockCompositor::CoreCompositor::get() [with global_type = MockCompositor::WlCompositor] called without locking the compositor to the current thread. This means the compositor can start dispatching at any moment, potentially leading to threading issues. Unless you know what you are doing you should probably fix the test by locking the compositor before accessing it (see mutex()).                                                                                                                          
      QWARN  : tst_WaylandReconnect::basicWindow() TestNamespace::QList<global_type*> MockCompositor::CoreCompositor::getAll() [with global_type = MockCompositor::Output] called without locking the compositor to the current thread. This means the compositor can start dispatching at any moment, potentially leading to threading issues. Unless you know what you are doing you should probably fix the test by locking the compositor before accessing it (see mutex()).                                                                                                       
      QDEBUG : tst_WaylandReconnect::basicWindow() cleanup                                                                                                                                       
      QWARN  : tst_WaylandReconnect::basicWindow() The Wayland connection broke. Did the Wayland compositor die?                                                                                 
      QWARN  : tst_WaylandReconnect::basicWindow() qt.qpa.wayland: Attempting wayland reconnect                                                                                                  
      QWARN  : tst_WaylandReconnect::basicWindow() Failed to write to the pipe: Bad file descriptor.                                                                                             
      QINFO  : tst_WaylandReconnect::basicWindow() qt.qpa.wayland: There are no outputs - creating placeholder screen                                                                            
      PASS   : tst_WaylandReconnect::basicWindow()                                                                                                                                               
      FAIL!  : tst_WaylandReconnect::multipleScreens() 'window1.screen() != window2.screen()' returned FALSE. ()                                                                                 
         Loc: [/home/qt/work/qt/qtwayland/tests/auto/client/reconnect/tst_reconnect.cpp(167)]                                                                                                    
      QDEBUG : tst_WaylandReconnect::keyFocus() cleanup                                                                                                                                          
      QWARN  : tst_WaylandReconnect::keyFocus() The Wayland connection broke. Did the Wayland compositor die?                                                                                    
      QWARN  : tst_WaylandReconnect::keyFocus() qt.qpa.wayland: Attempting wayland reconnect                                                                                                     
      QWARN  : tst_WaylandReconnect::keyFocus() Failed to write to the pipe: Bad file descriptor.                                                                                                
      QINFO  : tst_WaylandReconnect::keyFocus() qt.qpa.wayland: There are no outputs - creating placeholder screen                                                                               
      PASS   : tst_WaylandReconnect::keyFocus()                                                                                                                                                  
      PASS   : tst_WaylandReconnect::cleanupTestCase()                                                                                                                                           
      Totals: 4 passed, 1 failed, 0 skipped, 0 blacklisted, 16188ms                                                                                                                              
      ********* Finished testing of tst_WaylandReconnect ********* 
      

      The subsequent runs also fail.

      ******** Start testing of tst_WaylandReconnect *********                                                                                                                                  
      Config: Using QtTest library 6.9.0, Qt 6.9.0 (x86_64-little_endian-lp64 shared (dynamic) debug build; by GCC 11.4.0), ubuntu 22.04                                                         
      PASS   : tst_WaylandReconnect::initTestCase()                                                                                                                                              
      FAIL!  : tst_WaylandReconnect::multipleScreens() 'window1.screen() != window2.screen()' returned FALSE. ()                                                                                    Loc: [/home/qt/work/qt/qtwayland/tests/auto/client/reconnect/tst_reconnect.cpp(167)]                                                                                                    PASS   : tst_WaylandReconnect::cleanupTestCase()                                                                                                                                           Totals: 2 passed, 1 failed, 0 skipped, 0 blacklisted, 15413ms                                                                                                                              ********* Finished testing of tst_WaylandReconnect *********
      

      Link to logs.
      https://testresults.qt.io/coin/api/results/qt/qtwayland/5b168d82008dc478b651490667355bd4e3621291/LinuxUbuntu_22_04x86_64LinuxUbuntu_22_04x86_64GCCqtci-linux-Ubuntu-22.04-x86_64-51-9a15abPinCores_Sccache_TestOnly/66f6b4f1d2d64db73ee00cca4f033ad731293fc5/forceRun/test_1736377571

      Attachments

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

        Activity

          People

            ausutter Audun Sutterud
            ausutter Audun Sutterud
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes