-
Enhancement
-
Resolution: Unresolved
-
P4
-
5.0
-
x86
-
linux
FULL PRODUCT VERSION :
java version "1.5.0_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_08-b03)
Java HotSpot(TM) Client VM (build 1.5.0_08-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Linux mcristi 2.6.17-gentoo-r4 #6 SMP Fri Aug 18 15:42:53 EEST 2006 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz GNU/Linux
EXTRA RELEVANT SYSTEM CONFIGURATION :
The system wide LANG environment variable:
LANG = "ro_RO.ISO-8859-16"
A DESCRIPTION OF THE PROBLEM :
On my linux system I have the environment variable LANG="ro_RO.ISO-8859-16"
Then when I use javac to compile any class is very slow (at least two times slower then normal).
When I change the lang setting and I use LANG="ro_RO.ISO-8859-1", the javac performance is back to normal (faster).
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
The steps assume you have a recent gentoo linux and a bash shell and a recent jdk 1.5.0. The bug should manifest on other linux systems but the commands that you must use on the terminal might be differrent.
First compile a java class to see how long it takes under normal conditions (run it at least 3 times):
root@localhost ~ $ javac -verbose Test.java
Second define the locale using the root account:
root@localhost ~ $ localedef -i ro_RO -f ISO-8859-16 ro_RO.ISO-8859-16
Then set the LANG environment variable:
root@localhost ~ $ export LANG="ro_RO.ISO-8859-16"
Compile the same java class to see how long it takes now (run it at least 3 times):
root@localhost ~ $ javac -verbose Test.java
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The compiler should issue a warning saying that it will not use ISO-8859-16 enconding but will use ISO-8859-1 instead.
The parsing time and total compile time will be displayed among other informations on the console assuming you used -verbose parameter.
ACTUAL -
Total time displayed at the end is at least two or three times larger than normal.
Running the compiler at least 3 times would improve the timings but still is much slower.
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
the class that I used to test the compiler:
the file is named Test.java
public class Test {
public static void main(String[] args) {
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
I can bypass this bug by setting the LANG variable to be:
LANG="ro_RO.ISO-8859-1"
java version "1.5.0_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_08-b03)
Java HotSpot(TM) Client VM (build 1.5.0_08-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Linux mcristi 2.6.17-gentoo-r4 #6 SMP Fri Aug 18 15:42:53 EEST 2006 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz GNU/Linux
EXTRA RELEVANT SYSTEM CONFIGURATION :
The system wide LANG environment variable:
LANG = "ro_RO.ISO-8859-16"
A DESCRIPTION OF THE PROBLEM :
On my linux system I have the environment variable LANG="ro_RO.ISO-8859-16"
Then when I use javac to compile any class is very slow (at least two times slower then normal).
When I change the lang setting and I use LANG="ro_RO.ISO-8859-1", the javac performance is back to normal (faster).
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
The steps assume you have a recent gentoo linux and a bash shell and a recent jdk 1.5.0. The bug should manifest on other linux systems but the commands that you must use on the terminal might be differrent.
First compile a java class to see how long it takes under normal conditions (run it at least 3 times):
root@localhost ~ $ javac -verbose Test.java
Second define the locale using the root account:
root@localhost ~ $ localedef -i ro_RO -f ISO-8859-16 ro_RO.ISO-8859-16
Then set the LANG environment variable:
root@localhost ~ $ export LANG="ro_RO.ISO-8859-16"
Compile the same java class to see how long it takes now (run it at least 3 times):
root@localhost ~ $ javac -verbose Test.java
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The compiler should issue a warning saying that it will not use ISO-8859-16 enconding but will use ISO-8859-1 instead.
The parsing time and total compile time will be displayed among other informations on the console assuming you used -verbose parameter.
ACTUAL -
Total time displayed at the end is at least two or three times larger than normal.
Running the compiler at least 3 times would improve the timings but still is much slower.
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
the class that I used to test the compiler:
the file is named Test.java
public class Test {
public static void main(String[] args) {
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
I can bypass this bug by setting the LANG variable to be:
LANG="ro_RO.ISO-8859-1"
- relates to
-
JDK-8186751 Add ISO-8859-16 Charset support
-
- Resolved
-