protected boolean doQuerySearchManager(Query query, QueryOptions options) throws StorageEngineException { if (super.doQuerySearchManager(query, options)) { if (VariantStorageEngine.UseSearchIndex.from(options).equals(VariantStorageEngine.UseSearchIndex.YES)) {
Query query, QueryOptions options, StudyConfigurationManager studyConfigurationManager, String dbName) throws StorageEngineException { if (!VariantStorageEngine.UseSearchIndex.from(options).equals(VariantStorageEngine.UseSearchIndex.NO)) { // YES or AUTO if (isValidParam(query, VariantQueryParam.STUDY)) { if (VariantQueryUtils.splitValue(query.getString(VariantQueryParam.STUDY.key())).getValue().size() > 1) {
UseSearchIndex useSearchIndex = UseSearchIndex.from(options);
/** * Decide if a query should be resolved using SearchManager or not. * * @param query Query * @param options QueryOptions * @return true if should resolve only with SearchManager * @throws StorageEngineException StorageEngineException */ protected boolean doQuerySearchManager(Query query, QueryOptions options) throws StorageEngineException { return !UseSearchIndex.from(options).equals(UseSearchIndex.NO) // YES or AUTO && isQueryCovered(query) && (options.getBoolean(QueryOptions.COUNT) || isIncludeCovered(options)) && searchActiveAndAlive(); }
@Override protected boolean doIntersectWithSearch(Query query, QueryOptions options) throws StorageEngineException { boolean doIntersectWithSearch = super.doIntersectWithSearch(query, options); if (doIntersectWithSearch) { if (!isValidParam(query, VariantQueryParam.ANNOT_TRAIT) && VariantStorageEngine.UseSearchIndex.from(options).equals(VariantStorageEngine.UseSearchIndex.AUTO) && doHBaseSampleIndexIntersect(query, options)) { return false; } } return doIntersectWithSearch; }