[OmniOS-discuss] Internal pkg error during a test r151010 to r151014 upgrade
Chris Siebenmann
cks at cs.toronto.edu
Tue Apr 7 18:54:03 UTC 2015
> A better way is to IPS package everything properly, and add proper
> metadata to your packages, so that those packages that should go
> into a new BE do ask for one in their manifest. That way, there
> is no distinction between any "system" package living in /usr (or
> wherever) and your package living in /opt. You can leverage the tight
> integration of IPS, BEs, and ZFS for your stuff. Updating and rolling
> back becomes very easy.
>
> Disk space is not really an issue; ZFS snapshots are relatively cheap.
I fundamentally disagree with this view of disk space. ZFS snapshots
are only cheap if you do not have data churn. To the extent that you
have churn in files, snapshots use up increasing amounts of space over
time (because an increasing amount of old data has been removed in
the current version of the filesystem and is preserved only by the
snapshot).
The reason we made /opt a separate ZFS filesystem and I'd certainly
prefer to keep it that way is that we're concerned about churn in
non-OmniOS parts of /opt (which I thought was basically 'all of them')
affecting space used by BEs.
To the very limited extent that we care about the equivalent of
BEs for 'our' portions of /opt[*], we'll manage that explicitly
ourselves instead of relying on BEs, because we consider the two to be
decoupled. Saving 'our' /opt's state or switching around has almost
nothing to do with saving and switching core OS state. Trying to manage
the two through the same mechanism would in fact be an anti-feature for
us.
And to answer the next question: with relatively small SSDs as the
root drives and relatively large amounts of physical memory (and thus
relatively large crash dumps if/when we need them), disk space really
is a limited quantity. We've already had to reduce OmniOS's rpool/dump
space well below what the system would have preferred to have.
- cks
[*: most of our usage of /opt actually comes from third parties, such
as pkgsrc.
]
More information about the OmniOS-discuss
mailing list