Uploaded image for project: 'Atlas'
  1. Atlas
  2. ATLAS-2036

Search using entity and trait attributes - Issue with Boolean attributes of tag and case insensitive search

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.0.0
    • 0.8.1, 1.0.0
    • atlas-core
    • None

    Description

      1. Created a tag tag1 with attributes
      strAttr of type string ,
      boolAttr of type boolean ,
      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

      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)
      
      

      Logs when searching for tag filters : strAttr : VALUE , boolAttr : false (Note : no INFO logs from IndexSerializer regrading query conversion are found in this search )

       WARN  - [pool-2-thread-9 - 4c272ca0-4853-4d24-b2d0-f10934516889:] ~ search includes non-indexed attribute 'tag1.boolAttr'; might cause poor performance (SearchProcessor:120)
      

      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

      Attachments

        Issue Links

          Activity

            People

              apoorvnaik Apoorv Naik
              sharmadhas Sharmadha S
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: