On Wed, May 20, 2009 at 6:37 AM, Adrian Buehlmann <[email protected]> wrote: > On 20.05.2009 11:55, Simon Heimberg wrote: >> * Is it really an advantage to cache the directory status on disc? > > Yes, definitely. Overlay icons on directories -- especially > on network shares -- are an unsustainable pain without it. > Even without overlay icons on repo roots (I enabled the overlay > icons on repo roots because the caching made it possible to have > them at all). > > I'm not talking about toy repos of the size like Mercurial. > Try having 10 clones of netbeans or larger ones in a directory > and feel the difference. Core Mercurial was designed to handle > large trees. But not the overlays of current released TortoiseHg. > > With current released TortoiseHg, you don't see any status > in that directory. Then you can descend into each of them, > waiting each time quite a couple of seconds, until you see > anything at all. > > The API that Microsoft's explorer defines to query shell > extensions was just never designed to run in the order of 5 or > more seconds to return a first answer. See what Vista does in > this case. > > Explorer constantly nails the extensions API to query it for item > overlays. In a quite inefficient way. Sure, memory caching > is fine, but this is not sufficient. > > If you want a reasonable-time true answer for what the overlay icon > of a directory is, you have to cache it. Stat-ing a tree with > 5'000 or more files every minute or so just makes no sense. > Not even on local disks (let alone on network shares).
I think I agree with most of that, but when the overlay cache finds files which are modified, it should have some method of communicating that to the directory cache. -- Steve ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects _______________________________________________ Tortoisehg-develop mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tortoisehg-develop
