This is an automated email from the ASF dual-hosted git repository. nixon pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/atlas.git
commit 0bd819a9142446aa031c981fc76f27b75c1b2e58 Author: Pinal Shah <pinal.s...@freestoneinfotech.com> AuthorDate: Tue Mar 31 16:13:28 2020 +0530 ATLAS-3672 : Search with Classification without filters and Entity with filters doesn't fetch expected results. Signed-off-by: nixonrodrigues <ni...@apache.org> (cherry picked from commit 4d0f5ce213a49fcd8509a2ea5f6a0bb733c0c186) --- .../apache/atlas/discovery/SearchProcessor.java | 88 +++++++++++----------- 1 file changed, 42 insertions(+), 46 deletions(-) diff --git a/repository/src/main/java/org/apache/atlas/discovery/SearchProcessor.java b/repository/src/main/java/org/apache/atlas/discovery/SearchProcessor.java index 074ad8b..5d7c508 100644 --- a/repository/src/main/java/org/apache/atlas/discovery/SearchProcessor.java +++ b/repository/src/main/java/org/apache/atlas/discovery/SearchProcessor.java @@ -738,52 +738,48 @@ public abstract class SearchProcessor { operator = processedCriteria.getOperator(); } - try { - final String qualifiedName = type.getQualifiedAttributeName(attrName); - - switch (operator) { - case LT: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.LESS_THAN, attrValue); - break; - case LTE: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.LESS_THAN_EQUAL, attrValue); - break; - case GT: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.GREATER_THAN, attrValue); - break; - case GTE: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.GREATER_THAN_EQUAL, attrValue); - break; - case EQ: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.EQUAL, attrValue); - break; - case NEQ: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.NOT_EQUAL, attrValue); - break; - case LIKE: - query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.REGEX, attrValue); - break; - case CONTAINS: - query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.REGEX, getContainsRegex(attrValue)); - break; - case STARTS_WITH: - query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.PREFIX, attrValue); - break; - case ENDS_WITH: - query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.REGEX, getSuffixRegex(attrValue)); - break; - case IS_NULL: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.EQUAL, null); - break; - case NOT_NULL: - query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.NOT_EQUAL, null); - break; - default: - LOG.warn("{}: unsupported operator. Ignored", operator); - break; - } - } catch (AtlasBaseException e) { - LOG.error("toGraphFilterQuery(): failed for attrName=" + attrName + "; operator=" + operator + "; attrValue=" + attrValue, e); + final String qualifiedName = type.getAttribute(attrName).getVertexPropertyName(); + + switch (operator) { + case LT: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.LESS_THAN, attrValue); + break; + case LTE: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.LESS_THAN_EQUAL, attrValue); + break; + case GT: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.GREATER_THAN, attrValue); + break; + case GTE: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.GREATER_THAN_EQUAL, attrValue); + break; + case EQ: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.EQUAL, attrValue); + break; + case NEQ: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.NOT_EQUAL, attrValue); + break; + case LIKE: + query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.REGEX, attrValue); + break; + case CONTAINS: + query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.REGEX, getContainsRegex(attrValue)); + break; + case STARTS_WITH: + query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.PREFIX, attrValue); + break; + case ENDS_WITH: + query.has(qualifiedName, AtlasGraphQuery.MatchingOperator.REGEX, getSuffixRegex(attrValue)); + break; + case IS_NULL: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.EQUAL, null); + break; + case NOT_NULL: + query.has(qualifiedName, AtlasGraphQuery.ComparisionOperator.NOT_EQUAL, null); + break; + default: + LOG.warn("{}: unsupported operator. Ignored", operator); + break; } } }