Microsoft KB Archive/243040

= BUG: Damaged Status Display in Occache UI on Distribution Unit Download =

Article ID: 243040

Article Last Modified on 6/14/2006

-

APPLIES TO


 * Microsoft Java Virtual Machine

-



This article was previously published under Q243040



SYMPTOMS
While installing Java packages through Distribution Units, upgrading to a new package on top of an old one results in a Damaged status display for the Distribution Unit (DU) in occache or the Downloaded Program Files folder under the Windows directory. For instance, if version V1 of a package P is already installed, installing version V2 of the package P causes a Damaged status to be displayed for the Distribution Units.



CAUSE
Taking the above mentioned example, when version V1 of package P is downloaded, the virtual machine creates a .zip file, (such as One.zip) to contain the package P and thereby associates P with the One.zip file. The system registry under HKEY_LOCAL_MACHINE\Software\Microsoft\Code Store Database is then updated to reflect this. The occache UI then displays the download status as Installed.

When version V2 of package P is installed, the registry is updated in a similar fashion to reflect version V2 of the package P. The new files are now stored in a new .zip file (such as Two.zip) and the original One.zip file is deleted. In this case, the occache UI displays the download status as Damaged.

The problem is the virtual machine in this occache process is looking at a cached version of the package P, namely V1, and it still thinks that the underlying .zip file associated with package P is One.zip. So when occache asks for the name of the zip file associated with package P, the virtual machine returns One.zip. Since One.zip has been deleted, occache doesn't find One.zip and hence reports the status as Damaged.



RESOLUTION
Rebooting the computer or logging off and then back on changes the status of the upgraded DU to Installed.



STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.



MORE INFORMATION
The Damaged status displayed by occache UI can happen if:
 * The package cannot be found. The package name key under HKEY_LOCAL_MACHINE\Software\Microsoft\Code Store Database\Java Packages (or Application Namespace if using namespaces) does not exist.
 * The .zip file pointed to by the Path value under that key doesn't exist.

NOTE: The Damaged status display in the occache UI could actually be true, meaning that the DU install could indeed be damaged for some reason. As is seen in the above description, manual deletion of a .zip file also causes a Damaged status.

