Repository: microsoft/garnet
File: libs/host/Configuration/Options.cs (C#)

Code before:
        [MemorySizeValidation]
        [Option('p', "page", Required = false, HelpText = "Size of each page in bytes (rounds down to power of 2)")]
        public string PageSize { get; set; }

        [MemorySizeValidation]
        [Option('s', "segment", Required = false, HelpText = "Size of each log segment in bytes on disk (rounds down to power of 2)")]
        public string SegmentSize { get; set; }

        [MemorySizeValidation]
        [Option('i', "index", Required = false, HelpText = "Size of hash index in bytes (rounds down to power of 2)")]
        public string IndexSize { get; set; }

        [MemorySizeValidation(false)]
        [Option("index-max-size", Required = false, HelpText = "Max size of hash index in bytes (rounds down to power of 2)")]
        public string IndexMaxSize { get; set; }

        [PercentageValidation(false)]
        [Option("mutable-percent", Required = false, HelpText = "Percentage of log memory that is kept mutable")]
        public int MutablePercent { get; set; }

        [MemorySizeValidation(false)]
        [Option("obj-heap-memory", Required = false, HelpText = "Object store heap memory size in bytes")]
        public string ObjectStoreHeapMemorySize { get; set; }

        [MemorySizeValidation]
        [Option("obj-log-memory", Required = false, HelpText = "Object store log memory used in bytes excluding heap memory")]
        public string ObjectStoreLogMemorySize { get; set; }

        [MemorySizeValidation]
        [Option("obj-page", Required = false, HelpText = "Size of each object store page in bytes (rounds down to power of 2)")]
        public string ObjectStorePageSize { get; set; }

        [MemorySizeValidation]
        [Option("obj-segment", Required = false, HelpText = "Size of each object store log segment in bytes on disk (rounds down to power of 2)")]
        public string ObjectStoreSegmentSize { get; set; }

        [MemorySizeValidation]
        [Option("obj-index", Required = false, HelpText = "Size of object store hash index in bytes (rounds down to power of 2)")]
        public string ObjectStoreIndexSize { get; set; }

        [MemorySizeValidation(false)]
        [Option("obj-index-max-size", Required = false, HelpText = "Max size of object store hash index in bytes (rounds down to power of 2)")]
        public string ObjectStoreIndexMaxSize { get; set; }

        [PercentageValidation]
        [Option("obj-mutable-percent", Required = false, HelpText = "Percentage of object store log memory that is kept mutable")]
        public int ObjectStoreMutablePercent { get; set; }

        [OptionValidation]
        [Option("storage-tier", Required = false, HelpText = "Enable tiering of records (hybrid log) to storage, to support a larger-than-memory store. Use --logdir to specify storage directory.")]
        public bool? EnableStorageTier { get; set; }

Review comment (suggestion):
Object store log memory used in bytes (only the log with references, excluding heap memory of objects pointed to from the log)

Code after:
        [MemorySizeValidation]
        [Option('p', "page", Required = false, HelpText = "Size of each page in bytes (rounds down to power of 2)")]
        public string PageSize { get; set; }

        [MemorySizeValidation]
        [Option('s', "segment", Required = false, HelpText = "Size of each log segment in bytes on disk (rounds down to power of 2)")]
        public string SegmentSize { get; set; }

        [MemorySizeValidation]
        [Option('i', "index", Required = false, HelpText = "Start size of hash index in bytes (rounds down to power of 2)")]
        public string IndexSize { get; set; }

        [MemorySizeValidation(false)]
        [Option("index-max-size", Required = false, HelpText = "Max size of hash index in bytes (rounds down to power of 2)")]
        public string IndexMaxSize { get; set; }

        [PercentageValidation(false)]
        [Option("mutable-percent", Required = false, HelpText = "Percentage of log memory that is kept mutable")]
        public int MutablePercent { get; set; }

        [MemorySizeValidation(false)]
        [Option("obj-heap-memory", Required = false, HelpText = "Object store heap memory size in bytes (Sum of size taken up by all object instances in the heap)")]
        public string ObjectStoreHeapMemorySize { get; set; }

        [MemorySizeValidation]
        [Option("obj-log-memory", Required = false, HelpText = "Object store log memory used in bytes (Size of only the log with references to heap objects, excludes size of heap memory consumed by the objects themselves referred to from the log)")]
        public string ObjectStoreLogMemorySize { get; set; }

        [MemorySizeValidation]
        [Option("obj-page", Required = false, HelpText = "Size of each object store page in bytes (rounds down to power of 2)")]
        public string ObjectStorePageSize { get; set; }

        [MemorySizeValidation]
        [Option("obj-segment", Required = false, HelpText = "Size of each object store log segment in bytes on disk (rounds down to power of 2)")]
        public string ObjectStoreSegmentSize { get; set; }

        [MemorySizeValidation]
        [Option("obj-index", Required = false, HelpText = "Start size of object store hash index in bytes (rounds down to power of 2)")]
        public string ObjectStoreIndexSize { get; set; }

        [MemorySizeValidation(false)]
        [Option("obj-index-max-size", Required = false, HelpText = "Max size of object store hash index in bytes (rounds down to power of 2)")]
        public string ObjectStoreIndexMaxSize { get; set; }

        [PercentageValidation]
        [Option("obj-mutable-percent", Required = false, HelpText = "Percentage of object store log memory that is kept mutable")]
        public int ObjectStoreMutablePercent { get; set; }

        [OptionValidation]
        [Option("storage-tier", Required = false, HelpText = "Enable tiering of records (hybrid log) to storage, to support a larger-than-memory store. Use --logdir to specify storage directory.")]
        public bool? EnableStorageTier { get; set; }