github HoosatNetwork/HTND v1.6.6
HTND 1.6.6

8 hours ago

This release mainly decreases RAM usage of the node:

  • Add guard code to stop connecting to loopback on p2p.
  • Drop ping timeout to 30s from 10m
  • Add 250 ms cache to GetBlockDagInfo
  • Add a env variable divisor to decrease large cache sizes HTND_LARGE_CACHE_DIVISOR=5 maximum divisor 50.
  • Fix few cases removing something from cache when something is deleted from the datastore.
  • Optimize pebble for less RAM usage and add following env variables for controlling pebble:
    • HTND_BLOOM_FILTER_LEVEL = Bloom bits/key (def: 16)
    • HTND_MEMTABLE_SIZE_MB = Memtable size MB (def: 64)
    • HTND_MEMTABLE_STOP_THRESHOLD = Memtable stop mult (def: 8) → write stall trigger
    • HTND_PEBBLE_CACHE_MB = Block cache MB (def: 512)
    • HTND_L0_COMPACTION_THRESHOLD = L0→L1 trigger files (def ~4)
    • HTND_L0_STOP_WRITES_THRESHOLD = Hard L0 stop writes (def ~12)
    • HTND_L0_COMPACTION_FILE_THRESHOLD = L0 file count trigger (def ~500)
    • HTND_PEBBLE_DISABLE_FLUSH_SPLIT = Disable flush split (0=split on, def: 0)
    • HTND_L0_COMPACTION_CONCURRENCY = Extra L0 compaction threads when pressured
    • HTND_COMPACTION_DEBT_CONCURRENCY_GB = GB debt → more compaction concurrency
    • HTND_READ_COMPACTION_RATE_KB = Read-triggered compaction pace (KB/s)
    • HTND_READ_SAMPLING_MULTIPLIER = Read sampling aggression
    • HTND_PEBBLE_LOG_EVENTS = Log Pebble events (0=off, def: 0)
    • HTND_PEBBLE_LOG_EVENTS_MIN_MS = Min event duration to log (ms)
  • Use real LRU cache instead of random eviction and optimize for less mapaccess2 usage.
  • Set GOMEMLIMIT by default to 4GB
  • Add freeOSMemory calls to few points in the node and to run periodically every 30s.
  • Add RPC stress testing tool.
  • Disable GetBlock call retrying to fetch data from the node, this was used to attack nodes.

Full Changelog: V1.6.5...v1.6.6

Don't miss a new HTND release

NewReleases is sending notifications on new releases.