2008/5/11 Shawn Walker <[EMAIL PROTECTED]>: > The following webrev includes proposed fixes for the following bugs: > > 1854 rework depot to use higher-level framework > 1154 pkg.depotd tracebacks when given bad options > 1237 pkg.depotd -p 80 -p 90 should return usage, but second option is > taken > 1887 depot status page output is not valid HTML > 1888 memleaks test overwrites PYTHONPATH
An updated webrev is posted here: http://cr.opensolaris.org/~swalker/pkg-depot-5/ Change Summary ==================== * Per Tom, Unused usage() function in modules/server/repository.py was removed * I removed an unused import for sys from modules/server/repository.py * Per Stephen, a package was added for cherrypy and it was made part of the "make install" process such that it will install cherrypy into the proto area. Care was taken to ensure that the SUNWpython-cherrypy package remains separate from SUNWipkg. * I added the repository module to the modules/server/__init__.py * Per Johansen, I added an assert check for cherrypy import to depot.py. * Per Johansen, I removed all usage of the cherrypy singleton (and the import) from any client modules * Per Johansen, I changed the repository __init__ to not just skip un-exposed functions and instead assert if find a matching one during setup * Per Johansen, I reworked filelist to stream the tar content as we generate it instead of writing it to a temporary file and then streaming that Additional Notes ==================== * Performance testing so far shows that: -- New depot code is about 20% faster for a distro import (Danek reported this) -- Thread performance is far better as cherrypy starts about 10 lwps at startup and then just idles them as needed. A "pkg install SUNWfirefox" into an empty user image produced no thread creations / destructions. By comparison, the old depot code created and destroyed 1,073. -- Install time, at this point, on the client-side seems to be the same as it was before. -- The new depot code has caused about a 1-2MiB increase in process size for the depot server when idle. It allocates and deallocates up to 30MiB during example install operations the first time around, but this drops off to about 500KiB after the first time the operation is performed. By comparison, the old depot code free and allocated about 1MiB every request. Cheers, -- Shawn Walker "To err is human -- and to blame it on a computer is even more so." - Robert Orben _______________________________________________ pkg-discuss mailing list pkg-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/pkg-discuss