D2720: debugcommands: introduce actions to perform deterministic reads

mharbison72 (Matt Harbison) phabricator at mercurial-scm.org
Fri Mar 9 17:51:56 EST 2018


mharbison72 added a comment.


  
  
  > IDK if this means anything, but when it is stuck and I hit Ctrl+C, instead of terminating the test, the test simply continues with the script, and then hangs on the next 'remote output:' line.  Typically, Ctrl+C ends the test runner.
  
  A couple of more tidbits on this:
  
  1. When I hit Ctrl+C, it *does* print the shell prompt, but the process keeps printing test output after it, so I missed it.  When it jams, I can hit Ctrl+C again to get it going again.
  2. I did that all the way through the test, and eventually it got to the last one, which prints:
  
    i> write(2) -> 2:
    i>     0\n
    i> flush() -> None
    o> readline() -> 2:
    o>     0\n
    o> readline() -> 2:
    o>     1\n
    o> read(1) -> 1: 1
    result: 1
    remote output:
    e> read(152) -> 152:
    e>     adding changesets\n
    e>     adding manifests\n
    e>     adding file changes\n
    e>     added 1 changesets with 1 changes to 1 files\n
    e>     ui.write 1\n
    e>     ui.write_err 1\n
    e>     ui.write 2\n
    e>     ui.write_err 2\n
    + '[' -n 1 ']'
    + hg --config extensions.strip= strip --no-backup -r 'all() - ::0000000000000000000000000000000000000000'
    + echo SALT1520635194 2034 0
    SALT1520635194 2034 0
  
  Note the exit code is 1 here.  So is it possible that the debug command is having trouble reading bytes from an empty stderr in the initial cases?

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D2720

To: indygreg, #hg-reviewers
Cc: mharbison72, mercurial-devel


More information about the Mercurial-devel mailing list