Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PeerSelection.PeerMetric failure #4092

Closed
coot opened this issue Oct 20, 2022 · 0 comments · Fixed by #4480
Closed

PeerSelection.PeerMetric failure #4092

coot opened this issue Oct 20, 2022 · 0 comments · Fixed by #4480
Assignees
Labels
io-sim-discovered Issue discovered by IOSim testing

Comments

@coot
Copy link
Contributor

coot commented Oct 20, 2022

Ouroboros.Network.PeerSelection.PeerMetric
    insert peer invariant:                                            FAIL (8.34s)
      *** Failed! Falsified (after 46 tests and 851 shrinks):
      FixedScript {getFixedScript = Script (FetchedHeader (TestAddress 9) (SlotNo 3) :| [FetchedHeader (TestAddress 6) (SlotNo 3),FetchedHeader (TestAddress 4) (SlotNo 5),FetchedHeader (TestAddress 6) (SlotNo 5),FetchedBlock (TestAddress 17) (SlotNo 7) 1,FetchedHeader (TestAddress 5) (SlotNo 7),FetchedHeader (TestAddress 17) (SlotNo 11),FetchedHeader (TestAddress 1) (SlotNo 12),FetchedBlock (TestAddress 2) (SlotNo 13) 1,FetchedBlock (TestAddress 14) (SlotNo 13) 1,FetchedBlock (TestAddress 1) (SlotNo 16) 1,FetchedHeader (TestAddress 3) (SlotNo 18),FetchedHeader (TestAddress 2) (SlotNo 20),FetchedBlock (TestAddress 1) (SlotNo 28) 1,FetchedHeader (TestAddress 13) (SlotNo 30),FetchedHeader (TestAddress 2) (SlotNo 36),FetchedHeader (TestAddress 1) (SlotNo 40),FetchedHeader (TestAddress 2) (SlotNo 40),FetchedBlock (TestAddress 12) (SlotNo 45) 1,FetchedHeader (TestAddress 2) (SlotNo 46),FetchedHeader (TestAddress 12) (SlotNo 52),FetchedBlock (TestAddress 2) (SlotNo 54) 1,FetchedHeader (TestAddress 1) (SlotNo 54),FetchedBlock (TestAddress 8) (SlotNo 57) 1,FetchedBlock (TestAddress 3) (SlotNo 57) 1,FetchedHeader (TestAddress 10) (SlotNo 60),FetchedBlock (TestAddress 1) (SlotNo 60) 1,FetchedHeader (TestAddress 4) (SlotNo 61),FetchedHeader (TestAddress 3) (SlotNo 62),FetchedHeader (TestAddress 4) (SlotNo 62),FetchedHeader (TestAddress 7) (SlotNo 65),FetchedBlock (TestAddress 1) (SlotNo 65) 1,FetchedBlock (TestAddress 9) (SlotNo 66) 1,FetchedBlock (TestAddress 1) (SlotNo 66) 1,FetchedBlock (TestAddress 1) (SlotNo 70) 1,FetchedHeader (TestAddress 12) (SlotNo 71),FetchedHeader (TestAddress 1) (SlotNo 73),FetchedBlock (TestAddress 1) (SlotNo 73) 1,FetchedHeader (TestAddress 11) (SlotNo 76),FetchedBlock (TestAddress 4) (SlotNo 80) 1,FetchedHeader (TestAddress 9) (SlotNo 81),FetchedHeader (TestAddress 7) (SlotNo 83),FetchedHeader (TestAddress 1) (SlotNo 87),FetchedBlock (TestAddress 13) (SlotNo 90) 1,FetchedBlock (TestAddress 5) (SlotNo 93) 1,FetchedHeader (TestAddress 12) (SlotNo 96),FetchedBlock (TestAddress 8) (SlotNo 97) 1,FetchedBlock (TestAddress 9) (SlotNo 99) 1,FetchedBlock (TestAddress 10) (SlotNo 100) 1,FetchedBlock (TestAddress 3) (SlotNo 100) 1,FetchedBlock (TestAddress 1) (SlotNo 101) 1,FetchedBlock (TestAddress 6) (SlotNo 101) 1,FetchedBlock (TestAddress 1) (SlotNo 103) 1,FetchedHeader (TestAddress 9) (SlotNo 103),FetchedHeader (TestAddress 10) (SlotNo 105),FetchedHeader (TestAddress 2) (SlotNo 105),FetchedBlock (TestAddress 9) (SlotNo 108) 1,FetchedBlock (TestAddress 5) (SlotNo 108) 1,FetchedHeader (TestAddress 12) (SlotNo 111),FetchedBlock (TestAddress 1) (SlotNo 111) 1,FetchedHeader (TestAddress 8) (SlotNo 111),FetchedBlock (TestAddress 10) (SlotNo 118) 1,FetchedBlock (TestAddress 15) (SlotNo 121) 1,FetchedBlock (TestAddress 7) (SlotNo 122) 1,FetchedBlock (TestAddress 9) (SlotNo 126) 1,FetchedBlock (TestAddress 4) (SlotNo 129) 1,FetchedHeader (TestAddress 3) (SlotNo 131),FetchedBlock (TestAddress 5) (SlotNo 131) 1,FetchedHeader (TestAddress 2) (SlotNo 132),FetchedHeader (TestAddress 4) (SlotNo 136),FetchedBlock (TestAddress 3) (SlotNo 137) 1,FetchedBlock (TestAddress 17) (SlotNo 137) 1,FetchedHeader (TestAddress 8) (SlotNo 138),FetchedHeader (TestAddress 1) (SlotNo 138),FetchedHeader (TestAddress 12) (SlotNo 138),FetchedHeader (TestAddress 3) (SlotNo 139),FetchedHeader (TestAddress 11) (SlotNo 141),FetchedHeader (TestAddress 2) (SlotNo 141),FetchedHeader (TestAddress 14) (SlotNo 141),FetchedHeader (TestAddress 1) (SlotNo 142),FetchedBlock (TestAddress 9) (SlotNo 144) 1,FetchedBlock (TestAddress 11) (SlotNo 144) 1,FetchedBlock (TestAddress 2) (SlotNo 145) 1,FetchedHeader (TestAddress 13) (SlotNo 150),FetchedHeader (TestAddress 2) (SlotNo 152),FetchedHeader (TestAddress 6) (SlotNo 152),FetchedBlock (TestAddress 2) (SlotNo 152) 1,FetchedBlock (TestAddress 3) (SlotNo 152) 1,FetchedBlock (TestAddress 6) (SlotNo 154) 1])}
      (PeerMetricsTrace {pmtPeer = TestAddress 6, pmtSlot = SlotNo 154, pmtUpstreamyness = fromList [(TestAddress 1,6),(TestAddress 2,5),(TestAddress 3,4),(TestAddress 4,3),(TestAddress 5,1),(TestAddress 7,3),(TestAddress 8,1),(TestAddress 9,4),(TestAddress 10,2),(TestAddress 11,3),(TestAddress 12,4),(TestAddress 13,2),(TestAddress 14,0),(TestAddress 15,2),(TestAddress 17,1)], pmtFetchynessBytes = fromList [(TestAddress 1,9),(TestAddress 2,4),(TestAddress 3,1),(TestAddress 4,2),(TestAddress 5,2),(TestAddress 6,1),(TestAddress 7,1),(TestAddress 8,2),(TestAddress 9,5),(TestAddress 10,2),(TestAddress 11,0),(TestAddress 12,1),(TestAddress 13,1),(TestAddress 14,0),(TestAddress 15,2),(TestAddress 17,1)], pmtFetchynessBlocks = fromList [(TestAddress 1,9),(TestAddress 2,4),(TestAddress 3,1),(TestAddress 4,2),(TestAddress 5,2),(TestAddress 6,1),(TestAddress 7,1),(TestAddress 8,2),(TestAddress 9,5),(TestAddress 10,2),(TestAddress 11,0),(TestAddress 12,1),(TestAddress 13,1),(TestAddress 14,0),(TestAddress 15,2),(TestAddress 17,1)], pmtJoinedAt = fromList [(TestAddress 1,SlotNo 12),(TestAddress 2,SlotNo 13),(TestAddress 3,SlotNo 18),(TestAddress 4,SlotNo 5),(TestAddress 5,SlotNo 7),(TestAddress 7,SlotNo 65),(TestAddress 8,SlotNo 57),(TestAddress 9,SlotNo 66),(TestAddress 10,SlotNo 60),(TestAddress 11,SlotNo 76),(TestAddress 12,SlotNo 45),(TestAddress 13,SlotNo 30),(TestAddress 14,SlotNo 13),(TestAddress 15,SlotNo 121),(TestAddress 17,SlotNo 7)]},PeerMetricsTrace {pmtPeer = TestAddress 3, pmtSlot = SlotNo 152, pmtUpstreamyness = fromList [(TestAddress 1,6),(TestAddress 2,5),(TestAddress 3,4),(TestAddress 4,3),(TestAddress 5,1),(TestAddress 7,3),(TestAddress 8,1),(TestAddress 9,4),(TestAddress 10,2),(TestAddress 11,3),(TestAddress 12,4),(TestAddress 13,2),(TestAddress 14,0),(TestAddress 15,2),(TestAddress 17,1)], pmtFetchynessBytes = fromList [(TestAddress 1,9),(TestAddress 2,4),(TestAddress 3,1),(TestAddress 4,2),(TestAddress 5,2),(TestAddress 7,1),(TestAddress 8,2),(TestAddress 9,5),(TestAddress 10,2),(TestAddress 11,0),(TestAddress 12,1),(TestAddress 13,1),(TestAddress 14,0),(TestAddress 15,2),(TestAddress 17,1)], pmtFetchynessBlocks = fromList [(TestAddress 1,9),(TestAddress 2,4),(TestAddress 3,1),(TestAddress 4,2),(TestAddress 5,2),(TestAddress 7,1),(TestAddress 8,2),(TestAddress 9,5),(TestAddress 10,2),(TestAddress 11,0),(TestAddress 12,1),(TestAddress 13,1),(TestAddress 14,0),(TestAddress 15,2),(TestAddress 17,1)], pmtJoinedAt = fromList [(TestAddress 1,SlotNo 12),(TestAddress 2,SlotNo 13),(TestAddress 3,SlotNo 18),(TestAddress 4,SlotNo 5),(TestAddress 5,SlotNo 7),(TestAddress 7,SlotNo 65),(TestAddress 8,SlotNo 57),(TestAddress 9,SlotNo 66),(TestAddress 10,SlotNo 60),(TestAddress 11,SlotNo 76),(TestAddress 12,SlotNo 45),(TestAddress 13,SlotNo 30),(TestAddress 14,SlotNo 13),(TestAddress 15,SlotNo 121),(TestAddress 17,SlotNo 7)]})
      fetchynessBytes: peer (TestAddress 6) member of (fromList [TestAddress 6,TestAddress 11,TestAddress 14],fromList [(TestAddress 1,(9,Just (SlotNo 12))),(TestAddress 2,(4,Just (SlotNo 13))),(TestAddress 3,(1,Just (SlotNo 18))),(TestAddress 4,(2,Just (SlotNo 5))),(TestAddress 5,(2,Just (SlotNo 7))),(TestAddress 6,(1,Nothing)),(TestAddress 7,(1,Just (SlotNo 65))),(TestAddress 8,(2,Just (SlotNo 57))),(TestAddress 9,(5,Just (SlotNo 66))),(TestAddress 10,(2,Just (SlotNo 60))),(TestAddress 11,(0,Just (SlotNo 76))),(TestAddress 12,(1,Just (SlotNo 45))),(TestAddress 13,(1,Just (SlotNo 30))),(TestAddress 14,(0,Just (SlotNo 13))),(TestAddress 15,(2,Just (SlotNo 121))),(TestAddress 17,(1,Just (SlotNo 7)))])
@coot coot self-assigned this Oct 20, 2022
@coot coot mentioned this issue Oct 20, 2022
9 tasks
@coot coot added the testing label Nov 22, 2022
@bolt12 bolt12 added the io-sim-discovered Issue discovered by IOSim label Mar 30, 2023
iohk-bors bot added a commit that referenced this issue Apr 6, 2023
4480: Fix "insert peer invariant test" r=bolt12 a=bolt12

This test checks that newly added peer is never in the 20% worst performing peers (if there are at least 5 results). However we were not checking that the list had at least 5 results.

Fixes #4092 

Co-authored-by: Armando Santos <armando@well-typed.com>
iohk-bors bot added a commit that referenced this issue Apr 6, 2023
4480: Fix "insert peer invariant test" r=bolt12 a=bolt12

This test checks that newly added peer is never in the 20% worst performing peers (if there are at least 5 results). However we were not checking that the list had at least 5 results.

Fixes #4092 

Co-authored-by: Armando Santos <armando@well-typed.com>
@iohk-bors iohk-bors bot closed this as completed in eddc225 Apr 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
io-sim-discovered Issue discovered by IOSim testing
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants