cachelib/experimental/objcache/ObjectCache.h (15 lines): - line 109: // TODO: in the future, we should consider if we want to allow user to - line 247: // TODO: add comments for persistence - line 291: // TODO: Allow user to specify any compatible allocator resource - line 368: // TODO: replace "cache" with a "CacheCreator" helper, and update comments - line 394: // TODO: add shared-mem constructors - line 412: // TODO: pass in the configs for compaction, destructor, and persistence - line 444: // TODO: we need to actually recover creation and persistence as well - line 465: // TODO: support creationTime and expiryTime - line 494: // TODO: Allow user to specify any compatible allocator resource - line 513: // TODO: is there a better way to design this API? This easily crashes - line 515: // TODO: document params - line 520: // TODO: handle when this is bigger than 4MB - line 526: // TODO: Allow user to specify any compatible allocator resource - line 636: // TODO: we should allow user to specify their own remove callback. We can - line 642: // TODO: Move callback should trigger an object level compaction cachelib/allocator/CacheAllocator.h (5 lines): - line 149: // check MMLru.h's Container (TODO use boost concepts to enforce the - line 193: // TODO (sathya) some types take CacheT and some take CacheTrait. need to - line 679: // TODO: When Read/Write Handles are ready, change this to allow - line 1037: // TODO think of a way to abstract this since it only makes sense for - line 1144: // TODO (sathya) wrap this into a guard object cachelib/allocator/CacheAllocator-inl.h (3 lines): - line 2221: // TODO export evictions, numItems etc from compact cache directly. - line 3157: // TODO: remove this at version 17. - line 3186: // TODO: cachelib/datatype/Buffer.h (2 lines): - line 293: // TODO: T95574601 remove compaction callback in favor of using iterator to - line 302: // TODO: T37573713 This is just under 1MB to allow some room for the chained cachelib/cachebench/workload/ReplayGenerator.h (2 lines): - line 46: // TODO: not thread safe, can only work with single threaded stressor - line 81: // TODO optype parsing cachelib/allocator/CacheAllocatorConfig.h (2 lines): - line 399: // TODO: - line 467: // TODO: cachelib/experimental/objcache/Allocator.h (2 lines): - line 168: // TODO: can we use some form of a compressed pointer? As-is, each allocator - line 206: // TODO: consider updating CacheAllocator to allow us using an "item" cachelib/allocator/memory/AllocationClass.cpp (2 lines): - line 541: // TODO consider completeSlabRelease not sleep forever and provide the - line 659: // TODO add checks here to ensure that we dont double free in debug mode. cachelib/cachebench/runner/CacheStressor.h (2 lines): - line 211: // TODO maintain state on whether key has chained allocs and use it to only - line 315: // TODO currently pure lookaside, we should cachelib/cachebench/util/NandWrites.cpp (2 lines): - line 363: // TODO: add unit tests - line 406: // TODO: update the method to return an optional instead? cachelib/allocator/MMTinyLFU-inl.h (2 lines): - line 205: // TODO: If this shows in latency, we may need to grow the counters - line 310: // TODO: May be save/restore the counters. cachelib/cachebench/workload/PieceWiseReplayGenerator.cpp (2 lines): - line 147: // TODO: better handling non-GET requests - line 256: // TODO: implement the relaxed mode cachelib/allocator/PoolResizeStrategy.h (2 lines): - line 29: // TODO (sathya) add some tests for this once we move to Gmock. Adding any - line 53: // TODO (get a better metric for this by figuring out the impact of cachelib/cachebench/consistency/ValueHistory.h (2 lines): - line 119: // TODO: Cleanup history - line 120: // TODO: Log evictions cachelib/cachebench/consistency/ValueHistory.cpp (2 lines): - line 160: // TODO: If the log looks like ..., Gb[i], Ge[i] - remove these last two - line 305: // TODO: Check if cleanup can lead to false detections cachelib/allocator/memory/AllocationClass.h (2 lines): - line 436: // TODO store the index of the slab instead of the actual pointer. Pointer - line 441: // TODO use an intrusive container on the freed slabs. cachelib/allocator/memory/MemoryPool.cpp (1 line): - line 288: // TODO: introduce a new sharded lock by allocation class id for this slow cachelib/shm/PosixShmSegment.cpp (1 line): - line 58: // FIXME: posix says that ENOENT is thrown only when O_CREAT cachelib/navy/serialization/RecordIO.cpp (1 line): - line 237: // TODO: T95780004 get block size from device or through constructor cachelib/cachebench/util/JSONConfig.h (1 line): - line 58: // TODO: use std::is_integral to merge uint32/uint64/size_t etc. cachelib/allocator/CacheStats.h (1 line): - line 92: // TODO: Make the MMContainerStat generic by moving the Lru/2Q specific cachelib/common/AccessTracker.h (1 line): - line 67: // TODO (sathya) this can be cut short by 4x using a uin8_t instead of cachelib/allocator/Handle.h (1 line): - line 303: // TODO: T87126824. The behavior for (2) is far from ideal. CacheLib will cachelib/datatype/Map-inl.h (1 line): - line 202: // TODO: This is just under 1MB to allow some room for the item header cachelib/navy/bighash/BigHash.cpp (1 line): - line 466: // TODO (T93631284) we only read a bucket if the bloom filter indicates that cachelib/navy/block_cache/BlockCache.cpp (1 line): - line 444: // TODO: T95784621 this should be made configurable by having the reinsertion cachelib/allocator/KAllocation.h (1 line): - line 110: // TODO add support for alignment cachelib/navy/Factory.cpp (1 line): - line 310: // TODO: T95780876 detect if file exists and is of expected size. If not, cachelib/cachebench/util/CacheConfig.h (1 line): - line 205: // TODO: use an opaque config file path and put that path location here if we cachelib/cachebench/runner/Stressor.cpp (1 line): - line 135: // TODO: Remove the empty() check once we label workload-based configs cachelib/allocator/RebalanceInfo.h (1 line): - line 94: // case, we simply consider delta as 0. TODO: change following if to cachelib/navy/bighash/BucketStorage.h (1 line): - line 25: // TODO: (beyondsora) T31519237 Change BucketStorage to allocate backwards cachelib/cachebench/consistency/ValueTracker.cpp (1 line): - line 80: // TODO: Implement cachelib/common/Utils.cpp (1 line): - line 206: // TODO this could be a large allocation. may be break it up if it matters. cachelib/allocator/MM2Q.h (1 line): - line 476: // TODO: make this static and *Hot, *Cold, *Tail methods static cachelib/common/Cohort.h (1 line): - line 152: // TODO (sathya) catch incorrect decRefs and throw cachelib/cachebench/workload/WorkloadDistribution.h (1 line): - line 96: // TODO In general, could have different keyFrequency factor besides 2 cachelib/navy/block_cache/RegionManager.cpp (1 line): - line 304: // TODO: remove when we fix T95777575 cachelib/allocator/Util.h (1 line): - line 74: // TODO (sathya) use the extra space in this allocation to sneak more