IntersectMBO / ouroboros-network

Specifications of network protocols and implementations of components running these protocols which support a family of Ouroboros Consesus protocols; the diffusion layer of the Cardano Node.

Home Page:https://ouroboros-network.cardano.intersectmbo.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

InboundGovernor leaks a connection in a test

coot opened this issue · comments

InboundGovernor test failure discovered in #4684 (https://github.com/input-output-hk/ouroboros-network/runs/17861558689):

MainException (Time 3601.39s) (NotReleasedConnections (fromList [(UnsafeNormalisedId {nidLow = TestAddress (0), nidHigh = TestAddress (89)},FIN)]) Nothing) []
cabal run ouroboros-network-framework:sim-tests -- --quickcheck-replay=75414 -p '/InboundGovernor.no invalid traces/'
Resolving dependencies...
ouroboros-network-framework:sim-tests
  Ouroboros.Network
    InboundGovernor
      no invalid traces: FAIL (10.37s)
        *** Failed! Falsified (after 43 tests and 9011 shrinks):
        0
        ArbDataFlow Duplex
        AbsBearerInfo {abiConnectionDelay = SmallDelay, abiInboundAttenuation = NoAttenuation FastSpeed, abiOutboundAtten
uation = NoAttenuation FastSpeed, abiInboundWriteFailure = Nothing, abiOutboundWriteFailure = Nothing, abiAcceptFailure =
 Just (SmallDelay,AbsIOErrResourceExhausted), abiSDUSize = LargeSDU}
        MultiNodeScript
         {mnsEvents =
          [StartServer 0.24s (TestAddr {unTestAddr = TestAddress (89)}) (-18),
           OutboundConnection 0.28s (TestAddr {unTestAddr = TestAddress (89)}),
           ShutdownClientServer 0.1s (TestAddr {unTestAddr = TestAddress (89)}),
           StartServer 0s (TestAddr {unTestAddr = TestAddress (79)}) (-2),
           OutboundMiniprotocols 0.34s (TestAddr {unTestAddr = TestAddress (89)}) 
             (TemperatureBundle {
               withHot = WithHot [33,29,-18,-41,22,-41,-1,6,2,8,-30,28,20,10,-13,-21,-13,-35,18,-22,-15,-19,-32,13,8,-7,25,-3,29,-12,-32,22,-23,-20,-19,-39,25],
               withWarm = WithWarm [-42,-40,-32,-42,35,35,-19,13,34,-25,-7,15,-16,-37,-39,-21,-14,39,-8,-4,-25,42,27,-37,-12,-26,20,-30,14,-24,-42,17,11,-42,7,-39,8,-19,11,31,-25,-22],
               withEstablished = WithEstablished [29,39,-31,-36,-7,10,13,24,-1]}),
           InboundConnection 0.06s (TestAddr {unTestAddr = TestAddress (79)}),
           InboundMiniprotocols 0.11s (TestAddr {unTestAddr = TestAddress (79)}) (TemperatureBundle {withHot = WithHot [41,-22,24,39,-11,-22,-18,-5,-27,-4,-20,39,-31,-12,29,13,-15,-35,-34,20,39,-18,19,-42,-24,-9,-27,16,-24,7,-41,11,-18,1,-5,-29,-6,-14,-25,21,-19,-29], withWarm = WithWarm [-39,-42,3], withEstablished = WithEstablished [29,8,21,-25,-1,-9,0]}),
           StartClient 0.26s (TestAddr {unTestAddr = TestAddress (97)})
          ],
          mnsAttenuationMap = fromList []
        }
        ========== Script ==========
        0.24s: Start server TestAddr {unTestAddr = TestAddress (89)} with accInit=-18
        0.52s: Connecting to TestAddr {unTestAddr = TestAddress (89)}
        0.62s: Shutdown client/server TestAddr {unTestAddr = TestAddress (89)}
        0.62s: Start server TestAddr {unTestAddr = TestAddress (79)} with accInit=-2
        0.96s: Miniprotocols to TestAddr {unTestAddr = TestAddress (89)}: hot:[33,29,-18,-41,22,-41,-1,6,2,8,-30,28,20,10,-13,-21,-13,-35,18,-22,-15,-19,-32,13,8,-7,25,-3,29,-12,-32,22,-23,-20,-19,-39,25] warm:[-42,-40,-32,-42,35,35,-19,13,34,-25,-7,15,-16,-37,-39,-21,-14,39,-8,-4,-25,42,27,-37,-12,-26,20,-30,14,-24,-42,17,11,-42,7,-39,8,-19,11,31,-25,-22] est:[29,39,-31,-36,-7,10,13,24,-1]
        1.02s: Connection from TestAddr {unTestAddr = TestAddress (79)}
        1.13s: Miniprotocols from TestAddr {unTestAddr = TestAddress (79)}: hot:[41,-22,24,39,-11,-22,-18,-5,-27,-4,-20,39,-31,-12,29,13,-15,-35,-34,20,39,-18,19,-42,-24,-9,-27,16,-24,7,-41,11,-18,1,-5,-29,-6,-14,-25,21,-19,-29] warm:[-39,-42,3] est:[29,8,21,-25,-1,-9,0]
        1.39s: Start client TestAddr {unTestAddr = TestAddress (97)}
        ========== Inbound Governor Events ==========
        TrRemoteState (fromList [])
        TrInboundGovernorError AsyncCancelled
        MainException (Time 3601.39s) (NotReleasedConnections (fromList [(UnsafeNormalisedId {nidLow = TestAddress (0), nidHigh = TestAddress (89)},FIN)]) Nothing) []
        MainException (Time 3601.39s) (NotReleasedConnections (fromList [(UnsafeNormalisedId {nidLow = TestAddress (0), nidHigh = TestAddress (89)},FIN)]) Nothing) []
        Use --quickcheck-replay=75414 to reproduce.

1 out of 1 tests failed (10.38s)

It seems #4623 fixes this