Skip to content

Commit

Permalink
[TMP] allow to en-/disable CSJ via env var
Browse files Browse the repository at this point in the history
  • Loading branch information
amesgen committed May 7, 2024
1 parent bc33a4a commit 9a2f07a
Showing 1 changed file with 14 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ import Data.Functor.Contravariant (Predicate (..))
import Data.Hashable (Hashable)
import Data.Map.Strict (Map)
import qualified Data.Map.Strict as Map
import Data.Maybe (fromMaybe, isNothing)
import Data.Maybe (fromMaybe, isJust, isNothing)
import Data.Time (NominalDiffTime)
import Data.Typeable (Typeable)
import Ouroboros.Consensus.Block
Expand All @@ -80,7 +80,8 @@ import Ouroboros.Consensus.Fragment.InFuture (CheckInFuture,
import qualified Ouroboros.Consensus.Fragment.InFuture as InFuture
import Ouroboros.Consensus.Ledger.Extended (ExtLedgerState (..))
import Ouroboros.Consensus.MiniProtocol.ChainSync.Client
(CSJConfig (..), ChainSyncLoPBucketConfig (..))
(CSJConfig (..), CSJEnabledConfig (..),
ChainSyncLoPBucketConfig (..))
import qualified Ouroboros.Consensus.MiniProtocol.ChainSync.Client.InFutureCheck as InFutureCheck
import qualified Ouroboros.Consensus.Network.NodeToClient as NTC
import qualified Ouroboros.Consensus.Network.NodeToNode as NTN
Expand Down Expand Up @@ -132,11 +133,13 @@ import Ouroboros.Network.PeerSelection.PeerSharing.Codec
import Ouroboros.Network.Protocol.Limits (shortWait)
import Ouroboros.Network.RethrowPolicy
import qualified SafeWildCards
import System.Environment (lookupEnv)
import System.Exit (ExitCode (..))
import System.FilePath ((</>))
import System.FS.API (SomeHasFS (..))
import System.FS.API.Types
import System.FS.IO (ioHasFS)
import System.IO.Unsafe (unsafePerformIO)
import System.Random (StdGen, newStdGen, randomIO, randomRIO, split)

{-------------------------------------------------------------------------------
Expand Down Expand Up @@ -867,6 +870,10 @@ stdRunDataDiffusion ::
-> IO ()
stdRunDataDiffusion = Diffusion.run

csjEnabled :: Bool
csjEnabled = isJust $ unsafePerformIO $ lookupEnv "ENABLE_CSJ"
{-# NOINLINE csjEnabled #-}

-- | Conveniently packaged 'LowLevelRunNodeArgs' arguments from a standard
-- non-testing invocation.
stdLowLevelRunNodeArgsIO ::
Expand All @@ -893,7 +900,11 @@ stdLowLevelRunNodeArgsIO RunNodeArgs{ rnProtocolInfo
{ llrnBfcSalt
, llrnChainSyncTimeout = fromMaybe stdChainSyncTimeout srnChainSyncTimeout
, llrnChainSyncLoPBucketConfig = ChainSyncLoPBucketDisabled
, llrnCSJConfig = CSJDisabled
, llrnCSJConfig = if csjEnabled
then CSJEnabled CSJEnabledConfig {
csjcJumpSize = 64800 -- 3k/f/2
}
else CSJDisabled
, llrnCustomiseHardForkBlockchainTimeArgs = id
, llrnGsmAntiThunderingHerd
, llrnKeepAliveRng
Expand Down

0 comments on commit 9a2f07a

Please sign in to comment.