You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael McCandless (JIRA)" <ji...@apache.org> on 2017/12/26 21:56:00 UTC
[jira] [Updated] (LUCENE-8108) Field class should not let you
analyze int values?
[ https://issues.apache.org/jira/browse/LUCENE-8108?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael McCandless updated LUCENE-8108:
---------------------------------------
Attachment: LUCENE-8108.patch
Here's a patch with a failing test case; it creates a {{Field}} with an integer value and with {{TextField.TYPE_STORED}} field type.
The test fails on the {{assertEquals}} because the token "17" was in fact created; this happens because {{Field.stringValue}} calls {{.toString}} on numeric values ... I think this is somewhat dangerously lenient but maybe it's not often hit because nobody would normally try to analyze an int?
> Field class should not let you analyze int values?
> --------------------------------------------------
>
> Key: LUCENE-8108
> URL: https://issues.apache.org/jira/browse/LUCENE-8108
> Project: Lucene - Core
> Issue Type: Bug
> Reporter: Michael McCandless
> Attachments: LUCENE-8108.patch
>
>
> I stumbled on this by accident, by creating a {{Field}} instance with a {{Integer}} value for its {{fieldsData}} and then setting {{tokenized = true}} in its {{FieldType}}.
> If you do this then Lucene silently converts the int to a string and then tokenizes it, e.g. applying synonyms, etc., if that's what your analysis chain does.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org