I have spun another webrev, http://cr.opensolaris.org/~padraig/ips-8453-v7/.
This webrev also reduces the number of times __enable_disable_update_all
and consequently load_catalogs is called.
We now only call __enable_disable_update_all on startup or when
__on_reload is called.
We no longer call it when switching repository and changing search option.
I have also removed some redundant code near line 650.
Padraig
On 04/28/09 21:27, Shawn Walker wrote:
John Rice wrote:
Shawn Walker wrote:
jmr wrote:
Perhaps the best place to fix this is in image.py where any public
methods such as load_catalogs that might not be thread safe should
be protected with an acquire and release lock as is done in all the
api.py public methods. I'm happy for us to fix it in PM for now,
but could you log an enhancement request for image.py.
Methods in image.py are not intended for use by the client which is
the real issue that needs to be addressed.
Ah OK I thought as they did not have the __ in image.py it was ok to
use them, but if not then fine. I agree that having them in the
api.py is the way to go with the appropriate locking code in place to
protect clients. For this rev we will protect the calls in PM and for
next rev move over to using an appropriate API in api.py.
They don't have '__' at the moment only because that would break a lot
of clients. pkg.client.api contains the only interface any consumers
should be using to interface with an image object.
I agree what you have in place is the right solution for now until the
appropriate methods exist in api.py, or until the inventory methods
take care of this for you.
Cheers,
_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss