Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-15517

NOT (x <=> y) returns NULL if x or y is NULL

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.2.1, 2.0.0, 2.1.0
    • 2.2.0
    • Hive, Operators, Query Processor, SQL
    • None

    Description

      I created a table as following:

      create table test(x string, y string);
      insert into test values ('q', 'q'), ('q', 'w'), (NULL, 'q'), ('q', NULL), (NULL, NULL);

      Then I try to compare values taking NULLs into account:

      select *, x<=>y, not (x<=> y), (x <=> y) = false from test;
      OK
      q q true false false
      q w false true true
      q NULL false NULL true
      NULL q false NULL true
      NULL NULL true NULL false

      I expected that 4th column will be the same as 5th one but actually got NULL as result of "not false" and "not true" expressions.

      Hive 1.2.1000.2.5.0.0-1245
      Subversion git://c66-slave-20176e25-3/grid/0/jenkins/workspace/HDP-parallel-centos6/SOURCES/hive -r da6c690d384d1666f5a5f450be5cbc54e2fe4bd6
      Compiled by jenkins on Fri Aug 26 01:39:52 UTC 2016
      From source with checksum c30648316a632f7a753f4359e5c8f4d6

      Attachments

        1. HIVE-15517.01.patch
          4 kB
          Pengcheng Xiong

        Issue Links

          Activity

            People

              pxiong Pengcheng Xiong
              abedrintsev Alexey Bedrintsev
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: