Update Release Notes

  Update Release Notes Index JDK Documentation

Update Release Notes Index

Update Release Notes Index
About 1.6.0_18 (6u18) for the Itanium® architecture

1.6.0_18 for the Itanium® architecture is a port of JDK 6 update 18 to the Itanium® (64 bit) architecture.

The full internal version number for this update release is 1.6.0_18-b0701 (where "b" means "build"). The external version number is 6u18. Included in JDK 6u18 for the Itanium® architecture is version 16.0 of the Java HotSpot Server Virtual Machine.

The following JDK, JRE tools are not included in JDK, JRE 6u18 for the Itanium® architecture release:

  • Java Plug-in
  • Java Web Start
  • Java Update
  • JavaDB (JavaDB is included only into Linux self-extracting JDK distributive)
  • Java VisualVM


Please refer to JDK tools and Utilities for JDK tools description.

Only offline installation is available for JDK, JRE 6u18 for the Itanium® architecture.

Changes in 1.6.0_18 (6u18) for the Itanium® architecture

 

  • See changes in 1.6.0_18 common for all platforms in Java SE 6 Update 18 Release Notes.

     

  • Supported System Configurations

    For 6u18, support has been added for SLES 11.
    SLES 9 is not supported.

  • Features

    With this release, G1 garbage collector and compressed pointers are now available for the Itanium® architecture.

    G1 is still experimental and is not recommended for production use yet.

    Using -XX:+UseCompressedOops can improve performance when used heap size is less than 32G (30G or less is preferable, as it can enable more efficient compressed pointers encoding/decoding mode).

  • Performance

    The following set of command line options are recommended for running high performance server applications:

    -XX:+AggressiveOpts
    -XX:+AggressiveHeap
    -XX:ParallelGCThreads=2
    -XX:InterpreterProfilePercentage=10
    -XX:CompileThreshold=35000
    -XX:OnStackReplacePercentage=80
    -XX:PermSize=256m
    -XX:MaxPermSize=256m
    -XX:AllocatePrefetchStepSize=128
    -XX:AllocatePrefetchStyle=2
    -XX:AllocatePrefetchDistance=1024
    -XX:+UseCompressedOops if heap size is less than 32GB
    -Xmx, -Xms, -Xmn should have sufficiently large values. (For example, -Xms6600m -Xmn5000m -Xmx6600m or -Xms20000m -Xmn18000m -Xmx20000m.)



Supported System Configurations

 

 

Platform Version Desktop Managers Browsers JRE JDK
Windows 64 bit
Windows IA64 Windows Server 2003 SP2 Windows/Active for Windows
N/A
64-bit Install 64-bit Install
Windows Server 2008 for Itanium-based Systems SP1
Linux 64 bit
Linux IA64 SUSE Enterprise Linux Server 10 SP2,
SUSE Linux Enterprise Server 11
N/A
N/A
64-bit Install 64-bit Install
Red Hat Enterprise Linux 4.0 U7,
Red Hat Enterprise Linux 5.0 U2


JDK, JRE Installation for Microsoft Windows (Itanium® architecture)

The installation procedure installs the JDK or JRE 6u18 but not the Java Plugin or Java Web Start.

To install, download jdk-6u18-windows-ia64.exe or jre-6u18-windows-ia64.exe file and then follow the 32-bit Windows JDK installation or 32-bit Windows JRE installation "Windows Offline Installation" instructions.

Note, during JRE installation Java executables including java.exe are not copied to the Windows System directory.

JDK, JRE Installation for Linux (Itanium® architecture)

The installation procedure installs the JRE or JDK 6u18 but not the Java Plugin or Java Web Start.

The JDK, JRE for Linux 64-bit comes bundled in two install formats:

  • Linux self-extracting files jdk-6u18-linux-ia64.bin, jre-6u18-linux-ia64.bin and
  • Linux RPM in self-extracting files jdk-6u18-linux-ia64-rpm.bin, jre-6u18-linux-ia64-rpm.bin.


To install, download the necessary file and then follow one of the 32-bit Linux JDK RPM Installation, 32-bit Linux JDK Self-Extracting Binary Installation or 32-bit Linux JRE RPM Installation, 32-bit Linux JRE Self-Extracting Binary Installation instructions.

Known installation issues

 

  • On Linux systems, when the *-rpm.bin file is used for JDK (JRE) installation, JDK (JRE) of a lower version cannot be installed if JDK (JRE) of a higher version is already installed on the same system.

    For example, JDK (JRE) 6u16 cannot be installed using the jdk(jre)-6u16-linux-ia64-rpm.bin file if, on the same machine, JDK (JRE) 6u18 was previously installed using jdk(jre)-6u18-linux-ia64-rpm.bin.

    Installation reports:

    Preparing... ########################################### [100%]
    package jdk-1.6.0_18-fcs (which is newer than jdk-1.6.0_16-fcs) is already installed
    JDK (JRE) 6u16 is not installed.

    Workarounds are:

    • Uninstall JDK (JRE) 6u18, then install JDK (JRE) 6u16 using jdk(jre)-6u16-linux-ia64-rpm.bin, or
    • Install JDK (JRE) 6u16 using the jdk(jre)-6u16-linux-ia64.bin file


    If JDK (JRE) 6u18 was installed using jdk(jre)-6u18-linux-ia64.bin, installation of JRE (JDK) 6u16 using jre(jdk)-6u16-linux-ia64.bin passes successfully.

    See also 6673415.

  • On Windows systems after installation of JDK (or JRE) the registry keys "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.6" (for JDK), "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.6" (for JRE) should contain the value "JavaHome" with the full path name of the directory in which JDK (or JRE) of the highest version is installed.

    After installation of JDK (or JRE) of a lower version on top of a higher version (for example, 6u16 on top of 6u18), "JavaHome" contains the path to the last installed JDK (or JRE) instead of the path to the JDK (or JRE) of the highest installed version. After uninstallation the value is removed.

    The workaround is to put the correct value to the Windows registry manually. A more accurate workaround is to uninstall the previously installed JDK (or JRE) and install the required version. See Deploying the JRE on Windows for more details about registry values.

  • On Windows consecutive JDK/JRE installations/uninstallations can lead (very rarely) to:

    Error 1334.The file 'javaw.exe' cannot be installed because the file cannot be found in cabinet file 'Data1.cab'. This could indicate a network error, an error reading from the CD-ROM, or a problem with this package

    or

    Internal Error 2356. Data1.cab


    The second case can block installation/uninstallation, as the installer reports that there is a suspended installation process. A reboot of the system helps resolve this issue. After the reboot, uninstall the previously installed JDK/JRE. Confirm the message, if it appears:

    Error 1704.An installation for Java(TM) SE Runtime Environment 6 Update 18 is currently suspended. You must undo the changes made by that installation to continue. Do you want to undo those changes?

  • The JDK and JRE for Windows can be installed on a shared network location in spite of the 6869685.

    However, installation of public JRE included in JDK bundle can fail with Error 1606 'Could not access network location \\...' if a path to the JRE installation directory is specified as \\share\<JreInstallDir> (using UNC syntax).

    A workaround is to map the network location, for example, to X:\, and to specify installation directory path using the mapped drive as X:\<JreInstallDir>.

    After JRE uninstallation from a network drive an empty directory (like lib\zi\Africa) might remain in the JRE installation directory. In this case, the JRE installation directory can be safely removed manually after the JRE uninstall.



Known issues and limitations

 

  • The JVM can intermittently crash with SIGILL on Linux RHEL4 for the Itanium® architecture when executed from an NFS mounted directory.

    This is a known bug in kernels of versions less than 2.6.22. Processors older than Montecito (e.g. Madison, McKinley) are not affected. Details can be found here: http://www.gelato.unsw.edu.au/archives/linux-ia64/0707/20656.html.

    RHEL4 (Nahant Update 5), kernel 2.6.9-55.EL has this bug. In RHEL5.2(Tikanga), kernel 2.6.18-92.el5 the bug is fixed.

    Possible workarounds are:

    • Run Java from a local directory.
    • Migrate to a newer kernel in which this bug is fixed, for example, to RHEL5.2 or RHEL4.6.
    • Apply the patch linux-2.6-mm-ia64-flush-i-cache-before-set_pte.patch (from kernel-2.6.18-92.el5.src.rpm) to your kernel.



 



 

  • Serviceablity Agent (SA) issues:

     

    • SA can fail to show thread stack frames; instead it throws InternalError with diagnostic message ‘Failed to decode stack’.
      Workaround: for running processes use JVMTI Agent.

    • SA can fail to show some local variables of stack frames; instead it throws an unexpected exception (typically, NullPointerException or AssertionFailure).
      Workaround: try to start JVM with the –XX:+FullSASupport option.

    • Sometimes SA can show incorrect values for Long and Double locals.
      Workaround: for running processes use JVMTI Agent.

    • On Windows SA does not accept a dump file generated by default (the MiniDumpNormal type of information that is written to the minidump file).
      Workaround: specify the –XX:ErrorDumpLevel=2 JVM option (MiniDumpWithFullMemory type).

    • jstack (an experimental tool) does not print the mixed mode (both Java and native C/C++ frames) stack trace when the option -m is specified; an exception with diagnostic "not yet implemented (debugger does not support CDebugger)!" is thrown. The reason is that CDebugger is not implemented for the Itanium® architecture.
      Workaround: do not use the -m option or use a different tool.




 



 

  • Java 6 does not support Sun PKCS#11 and SunMSCAPI providers for Windows 64-bit (see native security features availability in various operating systems in Leveraging Security in the Native Platform Using Java SE 6 Technology article). These providers are not a part of Java 6 for Windows Itanium® architecture. If necessary, one can use implementations of these providers offered by third parties.