Patchwork [Bug,6271] New: test-nointerrupt.t is flacky under load

login
register
mail settings
Submitter mercurial-bugs@mercurial-scm.org
Date Feb. 18, 2020, 11:10 a.m.
Message ID <bug-6271-285@https.bz.mercurial-scm.org/>
Download mbox | patch
Permalink /patch/45268/
State Not Applicable
Headers show

Comments

mercurial-bugs@mercurial-scm.org - Feb. 18, 2020, 11:10 a.m.
https://bz.mercurial-scm.org/show_bug.cgi?id=6271

            Bug ID: 6271
           Summary: test-nointerrupt.t is flacky under load
           Product: Mercurial
           Version: 5.3
          Hardware: PC
                OS: Linux
            Status: UNCONFIRMED
          Severity: feature
          Priority: wish
         Component: Mercurial
          Assignee: bugzilla@mercurial-scm.org
          Reporter: pierre-yves.david@ens-lyon.org
                CC: mercurial-devel@mercurial-scm.org
    Python Version: ---

test-nointerrupt.t is using `sleep` call to synchronise concurrent process. It
should use explicite synchronisation instead, otherwise is fails under load.

failure example: https://foss.heptapod.net/octobus/mercurial-devel/-/jobs/57489

+  
+  During handling of the above exception, another exception occurred:
+  
+  Traceback (most recent call last):
+    File "/tmp/hgtests.xi4wtej0/install/bin/hg", line 43, in <module>
+      dispatch.run()
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 112, in run
+      except error.StdioError as e:
+  AttributeError: module 'mercurial.error' has no attribute 'StdioError'
   [124]

   $ cat >> $HGRCPATH << EOF

ERROR: test-nointerrupt.t output changed

Patch

--- /tmp/mercurial-ci/tests/test-nointerrupt.t
+++ /tmp/mercurial-ci/tests/test-nointerrupt.t.err
@@ -60,7 +60,64 @@ 

 Test ctrl-c
   $ python $TESTTMP/timeout.py -s INT 1 hg sleep 2
-  interrupted!
+  Traceback (most recent call last):
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 325, in _runcatchfunc
+      aliases, entry = cmdutil.findcmd(cmd, commands.table, False)
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/cmdutil.py", line
961, in findcmd
+      raise error.UnknownCommand(cmd, allcmds)
+    File "/usr/lib/python3.7/importlib/util.py", line 245, in __getattribute__
+      self.__spec__.loader.exec_module(self)
+    File "<frozen importlib._bootstrap_external>", line 724, in exec_module
+    File "<frozen importlib._bootstrap_external>", line 857, in get_code
+    File "<frozen importlib._bootstrap_external>", line 525, in
_compile_bytecode
+  KeyboardInterrupt
+  
+  During handling of the above exception, another exception occurred:
+  
+  Traceback (most recent call last):
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/scmutil.py", line
152, in callcatch
+      return func()
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 328, in _runcatchfunc
+      error.UnknownCommand,
+  AttributeError: module 'mercurial.error' has no attribute 'UnknownCommand'
+  
+  During handling of the above exception, another exception occurred:
+  
+  Traceback (most recent call last):
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 437, in _callcatch
+      return scmutil.callcatch(ui, func)
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/scmutil.py", line
158, in callcatch
+      except error.LockHeld as inst:
+  AttributeError: module 'mercurial.error' has no attribute 'LockHeld'
+  
+  During handling of the above exception, another exception occurred:
+  
+  Traceback (most recent call last):
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 254, in dispatch
+      ret = _runcatch(req) or 0
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 428, in _runcatch
+      return _callcatch(ui, _runcatchfunc)
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 438, in _callcatch
+      except error.AmbiguousCommand as inst:
+  AttributeError: module 'mercurial.error' has no attribute 'AmbiguousCommand'
+  
+  During handling of the above exception, another exception occurred:
+  
+  Traceback (most recent call last):
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 111, in run
+      status = dispatch(req)
+    File "/tmp/hgtests.xi4wtej0/install/lib/python/mercurial/dispatch.py",
line 255, in dispatch
+      except error.ProgrammingError as inst:
+  AttributeError: module 'mercurial.error' has no attribute 'ProgrammingError'