Alexey Serbin has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20607 )

Change subject: KUDU-613: Scan Resistant Caching
......................................................................


Patch Set 8:

(3 comments)

I took a quick look.

My request is to split this changelist into multiple pieces, at least separate 
out the following:
  * refactoring on cache.{h,cc} and nvm_cache.{h,cc} that preclude introducing 
the SLRU cache
  * introducing the SLRU cache
  * introducing block cache metrics

Thank you!

http://gerrit.cloudera.org:8080/#/c/20607/8/src/kudu/util/block_cache_metrics.h
File src/kudu/util/block_cache_metrics.h:

PS8:
Why is it necessary to update the block cache metrics in the same changelist 
where implementing a new type of a cache?

Is it possible to introduce block cache metrics in a separate follow-up 
changelist?


http://gerrit.cloudera.org:8080/#/c/20607/8/src/kudu/util/cache.h
File src/kudu/util/cache.h:

http://gerrit.cloudera.org:8080/#/c/20607/8/src/kudu/util/cache.h@67
PS8, Line 67:   // Recency list cache implementations (FIFO, LRU, etc.)
Is it possible to separate out this and other refactoring (i.e. moving 
duplicated code from nvm_cache.{h,cc} and cache.{h,cc}) into a separate 
changelist?


http://gerrit.cloudera.org:8080/#/c/20607/8/src/kudu/util/slru_cache.h
File src/kudu/util/slru_cache.h:

http://gerrit.cloudera.org:8080/#/c/20607/8/src/kudu/util/slru_cache.h@50
PS8, Line 50:   class HandleDeleter {
            :    public:
            :     explicit HandleDeleter(SLRUCache* c)
            :         : c_(c) {
            :     }
            :
            :     void operator()(Handle* h) const {
            :       if (h != nullptr) {
            :         c_->Release(h);
            :       }
            :     }
            :
            :     SLRUCache* cache() const {
            :       return c_;
            :     }
            :
            :    private:
            :     SLRUCache* c_;
            :   };
nit: maybe, it's time to templatize this class and re-use it throughout various 
types of caches in util?



--
To view, visit http://gerrit.cloudera.org:8080/20607
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I45531534a2049dd38c002f4dc7982df9fd46e0bb
Gerrit-Change-Number: 20607
Gerrit-PatchSet: 8
Gerrit-Owner: Mahesh Reddy <mre...@cloudera.com>
Gerrit-Reviewer: Abhishek Chennaka <achenn...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <ale...@apache.org>
Gerrit-Reviewer: Attila Bukor <abu...@apache.org>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Mahesh Reddy <mre...@cloudera.com>
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Comment-Date: Wed, 31 Jan 2024 04:44:16 +0000
Gerrit-HasComments: Yes

Reply via email to