github.com/decred/dcrlnd@v0.7.6/channeldb/migration_01_to_11/options.go (about) 1 package migration_01_to_11 2 3 import "time" 4 5 const ( 6 // DefaultRejectCacheSize is the default number of rejectCacheEntries to 7 // cache for use in the rejection cache of incoming gossip traffic. This 8 // produces a cache size of around 1MB. 9 DefaultRejectCacheSize = 50000 10 11 // DefaultChannelCacheSize is the default number of ChannelEdges cached 12 // in order to reply to gossip queries. This produces a cache size of 13 // around 40MB. 14 DefaultChannelCacheSize = 20000 15 16 // DefaultDBTimeout specifies the default timeout value when opening 17 // the bbolt database. 18 DefaultDBTimeout = time.Second * 60 19 ) 20 21 // Options holds parameters for tuning and customizing a channeldb.DB. 22 type Options struct { 23 // RejectCacheSize is the maximum number of rejectCacheEntries to hold 24 // in the rejection cache. 25 RejectCacheSize int 26 27 // ChannelCacheSize is the maximum number of ChannelEdges to hold in the 28 // channel cache. 29 ChannelCacheSize int 30 31 // NoFreelistSync, if true, prevents the database from syncing its 32 // freelist to disk, resulting in improved performance at the expense of 33 // increased startup time. 34 NoFreelistSync bool 35 36 // DBTimeout specifies the timeout value to use when opening the wallet 37 // database. 38 DBTimeout time.Duration 39 } 40 41 // DefaultOptions returns an Options populated with default values. 42 func DefaultOptions() Options { 43 return Options{ 44 RejectCacheSize: DefaultRejectCacheSize, 45 ChannelCacheSize: DefaultChannelCacheSize, 46 NoFreelistSync: true, 47 DBTimeout: DefaultDBTimeout, 48 } 49 } 50 51 // OptionModifier is a function signature for modifying the default Options. 52 type OptionModifier func(*Options)