test: drop flaky "server too slow" check from interface_http.py #36848

pull pinheadmz wants to merge 1 commits into bitcoin:master from pinheadmz:interface-http-flake changing 1 files +6 −6
  1. pinheadmz commented at 7:02 PM on November 12, 2026: member

    Closes #36755

    To cover -rpcservertimeout behavior our test expected the Bitcoin Core HTTP server to disconnect the test framework client after the configured duration but also before a somewhat arbitrary upper bound. This was helpful during development of #35182 but has led to false negatives in CI on platforms that are just plain slow.

    Solve the flakiness by simply deleting the test case. Note that a regression is still caught by both the functional test and unit test suite. #36159 added a mock clock in the unit test to assert the disconnect timing. A server with no timeout would also fail the functional test which will time out during sock.recv() waiting for the EOF.

    Both regression test failures can be observed on top of this branch by disabling rpcservertimeout:

    diff --git a/src/httpserver.cpp b/src/httpserver.cpp
    index 069eace507..7a090c4ca8 100644
    --- a/src/httpserver.cpp
    +++ b/src/httpserver.cpp
    @@ -1205,7 +1205,7 @@ bool HTTPRemoteClient::ShouldDisconnect(MockableSteadyClock::time_point now, std
                      "HTTP client idle timeout %s (id=%llu)",
                      m_origin,
                      m_id);
    -        return true;
    +        return false;
         // Disconnect this client because the server is shutting down and we need to
         // disconnect all clients... Unless the client is still being handled by a
         // worker thread, in which case we'd rather continue the I/O loop (but might
    
    
  2. test: drop flaky "server too slow" check from interface_http.py 75a23e7d36
  3. DrahtBot added the label Tests on Nov 12, 2026
  4. DrahtBot commented at 7:03 PM on November 12, 2026: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--006a51241073e994b41acfe9ec718e94-->

    External sites

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline and AI policy for information on the review process.

    Type Reviewers
    ACK maflcko

    If your review is incorrectly listed, please copy-paste <code>&lt;!--meta-tag:bot-skip--&gt;</code> into the comment that the bot should ignore.

    <!--5faf32d7da4f0f540f40219e4f7537a3-->

    LLM Linter (✨ experimental)

    Possible places where comparison-specific test macros should replace generic comparisons:

    • test/functional/interface_http.py: assert duration >= seconds - 1 → Prefer assert_greater_than_or_equal(duration, seconds - 1).

    <sup>2026-11-12 19:03:09</sup>

  5. maflcko commented at 1:04 PM on November 13, 2026: member

    This follows the general pattern, see also https://github.com/bitcoin/bitcoin/commit/aa76bd266df9742a266d52e0e5da8dbf033658f6

    lgtm ACK 75a23e7d36afbbcfedef11bca94967b88bf40de0

    Haven't tried your mutant.

  6. fanquake commented at 3:10 PM on November 13, 2026: member
  7. fanquake added the label Needs Backport (32.x) on Nov 13, 2026

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: 2026-11-14 11:51 UTC

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