Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-6602

LuceneQueryVTI handles NULL key values inconsistently

    XMLWordPrintableJSON

Details

    Description

      If there's an integer key column with a NULL value, the Lucene query will return a fake key value (0) rather than NULL. The document id and score will be correct. Example:

      ij> create table t1(x int, c clob);
      0 rows inserted/updated/deleted
      ij> insert into t1 values (null, 'abc'), (null, 'def');
      2 rows inserted/updated/deleted
      ij> call lucenesupport.createindex('app', 't1', 'c', null, 'x');
      0 rows inserted/updated/deleted
      ij> select * from table(t1__c('abc or def', null, 3, null)) tc;
      X          |DOCUMENTID |SCORE          
      ---------------------------------------
      0          |0          |0.35355338     
      0          |1          |0.35355338     
      
      2 rows selected
      

      If the key column is a string type, the returned key is correct (NULL). The document id is sometimes correct and sometimes NULL, and the score seems to be NULL always. Example:

      ij> create table t2(x varchar(10), c clob);
      0 rows inserted/updated/deleted
      ij> insert into t2 values (null, 'abc'), (null, 'def');
      2 rows inserted/updated/deleted
      ij> call lucenesupport.createindex('app', 't2', 'c', null, 'x');
      0 rows inserted/updated/deleted
      ij> select * from table(t2__c('abc or def', null, 3, null)) tc;
      X         |DOCUMENTID |SCORE          
      --------------------------------------
      NULL      |NULL       |NULL           
      NULL      |1          |NULL           
      
      2 rows selected
      

      Attachments

        1. derby-6602-01-aa-handleNullKeys.diff
          7 kB
          Richard N. Hillegas

        Issue Links

          Activity

            People

              rhillegas Richard N. Hillegas
              knutanders Knut Anders Hatlen
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: