There are a number of reasons why a patch may become obsolete; for instance, a newer version of it may have been released, or a different patch that replaces the obsolete one may have been installed.
When this happens, the original patch files will remain on the system, but the undo file will be renamed “obsolete.” A file named obsoleted_by will also be created that contains the ID of the new patch.
Let's take a look at how this works. The following steps show how the files are manipulated by installing the newer patch. For this example, we already have 105463-06 on the system and have just installed 105463-07:
hydrogen# patchadd -p | grep 105463 Patch: 105463-06 Obsoletes: Requires: Incompatibles: Packages: SUNWvxvm Patch: 105463-07 Obsoletes: Requires: Incompatibles: Packages: SUNWvxvm hydrogen#
Patchadd has determined that we have both versions of the patch installed. To clarify this, let's look at the patch directory:
hydrogen# ls -ld /var/sadm/patch/105463* drwxr-xr-x 2 root other 512 Dec 18 00:23 105463-06 drwxr-xr-x 2 root other 512 Dec 18 00:23 105463-07 hydrogen#
The previous patch is indeed still installed on the system; the reason for this is that we have installed 105463-07 without first backing out 105463-06.
Let's have a look in the package area to see the hierarchy that's been created within the save area:
hydrogen# cd /var/sadm/pkg/SUNWvmman/save hydrogen# ls -l total 8 drwxr-xr-x 2 root other 512 Dec 18 00:23 105463-06 drwxr-xr-x 2 root other 512 Dec 18 00:23 105463-07 hydrogen# hydrogen# ls -l 105463-06 total 7746 -rw-r--r-- 1 root other 3951033 Mar 31 1999 obsolete.Z -rw-r--r-- 1 root other 10 Dec 18 00:23 obsoleted_by hydrogen# hydrogen# ls -l 105463-07 total 8496 -rw-r--r-- 1 root other 4336103 Dec 18 00:23 undo.Z hydrogen#
Here we can see that patchadd has created the undo file as expected. It's also moved the original undo file to an obsolete file and created the obsoleted_by file to inform the system utilities of the change.
If we now check the obsoleted_by file in 105463-06, it should confirm the newer revision of the patch:
hydrogen# cat 105463-06/obsoleted_by 105463-07 hydrogen#