[ 
https://issues.apache.org/jira/browse/DERBY-6602?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14025360#comment-14025360
 ] 

ASF subversion and git services commented on DERBY-6602:
--------------------------------------------------------

Commit 1601440 from [~rhillegas] in branch 'code/trunk'
[ https://svn.apache.org/r1601440 ]

DERBY-6602: Make the lucene plugin handle null keys; commit 
derby-6602-01-aa-handleNullKeys.diff.

> LuceneQueryVTI handles NULL key values inconsistently
> -----------------------------------------------------
>
>                 Key: DERBY-6602
>                 URL: https://issues.apache.org/jira/browse/DERBY-6602
>             Project: Derby
>          Issue Type: Bug
>          Components: Tools
>    Affects Versions: 10.11.0.0
>            Reporter: Knut Anders Hatlen
>             Fix For: 10.11.0.0
>
>         Attachments: derby-6602-01-aa-handleNullKeys.diff
>
>
> 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:
> {noformat}
> 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
> {noformat}
> 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:
> {noformat}
> 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
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to