On Sat, May 05, 2012 at 12:39:05PM -0400, Bob Cardillo wrote: > Thanks for all great info so far! > > >Taking that query out reduces the read() calls back to 99. Do we need > >another SQLite index? Can we improve that query? > > Your index idea was a good one. I used sqlite3 to back up my wc.db, > then ran the query you found, filling in the parameters as appropriate > and commenting out the use of IS_STRCT_DESCENDENT() since that is a > custom function that I didn't have on hand. Running it with .timer ON I > found that the query takes 4.15s to run on average. I then created an > index like this: > CREATE INDEX bobindex1 ON nodes (kind, presence, op_depth) > > and now the query consistently takes 0.27s. Really good news! But I > wonder if improving the query is a better solution, or at least should > ALSO be done. For one thing, it seems that running "svn status" on just > a file should implicitly behave as if the --non-recursive flag had been > specified, shouldn't it? > > So I think I'm going to add that index to my actual wc.db to work around > the problem myself, but I still think an issue should be created to > provide a permanent fix. (And I think the permanent fix would be three > things: the index, the implicit --non-recursive behavior for files, and > possibly the query optimization if someone can come up with an > improvement.) > > Can I get a "buddy" on this? Thanks again!
Yes, please file an issue so we don't lose track of this. I don't know for certain which way we'll go on this yet but this sounds very promising. Thanks a lot for your help.