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

ChainDB q-s-m model vs SUT discrepancy for GC'd Iterators #299

Open
amesgen opened this issue Aug 17, 2023 · 0 comments
Open

ChainDB q-s-m model vs SUT discrepancy for GC'd Iterators #299

amesgen opened this issue Aug 17, 2023 · 0 comments
Labels
technical debt Technical debt

Comments

@amesgen
Copy link
Member

amesgen commented Aug 17, 2023

      Resp {getResp = Right (IterResultGCed (IteratorResultGCed {real = True, iterResult = IteratorResult (...)}))}
  :/= Resp {getResp = Right (IterResultGCed (IteratorResultGCed {real = False, iterResult = IteratorExhausted}))}

Full logs: https://gist.github.com/amesgen/1ab4c3a13c446baa65a08f95d975362f

This seems very similar to IntersectMBO/ouroboros-network#3999, but with the roles of model and SUT reversed (in this issue, the model iterator is exhausted).

To reproduce

Check out fd484ae (on main) and apply

diff --git a/ouroboros-consensus/test/storage-test/Test/Ouroboros/Storage/ChainDB/StateMachine.hs b/ouroboros-consensus/test/storage-test/Test/Ouroboros/Storage/ChainDB/StateMachine.hs
index 5c353295a..7497553f1 100644
--- a/ouroboros-consensus/test/storage-test/Test/Ouroboros/Storage/ChainDB/StateMachine.hs
+++ b/ouroboros-consensus/test/storage-test/Test/Ouroboros/Storage/ChainDB/StateMachine.hs
@@ -1703,5 +1703,5 @@ mkArgs cfg chunkInfo initLedger registry nodeDBs tracer (MaxClockSkew maxClockSk
 
 tests :: TestTree
 tests = testGroup "ChainDB q-s-m"
-    [ localOption (QuickCheckTests 100000) $ testProperty "sequential" prop_sequential
+    [ localOption (QuickCheckTests 400000) $ testProperty "sequential" prop_sequential
     ]

Then run

cabal run storage-test -- -p 'ChainDB q-s-m' --quickcheck-replay=751541
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
technical debt Technical debt
Projects
None yet
Development

No branches or pull requests

1 participant