On Thu, Nov 4, 2010 at 3:06 AM, Kevin Ottens <[email protected]> wrote: > On Thursday 4 November 2010 02:00:40 Dawit A wrote: >> On Wed, Nov 3, 2010 at 3:24 PM, Lukáš Tinkl <[email protected]> wrote: >> > Thanks, I'll look into it tomorrow... things can definitely get faster :) >> >> To that end I have consolidated all my local changes into a single >> patch and updated bug # 253039 with it. For me these changes even sped >> up even the command line tool, solid-hardware... > > I'm not convinced we want the part of your patch which modifies the caching > logic of checkCache. It'll speed up a "listing everything" case indeed, but > it's likely to slow down the "listing by predicate" case which is way more > common. > > We had to introduce a similar caching strategy in the HAL backend previously > exactly because of this. Now, the way we *fill* the cache in UDisksDevice is > far too slow, but it's a temporary measure done because of an issue with QDBus > I think. > > @Lukas: This issue really need to be investigated ASAP. We have to place this > GetAll call. The way it's done currently through the metaobject kills the > performances as this one uses only Get calls (I checked QDBus code) so it > generates lots of round-trips on the bus.
Right... unless you are doing a single call to dbus to obtain all the properties of a device, my patch is more efficient since it delays the retrieval of the property until you need it vs just because the cache is empty...
