I'm sponsoring this for myself. This might qualify
as closed approved automatic since there isn't much
architecture here, but I gave it a week to be safe.
Thanks,
Jerry
Template Version: @(#)sac_nextcase %I% %G% SMI
This information is Copyright 2009 Sun Microsystems
1. Introduction
1.1. Project/Component Working Name:
Identifying special patches
1.2. Name of Document Author/Supplier:
Author: Gerald Jelinek
1.3 Date of This Document:
08 January, 2009
4. Technical Description
SUMMARY:
This fast-track documents a new convention used for patch IDs on Solaris.
There is no pre-existing architecture to build on that has been documented
in this area, so this case is being filed to publically record a
new convention which reserves the patch ID namespace beginning with
the number 9 for "special patches".
Patch binding is requested for the code using this new convention.
The stability of this interface is committed.
DETAILS:
There has been a long-standing practice by gatekeepers and the release
process to create a "special patch" as a bookkeeping mechanism when a
modification outside of a normal engineering delivery is made to
a product being released. These special patches are created with a
standard patch ID and appear on end-user systems as an installed patch.
However, the special patches are never actually released to customers as
a downloadable patch, they only show up as metadata on an installed system
(e.g. special patches appear to be installed on systems running Solaris 10
Update releases). Special patches are intended from the start to never be
released to customers as real patches.
This causes a problem for the Solaris Zones [1] "update on attach"
feature [2] since the special patches appear as a dead-end during
the validation. This happens because we do not allow a user to
downgrade their system, so a missing patch appears as a downgrade.
For example, if a system with a zone was running S10u5, then the S10u5
special patches would appear to be installed in that zone. If you then
tried to migrate the zone to a S10u6 system, the S10u5 special patches
would not be on the u6 system, so "update on attach" sees those as
missing patches, treats this as a downgrade and prevents the migration.
Because there is no way for a customer to get the special patches to
install onto the u6 system, and because the special patches are never
obsoleted in a subsequent release, the zone migration is at a dead-end.
The problem from the "update on attach" perspective is that special
patches look just like normal patches. Some way is needed to identify
these patches as bookkeeping, and not patches that need to be validated
during a zone migration. During discussions with all of the interested
parties (RE, gatekeeping, patch test) a variety of solutions were
considered to address this. In the end, all parties agreed to a simple
solution which makes special patches self-identifying by creating these
patches in the patch ID range 9xxxxx. This solution was agreed to have an
acceptable impact on the existing processes and teams which deal with
patches. Everyone involved recognized that this is not the cleanest
architecture, but it is also recognized that there is no architecture for
special patches. A more complex design and implementation for handling
this in all impacted areas is not considered a feasible alternative.
Up to this point the zone "update on attach" code has kept a blacklist
of special patches, but this is not maintainable going forward. The zones
code will be modified to ignore patches in this new range during the
validation phase of a zone migration.
The patch and gatekeeping teams are modifying their tools and processes
to generate special patches in the 9xxxxx range and audit for this
in the patch pipeline. A test patch in this range has been generated
and tested throughout the pipeline to ensure that all existing tools
work correctly with patches in this range.
EXPORTED INTERFACES
Patch ID range 9xxxxx Committed
reserved for special patches
IMPORTED INTERFACES
None
REFERENCES
1. PSARC 2002/174 Virtualization and Namespace Isolation in Solaris
2. PSARC 2007/621 zone update on attach
3. 'update on attach' should ignore special patches in 9xxxxx range
Bugid 6791625 http://bugs.opensolaris.org/view_bug.do?bug_id=6791625
6. Resources and Schedule
6.4. Steering Committee requested information
6.4.1. Consolidation C-team Name:
ON
6.5. ARC review type: FastTrack
6.6. ARC Exposure: open