Hi
First pdo analyses the global and all non global zones to determine if 
the patch or patches can be applied.
 From that a list of applicable patches is generated.
If only one patch was specified for install, then pdo
calls /usr/lib/patch/patchadd in the global to do the patching in the global
and then calls
/usr/lib/patch/patchadd in each local zone in a serial manner to do the 
patching in the local zones. So we patch global, followed by each zone 
in sequence.

If we specified a list or directory of patches then once the analysis 
phase has completed and we have  a list of applicable patches we:
1 call /usr/lib/patch/patchadd in the global to add all the patches in 
the global first
2 then call /usr/lib/patch/patchadd in each local zone to add the list 
of patches to each zone.

So in the last case if we are adding 5 patches and we have two zones 
zone-1 and zone-2
first
1 add all 5 patches to the global
2 then add all five patches to zone-1
3 then add all five patches to zone-2


Enda
"??????? ??????.???.?? =?UTF-8?Q?=E0=B3=8D(Narendra_Kumar.S.S, 
ssnkumar at gmail.com" wrote:
> Hello Vasilly,
> 
>     From the above explanation, what I understood is, "Patches will be 
> installed in local zones first and then in global zones".
>     I this understanding correct?
> 
> Regards,
> Narendra
> 
> 
> 
> On 10/19/06, *Vasiliy* <vassun at gmail.com <mailto:vassun at gmail.com>> 
> wrote:
> 
>     I was asked to provide some information on pdo.c - new patch
>     dependency algorithm introduced in Solaris 10 FCS. It is complicated
>     code, just because it is complicated staff it is dealing with and so
>     I decide that best place to do some introduction will be here -
>     available for everybody in one place.
> 
>     I will keep it in usual format step by step, post by post describing
>     the matter - some kind of "Arabian Nights" of packaging-patching...
> 
>     [b]Why new code was introduced?[/b]
> 
>     1. Two phase transaction patching.
> 
>     Some patches affects are shared between zones. This patches need to
>     be checked for all zones first and only when everything OK with all
>     zones we may apply this patches to shared are. This is classic two
>     phase distributed transaction, when we check success on all nodes
>     and then commit or rollback changes everywhere. Patchadd.ksh script
>     was not suited for this, our estimates was that it will be much easy
>     to reimplement it on C (and we had it partially reimplemented
>     already for different project) then try to use what we had.
> 
>     2. Performance, performance, performance.
> 
>     Any install operation time with zones will be performed as many
>     times as many zones present. It there is 10 zones it will be 10
>     times slower. We tried to run pkgadd in parallel and in result it
>     was much slower then even sequential execution just because all
>     installation operation is about disk access and parallelization will
>     not help. So zones existence expose any install performance problem
>     as magnifying glass as many times as many zones involved. There are
>     no simple tricks to speed it up and only way to resolve it - improve
>     performance of installation itself.
> 
>     Ksh-script (patchadd before S10) obviously not a right solution for
>     performance problems. Any operation like check required patch will
>     involve awk, grep, sed etc... - which are unix process each. Also by
>     nature dependency check algorithm is classical "recursive walk over
>     tree" and kshell script language does not support it very well from
>     data structure point of view as well as from algorithm coding.
> 
>     C - language implementation looks just right for this kind of
>     problem and allows to make performance as good as possible. It has
>     hashtable for PatchIds and prelinked in both directions relations
>     etc. It is pretty simple to outperform kshell script 100 times and
>     more.
> 
>     Also it allows to introduce real multipatching which is also matter
>     of performance as well as convenience for customer. Manual ordering
>     for patches painful already but with zones it may be just impossible.
> 
>     [b][i]"...At this point Shahrazad saw the approach of morning and
>     discreetly fell silent..."[/i][/b]
>     The book of thousand and one night. by Powys Mathers
> 
>     Next I will talk about patch dependencies...
> 
>     vassun
> 
> 
>     This message posted from opensolaris.org <http://opensolaris.org>
>     _______________________________________________
>     install-discuss mailing list
>     install-discuss at opensolaris.org <mailto:install-discuss at 
> opensolaris.org>
>     http://opensolaris.org/mailman/listinfo/install-discuss
> 
> 
> 
> 
> -- 
> Warm Regards,
> ??????? ??????.???.???
> (S.S.Narendra Kumar)
> 
> Visit my blogs at:
> http://ssnarendrakumar.blogspot.com/
> http://blogs.sun.com/roller/page/ssnkumar
>    ___    ___    __    _
>   /  __/  /  __/  /     | / /
> _\   \   _ \   \   /   /| |/ /
> \___/ \___/   /_/ |__/
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> install-discuss mailing list
> install-discuss at opensolaris.org
> http://opensolaris.org/mailman/listinfo/install-discuss


  • ... Vasiliy
    • ... ನರೇಂದ ್ರ ಕು ಮಾರ್. ಎಸ್.ಎಸ ್(Narendra Kumar.S.S)
      • ... Enda O'Connor ( Sun Micro Systems Ireland)
        • ... ನರೇಂದ ್ರ ಕು ಮಾರ್. ಎಸ್.ಎಸ ್(Narendra Kumar.S.S)
      • ... Vasiliy
    • ... Vasiliy
    • ... Vasiliy
    • ... Vasiliy
    • ... Vasiliy

Reply via email to