We're updating the issue view to help you get more done. 

A thread contention problem in DecimalFormat#subparse

Description

DecimalFormat#subparse checks ICUConfig property "com.ibm.icu.text.DecimalFormat.SkipExtendedSeparatorParsing" as below:

1 2 3 4 // equivalent grouping and decimal support boolean skipExtendedSeparatorParsing = ICUConfig.get( "com.ibm.icu.text.DecimalFormat.SkipExtendedSeparatorParsing", "false") .equals("true");

ICUConfig.get invoke System.getProperty(), which triggers a synchronized method in java.util.Properties. Under high concurrency load, the code above performs poorly. The implementation should not check the property in every parse iteration.

Environment

Status

Assignee

Yoshito Umaoka

Reporter

Yoshito Umaoka

Labels

tracCreated

May 22, 2014, 8:39 PM

tracOwner

yoshito

tracProject

ICU4J

tracReporter

yoshito

tracResolution

fixed

tracReviewer

scott_russell

tracStatus

closed

Components

Fix versions

Priority

critical