[qa] Handle zombies and cluttered tmpdirs #9098

pull MarcoFalke wants to merge 2 commits into bitcoin:master from MarcoFalke:Mf1611-qaZombies changing 2 files +6 −7
  1. MarcoFalke commented at 10:04 pm on November 7, 2016: member

    The first commit will make the tests fail and print a warning when the tmpdir exists.

    The second commit will make the tests skip over any existing zombie daemons with high probability.

    Both commit should improve the bad user experience reported in #9086. If the second commit is too controversial, I am happy to drop.

  2. [qa] test_framework: Exit when tmpdir exists fae19aa1da
  3. MarcoFalke added the label Tests on Nov 7, 2016
  4. in qa/pull-tester/rpc-tests.py: in fa3e57f3b0 outdated
    245@@ -246,14 +246,18 @@ def __init__(self, num_tests_parallel, test_list=None, flags=None):
    246         self.test_list = test_list
    247         self.flags = flags
    248         self.num_running = 0
    249+        # In case there is a graveyard of zombie bitcoinds, we can apply a
    250+        # psoudorandom offset to hopefully jump over them.
    


    laanwj commented at 9:24 am on November 8, 2016:
    pseudorandom :)
  5. laanwj commented at 9:31 am on November 8, 2016: member
    utACK, hopefully improves the port-allocation issue in practice without introducing random collisions.
  6. [qa] rpc-tests: Apply random offset to portseed
    This helps to skip over resources, which are blocked by regtest bitcoind
    zombie nodes
    fab0f07dec
  7. MarcoFalke force-pushed on Nov 8, 2016
  8. MarcoFalke commented at 9:51 am on November 8, 2016: member

    When tests are run in parallel through rpc-tests.py the ports must never collide, otherwise it is a bug. (Running several rpc-tests.py is not supported right now, though)

    The second commit should only have an effect when there is at least one zombie instance, which still listens on a port and prevents subsequent tests from executing.

  9. laanwj commented at 9:55 am on November 8, 2016: member

    When tests are run in parallel through rpc-tests.py the ports must never collide, otherwise it is a bug.

    Agreed. (I guess there’s the case of collisions with random other software listening on ports, but avoiding this is extremely difficult and this change doesn’t make it statistically worse)

  10. laanwj merged this on Nov 8, 2016
  11. laanwj closed this on Nov 8, 2016

  12. laanwj referenced this in commit 71ab476b04 on Nov 8, 2016
  13. MarcoFalke deleted the branch on Nov 8, 2016
  14. luke-jr referenced this in commit ecd7db5767 on Dec 2, 2016
  15. luke-jr referenced this in commit 58eab244fb on Dec 2, 2016
  16. sickpig referenced this in commit e3017453dd on May 18, 2017
  17. sickpig referenced this in commit 780efde90c on May 18, 2017
  18. sickpig referenced this in commit 32ed8fe430 on Aug 16, 2017
  19. codablock referenced this in commit 1121f2f951 on Jan 15, 2018
  20. andvgal referenced this in commit 1e396ec2fb on Jan 6, 2019
  21. CryptoCentric referenced this in commit 8556322cf7 on Feb 24, 2019
  22. zkbot referenced this in commit 025bd44543 on Nov 21, 2020
  23. zkbot referenced this in commit 7a0a268054 on Dec 2, 2020
  24. zkbot referenced this in commit c8896f9907 on Dec 2, 2020
  25. DrahtBot locked this on Sep 8, 2021


MarcoFalke laanwj

Labels
Tests


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-06-17 19:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me