Sharmadha Sainath created ATLAS-2036: ----------------------------------------
Summary: Search using entity and trait attributes - Issue with Boolean attributes of tag and case insensitive search Key: ATLAS-2036 URL: https://issues.apache.org/jira/browse/ATLAS-2036 Project: Atlas Issue Type: Bug Components: atlas-core Affects Versions: 0.9-incubating Reporter: Sharmadha Sainath 1. Created a tag tag1 with attributes 1. strAttr of type string , 2. boolAttr of type boolean , 3. intAttr of type integer 2. Associated an entity to the tag with values = strAttr : value boolAttr : false intAttr : 5 3. In Basic search : a) tag = tag1 , tagfilters : strAttr = value fetched the entity b) tag = tag1 , tagfilters : strAttr= VALUE fetched the entity c) tag = tag1 , tagfilters : strAttr = value , boolAttr = false , intAttr = 5 fetched the entity d) tag = tag1 , tagfilters : strAttr = VALUE , intAttr = 5 fetched any entity e) tag = tag1 , tagfilters : boolAttr = false fetched any entity e) But tag = tag1 , tagfilters: strAttr = VALUE , boolAttr = false didn't fetch any entity . (to be noted : strAttr's value is in CAPS) Logs when searching for tag filters : strAttr : VALUE , intAttr:5 {code} 2017-08-09 13:47:55,474 INFO - [pool-2-thread-9 - 5b8ea24d-0708-4571-b55d-a345d2997ed4:] ~ Converted query string with 3 replacements: [v."__typeName":(tag1) AND v."tag1.intAttr": 5 AND v."tag1.strAttr": VALUE] => [iyt_t:(tag1) AND 870ud_i: 5 AND 86rd1_t: VALUE] (IndexSerializer:648) 2017-08-09 13:47:55,484 INFO - [pool-2-thread-9 - 5b8ea24d-0708-4571-b55d-a345d2997ed4:] ~ Converted query string with 3 replacements: [v."__typeName":(tag1) AND v."tag1.intAttr": 5 AND v."tag1.strAttr": VALUE] => [iyt_t:(tag1) AND 870ud_i: 5 AND 86rd1_t: VALUE] (IndexSerializer:648) {code} Logs when searching for tag filters : strAttr : VALUE , boolAttr : false (Note : no INFO logs from IndexSerializer regrading query conversion are found in this search ) {code} WARN - [pool-2-thread-9 - 4c272ca0-4853-4d24-b2d0-f10934516889:] ~ search includes non-indexed attribute 'tag1.boolAttr'; might cause poor performance (SearchProcessor:120) {code} Thus , any case insensitive string search with boolean attribute in tag search fails to fetch the entity. Other datatypes (including enum) when combined with case insensitive search fetches the expected entity. Also , this behavior is not observed on entity filters. For example , an hdfs_path entity with description - hdfs_path , isSymLink = false , both the following search fetch the entity : 1. description = hdfs_path , isSymLink = false 2. description = Hdfs_path , isSymLink = false -- This message was sent by Atlassian JIRA (v6.4.14#64029)