Whamcloud - gitweb
LU-13881 pcc: comparator support for PCC rules 85/39585/3
authorQian Yingjin <qian@ddn.com>
Thu, 6 Aug 2020 08:29:21 +0000 (16:29 +0800)
committerQian Yingjin <qian@ddn.com>
Wed, 26 Aug 2020 02:22:38 +0000 (10:22 +0800)
commitf12ff9ccf6f9f4f0078c5ca73e489e46fc821ebf
treecb1cb8cdba2007911dad45d86b3dc2f6898985a5
parent4023eae48e8b696674ba3e268b0ce0ade4d01131
LU-13881 pcc: comparator support for PCC rules

There are increasing requirements for PCC rules to add comparator
support:
- File data larger or smaller than certain threshold should not
  auto cache in PCC (i.e. larger than the capacity of PCC backend
  on a client).
- Users can specify a range of UID/GID/ProjID for auto caching on
  PCC when define a rule;

In addition to the original equal (=) operator, this patch also
adds greater than (>) and less than (<) comparison operators.

The following rule expressions are supported:
- "projid={100}&size>{1M}&size<{500G}"
- "projid>{100}&projid<{110}"
- "uid<{1500}&uid>{1000}"

Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: I9f024eb6903f5652ba3cf04fa289456803493b2c
lustre/llite/namei.c
lustre/llite/pcc.c
lustre/llite/pcc.h
lustre/lov/lov_ea.c
lustre/obdclass/lprocfs_status.c
lustre/tests/sanity-pcc.sh