Greetings,
The following webrev contains fixes for the following issues:
12340 catalog storage performance regression
12409 postplan execution state save still fragile
12412 client can traceback on catalog refresh failure
webrev:
http://cr.opensolaris.org/~swalker/pkg-12340/
*IMPORTANT*
This does change how the catalog signatures are computed. This
shouldn't matter as no clients currently are deployed that can retrieve
and validate v1 catalogs. But if you were running the version of the
client from changeset 1431 (not yet in any released biuld) with the
server from this changeset, it would fail catalog validation.
=======
Summary
=======
This significantly increases publication performance when publishing to
a non-empty repository; especially for mass imports. It also increases
the performance of many common client operations. Finally, it makes
save_pkg_state() for plan post-execution less fragile and fixes a bug
with display_catalog_failures() in pkg(1).
Client Performance
------------------
install
-------
clear; pfexec time pkg -R / install --no-refresh --no-index SUNWcodeina
gate:
real 18.0
user 16.2
sys 0.2
webrev:
real 8.3
user 6.5
sys 0.2
uninstall
---------
clear; pfexec time pkg -R / uninstall --no-index SUNWcodeina
gate:
real 9.1
user 7.7
sys 0.1
webrev:
real 5.7
user 3.7
sys 0.1
refresh
-------
clear; pfexec time pkg -R / refresh --full
gate:
real 58.5
user 49.3
sys 0.2
webrev:
real 42.3
user 39.4
sys 0.2
Publication Performance
-----------------------
The example publication improvements below are the times needed to
close() the transaction for an import of the 'SUNWipkg' package to the
example repository:
--------------------------------
387K unique package version repo
--------------------------------
http://indiana-build.central:10000
(gate) 30 minutes -> (webrev) 1 minute, 6 seconds for trans.close()
-------------------------------
53K unique package version repo
-------------------------------
(gate) 38 seconds -> (webrev) 8 seconds for trans.close()
Cheers,
--
Shawn Walker
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss