File tree Expand file tree Collapse file tree 2 files changed +24
-1
lines changed
Expand file tree Collapse file tree 2 files changed +24
-1
lines changed Original file line number Diff line number Diff line change 117117 hasPrometheus = map ( n : if isInt n then n + i else n ) baseConfig . hasPrometheus ;
118118 } )
119119 )
120+ // optionalAttrs ( cfg . withUtxoHdLsmt i ) {
121+ LedgerDB = {
122+ Backend = "V2LSM" ;
123+ LSMDatabasePath = cfg . lmdbDatabasePath i ;
124+ } ;
125+ }
120126 // optionalAttrs ( cfg . withUtxoHdLmdb i ) {
121127 LedgerDB = {
122128 Backend = "V1LMDB" ;
427433 default = null ;
428434 apply = x : if lib . isFunction x then x else if x == null then _ : null else _ : x ;
429435 description = ''
430- A node UTxO-HD LMDB path for performant disk I/O, for each instance.
436+ A node UTxO-HD on-disk ( LMDB or LSM-trees) path for performant disk I/O, for each instance.
431437 This could point to a direct-access SSD, with a specifically created journal-less file system and optimized mount options.
432438 '' ;
433439 } ;
@@ -802,6 +808,16 @@ in {
802808 '' ;
803809 } ;
804810
811+ withUtxoHdLsmt = mkOption {
812+ type = funcToOr bool ;
813+ default = false ;
814+ apply = x : if lib . isFunction x then x else _ : x ;
815+ description = ''
816+ On a UTxO-HD enabled node, the in-memory backend is the default.
817+ This activates the on-disk backend (LSM-Trees) instead.
818+ '' ;
819+ } ;
820+
805821 extraArgs = mkOption {
806822 type = listOf str ;
807823 default = [ ] ;
Original file line number Diff line number Diff line change 7676 # Allow for local clusters to have multiple LMDB directories in the same physical ssd_directory;
7777 # non-block producers (like the explorer node) keep using the in-memory backend
7878 withUtxoHdLmdb = profile . node . utxo_lmdb && isProducer ;
79+ withUtxoHdLsmt = profile . node . utxo_lsmt && isProducer ;
7980 lmdbDatabasePath = liveTablesPath i ;
8081
8182 ## Combine:
122123 AlonzoGenesisFile = "../genesis/genesis.alonzo.json" ;
123124 ConwayGenesisFile = "../genesis/genesis.conway.json" ;
124125 DijkstraGenesisFile = "../genesis/genesis.dijkstra.json" ;
126+ } // optionalAttrs ( profile . node . utxo_lsmt && isProducer )
127+ {
128+ LedgerDB = {
129+ Backend = "V2LSM" ;
130+ LSMDatabasePath = liveTablesPath i ;
131+ } ;
125132 } // optionalAttrs ( profile . node . utxo_lmdb && isProducer )
126133 {
127134 LedgerDB = {
You can’t perform that action at this time.
0 commit comments