HDFS-15283. Cache pool MAXTTL is not persisted and restored on cluster restart. Contributed by Stephen O'Donnell.
Signed-off-by: Wei-Chiu Chuang <weichiu@apache.org>
(cherry picked from commit 3481895f8a
)
This commit is contained in:
parent
b4ba9bed7c
commit
aaad947c74
|
@ -1071,6 +1071,10 @@ public class CacheManager {
|
|||
if (p.getLimit() != null)
|
||||
b.setLimit(p.getLimit());
|
||||
|
||||
if (p.getMaxRelativeExpiryMs() != null) {
|
||||
b.setMaxRelativeExpiry(p.getMaxRelativeExpiryMs());
|
||||
}
|
||||
|
||||
pools.add(b.build());
|
||||
}
|
||||
|
||||
|
@ -1136,6 +1140,10 @@ public class CacheManager {
|
|||
if (p.hasLimit())
|
||||
info.setLimit(p.getLimit());
|
||||
|
||||
if (p.hasMaxRelativeExpiry()) {
|
||||
info.setMaxRelativeExpiryMs(p.getMaxRelativeExpiry());
|
||||
}
|
||||
|
||||
addCachePool(info);
|
||||
}
|
||||
|
||||
|
|
|
@ -630,10 +630,12 @@ public class TestCacheDirectives {
|
|||
String groupName = "partygroup";
|
||||
FsPermission mode = new FsPermission((short)0777);
|
||||
long limit = 747;
|
||||
long maxExpiry = 1234567890;
|
||||
dfs.addCachePool(new CachePoolInfo(pool)
|
||||
.setGroupName(groupName)
|
||||
.setMode(mode)
|
||||
.setLimit(limit));
|
||||
.setLimit(limit)
|
||||
.setMaxRelativeExpiryMs(maxExpiry));
|
||||
RemoteIterator<CachePoolEntry> pit = dfs.listCachePools();
|
||||
assertTrue("No cache pools found", pit.hasNext());
|
||||
CachePoolInfo info = pit.next().getInfo();
|
||||
|
@ -641,6 +643,7 @@ public class TestCacheDirectives {
|
|||
assertEquals(groupName, info.getGroupName());
|
||||
assertEquals(mode, info.getMode());
|
||||
assertEquals(limit, (long)info.getLimit());
|
||||
assertEquals(maxExpiry, (long)info.getMaxRelativeExpiryMs());
|
||||
assertFalse("Unexpected # of cache pools found", pit.hasNext());
|
||||
|
||||
// Create some cache entries
|
||||
|
@ -701,6 +704,7 @@ public class TestCacheDirectives {
|
|||
assertEquals(groupName, info.getGroupName());
|
||||
assertEquals(mode, info.getMode());
|
||||
assertEquals(limit, (long)info.getLimit());
|
||||
assertEquals(maxExpiry, (long)info.getMaxRelativeExpiryMs());
|
||||
assertFalse("Unexpected # of cache pools found", pit.hasNext());
|
||||
|
||||
dit = dfs.listCacheDirectives(null);
|
||||
|
|
Loading…
Reference in New Issue