Hoss Man created SOLR-13580:
-------------------------------

             Summary: java 13-ea NumberFormat.parse bugs in some Locales, 
affects ParseNumeric UpdateProcessors when using the 'locale' config option
                 Key: SOLR-13580
                 URL: https://issues.apache.org/jira/browse/SOLR-13580
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
            Reporter: Hoss Man
            Assignee: Hoss Man


ParsingFieldUpdateProcessorsTest has uncovered a JDK 13-ea+26 bug when dealing 
with the fr_FR Locale (which may affect other locales as well) which causes the 
grouping seperator ( U+00A0 in fr_FR ) to be ignored when parsing, treating 
them as a termination character -- example: "10 898" is parsed as "10" instead 
of "10898", leaving the " 898" portion of the string unparsed.

The way the ParseNumeric UpdateProcessors are implemented, the fact that the 
NumbertFormat instance does not recognize the entire string as a Number results 
in the String value being left "as is" in the input documents.

In ParsingFieldUpdateProcessorsTest this has manifested as jenkins failures 
like this...

{noformat}
   [junit4]   2> NOTE: reproduce with: ant test  
-Dtestcase=ParsingFieldUpdateProcessorsTest 
-Dtests.method=testParseFloatNonRootLocale -Dtests.seed=AE6C840917DD963B 
-Dtests.nightly=true -Dtests.slow=true -Dtests.badapples=true -Dtests.locale=us 
-Dtests.timezone=GMT -Dtests.asserts=true -Dtests.file.encoding=US-ASCII
   [junit4] FAILURE 0.03s | 
ParsingFieldUpdateProcessorsTest.testParseFloatNonRootLocale <<<
   [junit4]    > Throwable #1: java.lang.AssertionError
   [junit4]    >        at 
__randomizedtesting.SeedInfo.seed([AE6C840917DD963B:B5B079D8B7786A26]:0)
   [junit4]    >        at 
org.apache.solr.update.processor.ParsingFieldUpdateProcessorsTest.testParseFloatNonRootLocale(ParsingFieldUpdateProcessorsTest.java:471)
   [junit4]    >        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   [junit4]    >        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   [junit4]    >        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   [junit4]    >        at 
java.base/java.lang.reflect.Method.invoke(Method.java:567)
   [junit4]    >        at java.base/java.lang.Thread.run(Thread.java:830)
{noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to