JDK-6639344 : Getting installation errors when choosing not to install demos and samples on 6u4-b10
  • Type: Bug
  • Component: install
  • Sub-Component: install
  • Affected Version: 6u4
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: windows_xp
  • CPU: x86
  • Submitted: 2007-12-08
  • Updated: 2011-02-16
  • Resolved: 2008-01-03
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
6u4 b11Fixed 7Fixed
If you install JDK 6u4-b10 on WindowsXP and you choose not to install the "Demos and Samples", you will get several error messages and then you see a window saying the "Installation Failed". I also tested this using 6u3-b05 and this did not happen.  Please see images attached.
After verifying the issue, I found that ...

1. Installation will fail, whether the user de-select the "Source code" option, if the user de-select the "demo and sample" option.

2. After failing the installation, the installation dialog box would roll back the OS to the original state. No JDK entry would be in the Windows registry, but it would be in the Windows directory.

3. It happens on both XP and Vista.
the regression is introduced in build 6u4b3. does not exist in 6u4b2 (formerly 6u3b2).
see bundle naming:
User now cannot select the options.

EVALUATION This issue seems to be tickled by the fact that 2 files of the same name "README.html" changed in the JDK image for a single update release. This happened between 6u4-b02 and 6u4-b03. The patcher generates 2 patches for files named README.html, but it gets confused when there is only one README.html in the jdk-image (because the user unselected the D&S feature). It uses the wrong patch on the wrong README.html file. Here's an email I sent to jdk-core, which describes a bit more: Someone asked during the meeting why the patching error is only happening when we deselect the "Demos and Samples" (D&S) feature, and not when it's selected. I had to think about it a little more. This is 3rd party RTPatch software, but here is my theory of what's happening. We generate a patch binary for the files that changed between 2 releases. There at least 2 README.html files that needed patching from b02->b03: jdk-image/README.html jdk-image/demo/jfc/CodePointIM/README.html So the patcher will have individual patches for these 2 files. The patcher will try and patch the demo one first, because it patches in alphabetical order. There are 2 scenarios here, one where D&S feature is selected and one where the user unselects the D&S feature. UN-selected D&S scenario: Because the D&S feature is UN-selected, the machine only has 1 README.html file in the JDK image that's about to be patched: jdk-image/README.html. The patcher will see the name jdk-image/README.html, and it will incorrectly patch it with the patch for jdk-image/demo/jfc/CodePointIM/README.html, which is an incorrect mismatch. That's why the error is popping up. Selected D&S scenario: Because the D&S feature is selected, the machine has 2 files in the JDK image that are about to be patched: jdk-image/README.html & jdk-image/demo/jfc/CodePointIM/README.html. The first README.html file that it finds alphabetically in the jdk-image is the correct one: jdk-image/demo/jfc/CodePointIM/README.html. And now both files get patched successfully.