Gary M. Gere wrote: > > > Tomas ??gren wrote: >>> OK, so without much effort I can halve the disk IO from 6.5G to just >>> over 3G, and cut the zone package install time from over 6 minutes to >>> under 4. Given the crudeness of the hack, I wouldn't be surprised if >>> it could >>> be improved further. >>> >> >> My question is: Why the ... should the entire file be rewritten over >> and over again when only a small fraction of it is changed (when you >> install another package)? If the same format is needed at the end of >> the install, why not let each package install put its contents into >> separate files and when it's all done, merge them. Writing 6.5GB for a >> file that is about 1/1000th of that is just insane.. >> >> For instance Debian has a separate file for each package and that >> seems to work just fine.. (and the install time is just a fraction of >> Solaris install time) >> > The contents file is kept in sorted order - this is why the file has to > be rewritten each time (to maintain the order of the entries). > > You are correct that a good alternative would be to have a separate > contents file for each package (in this case, when a package is > installed, its contents file is stored in the same /var/sadm/pkg > directory as the package itself). >
That was discussed recently, but I don't recall that anyone came up with a satisfactory answer about how to handle the directory entries that are shared across packages while ensuring atomicity of updates with distributed contents. Dave
