[OpenIndiana-discuss] what do pkg install phases mean?

Till Wegmüller toasterson at gmail.com
Sun Mar 5 16:19:28 UTC 2023


Hi

IPS works on images of the OS. And it does so in an Atomic way. Speed is 
not the main goal. Stability is.

If you want to speed up the time it is usually good to add more RAM and 
faster disks, as IPS consumes a lot of memory resolving dependencies. 
And doing Catalog operation. The Actual update is alsmost instant.

A lot of the phases during package actions are spent in internal 
bookkeeping things which are simply slow on OpenIndiana due to how IPS 
was initially designed with releases and not rolling release. This can 
be fixed in the future but I did not have time to do anything there. A 
update would require a couple months worth of work and currently nobody 
is paying for that. It's good enough for people as it is.

The stages you see are:
- Downloading and updating cached JSON catalogs of all packages 
available (this usually takes the longest)
- instrumenting beadm
- downloading manifest files
- Downloading and copying files (uncomress) into place as described by 
the manifests. (check the contents with `pkg contents -m`
- Creating a search index for pkg search actions (this also takes a long 
time)

Boot environments are created on updates that update more than one 
package. The package can inform IPS if a new boot environment is 
required. Installation uninstall etc. do not require a new boot environment.

Hope this helps
Till

On 05.03.23 16:41, Richard L. Hamilton wrote:
> Given the output
> ----- output begins ------
> root at openindiana:~# pkg update
>              Packages to update: 375
>         Create boot environment: Yes
> Create backup boot environment:  No
> 
> DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED
> Completed                            375/375     5209/5209  181.4/181.4  878k/s
> 
> PHASE                                          ITEMS
> Removing old actions                       1015/1015
> Installing new actions                     1017/1017
> Updating modified actions                  6585/6585
> Updating package state database                 Done
> Updating package cache                       375/375
> Updating image state                            Done
> Creating fast lookup database                   Done
> Updating package cache                           2/2
> 
> A clone of openindiana-2023:03:03 exists and has been updated and activated.
> On the next boot the Boot Environment openindiana-2023:03:05 will be
> mounted on '/'.  Reboot when ready to switch to this updated BE.
> 
> Updating package cache                           2/2
> 
> ---------------------------------------------------------------------------
> NOTE: Please review release notes posted at:
> 
> https://docs.openindiana.org/release-notes/latest-changes/
> ---------------------------------------------------------------------------
> 
> ----- output ends -----
> 
> what do the various phases mean? And what drives the decision whether to create a new boot environment, or a backup boot environment (or maybe neither)?
> 
> Knowing those might be helpful if anything went badly wrong (although the simplest remedy would be to fall back to a previous boot environment!) or if one intended to create a package, and would certainly be more satisfying waiting for the slower phases to complete, being able to say to oneself what it was doing then.  Oh, and why does "Updating package cache" appear twice?
> 
> Updates on Solaris 11 and derivatives (OpenIndiana, etc) are certainly very robust (if packages and repositories are correct!) and provide generous means of recovery. But they do seem to be quite slow compared to e.g. either Red Hat based or Debian based Linux methods (yum or apt, or the underlying local-only facilities). That's not counting download time either (since repository servers are not all equal).
> 
> 
> 
> _______________________________________________
> openindiana-discuss mailing list
> openindiana-discuss at openindiana.org
> https://openindiana.org/mailman/listinfo/openindiana-discuss



More information about the openindiana-discuss mailing list