: We are currently working on having Solr files read from HDFS. We extended : some of the classes so as to avoid modifying the original Solr code and : make it compatible with the future release. So here comes the question, I : found in QueryElevationComponent, there is a piece of code checking whether : elevate.xml exists at local file system. I am wondering if there is a way : to by pass this?
I haven't looked closely, but i suspect this code is just kind of old and could be cleaned up to play more nicely with SolrCloud (and thus your HDFS work as well) The teory behind this code is that we wnat to support two distinct use cases: reading the elevation file either from config (once on SolrCore creation) or from data (on every Indexreader reload). the use of getConfigDir() to check for the elevation file could probably be replaced by a straight call to openResource (with null check). the check for the elevation file in the data dir could ... maybe? .. be delegated to the DirectoryFactory? ... i'm not sure about that part, i havne't kept close tabs on some of hte improvements miller has made with that abstraction lately. (BTW: I think some of this was also already fixed in SOLR-3522, but i haven't looked at how exactly) The simplest answer would be just recognize that not every feature of solr can work in conjunction with every possible solr plugin -- perhaps if people wnat to use your "HdfsDirectoryFactory" they just have to accept that they can only use the "conf" style elevate.xml instead of the "data" option? -Hoss