[ https://issues.apache.org/jira/browse/ACCUMULO-4195?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15251953#comment-15251953 ]
ASF GitHub Bot commented on ACCUMULO-4195: ------------------------------------------ Github user keith-turner commented on a diff in the pull request: https://github.com/apache/accumulo/pull/95#discussion_r60587760 --- Diff: core/src/main/java/org/apache/accumulo/core/file/DispatchingFileFactory.java --- @@ -60,78 +54,54 @@ private FileOperations findFileFactory(String file) { } } - @Override - public FileSKVIterator openIndex(String file, FileSystem fs, Configuration conf, AccumuloConfiguration acuconf) throws IOException { - return findFileFactory(file).openIndex(file, fs, conf, acuconf, null, null); - } - - @Override - public FileSKVIterator openReader(String file, boolean seekToBeginning, FileSystem fs, Configuration conf, RateLimiter readLimiter, - AccumuloConfiguration acuconf) throws IOException { - FileSKVIterator iter = findFileFactory(file).openReader(file, seekToBeginning, fs, conf, readLimiter, acuconf, null, null); - if (acuconf.getBoolean(Property.TABLE_BLOOM_ENABLED)) { - return new BloomFilterLayer.Reader(iter, acuconf); + /** If the table configuration disallows caching, rewrite the options object to not pass the caches. */ + private static <T extends FileReaderOperation<T>> T filterCaches(T input) { + BlockCache indexCache = input.getIndexCache(); + BlockCache dataCache = input.getDataCache(); + if (!input.getTableConfiguration().getBoolean(Property.TABLE_INDEXCACHE_ENABLED)) { + indexCache = null; --- End diff -- Nevemind. I thought this had no impact, but I was looking at the subtracted lines of the diff. Now I see that it does have an impact. > Generalized configuration object for Accumulo rfile interaction > --------------------------------------------------------------- > > Key: ACCUMULO-4195 > URL: https://issues.apache.org/jira/browse/ACCUMULO-4195 > Project: Accumulo > Issue Type: Improvement > Reporter: Josh Elser > Assignee: Shawn Walker > Fix For: 1.8.0 > > > Taken from https://github.com/apache/accumulo/pull/90/files#r59489073 > On [~ShawnWalker]'s PR for ACCUMULO-4187 which adds rate-limiting on major > compactions, we noted that many of the changes were related to passing an > extra argument (RateLimiter) around through all of the code which is related > to file interaction. > It would be nice to move to a centralized configuration object instead of > having to add a new argument every time some new feature is added to the > file-path. -- This message was sent by Atlassian JIRA (v6.3.4#6332)