From 796a5a6f546a4f49337e6c4432e14666ef01c2e1 Mon Sep 17 00:00:00 2001 From: Dmitry Zuikov Date: Wed, 19 Jul 2023 20:14:55 +0300 Subject: [PATCH] wip, log merging, debug-16 --- hbs2-core/lib/HBS2/Net/Proto/RefChan.hs | 6 ++++-- hbs2-peer/app/RefChan.hs | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/hbs2-core/lib/HBS2/Net/Proto/RefChan.hs b/hbs2-core/lib/HBS2/Net/Proto/RefChan.hs index 8ea2f57f..43b3d653 100644 --- a/hbs2-core/lib/HBS2/Net/Proto/RefChan.hs +++ b/hbs2-core/lib/HBS2/Net/Proto/RefChan.hs @@ -443,7 +443,7 @@ refChanUpdateProto self pc adapter msg = do -- FIXME: random-delay-to-avoid-race -- выглядит не очень хорошо, 100ms -- и не гарантирует от гонок - pause @'Seconds 0.10 + pause @'Seconds 0.25 -- FIXME: check-if-we-authorized -- проверить, что мы вообще авторизованы @@ -520,6 +520,7 @@ refChanUpdateProto self pc adapter msg = do ha <- MaybeT $ liftIO $ putBlock sto (serialise msg) atomically $ modifyTVar (view refChanRoundTrans rcRound) (HashSet.insert (HashRef ha)) + atomically $ modifyTVar (view refChanRoundTrans rcRound) (HashSet.insert hashRef) -- propose just in case we missed it? accepts <- atomically $ readTVar (view refChanRoundAccepts rcRound) <&> HashMap.size @@ -535,12 +536,13 @@ refChanUpdateProto self pc adapter msg = do forM_ trans $ \t -> do lift $ refChanWriteTran adapter t + debug $ "WRITING TRANS" <+> pretty t let pips = view refChanHeadPeers headBlock & HashMap.keys & HashSet.fromList votes <- readTVarIO (view refChanRoundAccepts rcRound) <&> HashSet.fromList . HashMap.keys when (pips `HashSet.isSubsetOf` votes) do - debug $ "CLOSING ROUND" <+> pretty hashRef + debug $ "CLOSING ROUND" <+> pretty hashRef <+> pretty (length trans) atomically $ writeTVar (view refChanRoundClosed rcRound) True where diff --git a/hbs2-peer/app/RefChan.hs b/hbs2-peer/app/RefChan.hs index ab16008e..0a5a9ffb 100644 --- a/hbs2-peer/app/RefChan.hs +++ b/hbs2-peer/app/RefChan.hs @@ -217,7 +217,7 @@ refChanWorker env brains = do debug $ "ON ROUND STARTED" <+> pretty rcrk forever do - pause @'Seconds 30 + pause @'Seconds 60 now <- getTimeCoarse xs <- readTVarIO rounds <&> HashSet.toList