private List<OBinaryCondition> filterIndexedFunctionsWithoutIndex(List<OBinaryCondition> indexedFunctionConditions, OFromClause fromClause, OCommandContext ctx) { if (indexedFunctionConditions == null) { return null; } List<OBinaryCondition> result = new ArrayList<>(); for (OBinaryCondition cond : indexedFunctionConditions) { if (cond.allowsIndexedFunctionExecutionOnTarget(fromClause, ctx)) { result.add(cond); } else if (!cond.canExecuteIndexedFunctionWithoutIndex(fromClause, ctx)) { throw new OCommandExecutionException("Cannot evaluate " + cond + ": no index defined"); } } return result; }
OBinaryCondition blockCandidateFunction = null; for (OBinaryCondition cond : indexedFunctionConditions) { if (!cond.allowsIndexedFunctionExecutionOnTarget(info.target, ctx)) { if (!cond.canExecuteIndexedFunctionWithoutIndex(info.target, ctx)) { throw new OCommandExecutionException("Cannot execute " + block + " on " + queryTarget);