================================================================================ Changed-lines coverage summary ================================================================================ Denominator: lines added/modified by this PR in C/C++ source files that LCOV considers coverable (excludes blank lines, braces, comments, header-only declarations, and error-path noise such as `LOGICAL_ERROR`, `UNREACHABLE()`, `abort()`). Numerator: of those coverable lines, the number actually executed by the test suite during this coverage run. PR changed C/C++ lines covered by tests: 94.80% (310/327) Uncovered changed code (with context): ================================================================================ src/Common/HTTPConnectionPool.cpp ================================================================================ --- uncovered block 935-935 --- 933 | { 934 | /// setFail can throw. Log it, since it is not worth throwing. >> 935 | tryLogCurrentException("HTTPConnectionPool", "Ignored exception from setFail during retry"); 936 | } 937 | }; --- uncovered block 1020-1023 --- 1018 | /// a per-address routing problem and would recur on any address. Propagate without 1019 | /// `setFail`; `setUnused` so the destructor does not record a spurious success. >> 1020 | address.setUnused(); >> 1021 | ProfileEvents::increment(getMetrics().errors); >> 1022 | (*connection).reset(); >> 1023 | throw; 1024 | } 1025 | #endif --- uncovered block 1043-1053 --- 1041 | catch (...) 1042 | { >> 1043 | ProfileEvents::increment(getMetrics().errors); 1044 | /// Post-connect socket setup in `HTTPSession::connect` can also throw 1045 | /// non-`NetException` errors (`setsockopt` mapped to `Poco::IOException` / 1046 | /// `Poco::InvalidArgumentException`) after the TCP connect succeeded. Probe as in the 1047 | /// `NetException` handler: with a peer the address was reachable, so propagate 1048 | /// without `setFail`. >> 1049 | const bool tcp_connected = connection->isConnectedToPeer(); >> 1050 | (*connection).reset(); >> 1051 | if (!tcp_connected) >> 1052 | pessimize(address); >> 1053 | throw; 1054 | } 1055 | --- uncovered block 1066-1068 --- 1064 | catch (...) 1065 | { >> 1066 | ProfileEvents::increment(getMetrics().errors); >> 1067 | (*connection).reset(); >> 1068 | throw; 1069 | } 1070 | ================================================================================ src/Common/HostResolvePool.cpp ================================================================================ --- uncovered block 177-177 --- 175 | auto it = find(address); 176 | if (it == records.end()) >> 177 | return; 178 | 179 | if (it->setFail(now)) --- uncovered block 202-202 --- 200 | } 201 | >> 202 | ProfileEvents::increment(metrics.failed); 203 | 204 | try ================================================================================ src/Common/HostResolvePool.h ================================================================================ --- uncovered block 84-84 --- 82 | const String * operator->() const & { return &resolved_host; } 83 | const String & operator*() & { return resolved_host; } >> 84 | const String & operator*() const & { return resolved_host; } 85 | 86 | /// Mark the address as failed in the pool. Also suppresses the destructor's success callback. === Lost Baseline Coverage: 1 lines === ================================================================================ src/Common/HTTPConnectionPool.cpp ================================================================================ --- lost coverage block 824-824 --- 822 | { 823 | if (isSoftLimitReached) >> 824 | return connection->isKeepAliveExpired(0.1); 825 | return connection->isKeepAliveExpired(0.8); 826 | } WARNING: Failed to get start time for [Print Uncovered Code] - start time and duration won't be set --- Coverage counts --- Lines : baseline 847,626/993,136 -> current 848,265/993,501 (delta +639 / +365) Functions : baseline 930,435/1,005,373 -> current 930,564/1,005,422 (delta +129 / +49) Branches : baseline 270,727/349,068 -> current 270,765/349,174 (delta +38 / +106)