You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucenenet.apache.org by "Shad Storhaug (JIRA)" <ji...@apache.org> on 2017/06/28 18:16:00 UTC

[jira] [Closed] (LUCENENET-531) Incorrect parsing of when resetting a prefix tree node ending in LEAF_BYTE

     [ https://issues.apache.org/jira/browse/LUCENENET-531?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shad Storhaug closed LUCENENET-531.
-----------------------------------
    Resolution: Cannot Reproduce

The patch was committed to the main repo (https://github.com/apache/lucenenet/commit/007fb4b7b4c479ec9dd81afac8fd3c43cf0b5319) but it was never released since the last version of Lucene.Net.Contrib.Spatial was released more than 6 months before this commit.

However, Lucene.Net.Contrib.Spatial is now dead. The new Lucene.Net.Spatial functionality doesn't have a Node class - it has been replaced by a Cell class. Furthermore, in that class Reset() always sets the token to null, so this fix would not make sense to do.

Unfortunately, this patch is missing the test we need to verify this problem is indeed gone in Lucene.Net 4.8.0, but all existing Spatial tests ported from Lucene 4.8.0 pass. Feel free to reopen or open a new issue/PR if you want to contribute a test or two to verify fix.

> Incorrect parsing of when resetting a prefix tree node ending in LEAF_BYTE
> --------------------------------------------------------------------------
>
>                 Key: LUCENENET-531
>                 URL: https://issues.apache.org/jira/browse/LUCENENET-531
>             Project: Lucene.Net
>          Issue Type: Bug
>          Components: Lucene.Net Contrib
>    Affects Versions: Lucene.Net 3.0.3
>         Environment: Lucene.Net.Contrib.Spatial
>            Reporter: John Diss
>            Priority: Critical
>         Attachments: lucene.net.contrib.spatial.node.patch
>
>
> When a prefix tree node is constructed, there is an explicit check to test if the last char is LEAF_BYTE and its presence is handled appropriately. If the node is reused via the node.Reset method there is no such check which leads to issues if presented with a token ending in LEAF_BYTE. This manifests as "Unexpected char: +" in method QuadPrefixTree.QuadCell.MakeShape.
> I think this happens when building a cell from e.g a rectangle shape query parameter where the cell level is < grid depth. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)