You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Knut Anders Hatlen (JIRA)" <ji...@apache.org> on 2014/06/05 14:08:01 UTC
[jira] [Created] (DERBY-6602) LuceneQueryVTI handles NULL key
values inconsistently
Knut Anders Hatlen created DERBY-6602:
-----------------------------------------
Summary: 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
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)