(In reply to comment #21)
> also, iirc the direct db access in URIHasTag was originally due to poor
> performance of the tag service (not to mention level xpconnect traversals), and
> i believe GetTags() does exactly that.
Yeah, turns out it was pretty slow.. 100+ms instead of the 10-15ms from before this patch. (I timed the start to end time of FilterResultSet.)
So instead, I use a separate query to get the tags strings back to do out-of-order multi-word matching. Now it's going at 9-12ms for queries.
> >+ for (PRInt32 termIndex = terms[queryIndex]->Count(); --termIndex >= 0 &&
> >+ matchAll; ) {
> nit: weird indent, please line up with parens contents
Shifted to under PRInt32.
Created an attachment (id=305830)
v2.2
(In reply to comment #21)
> also, iirc the direct db access in URIHasTag was originally due to poor
> performance of the tag service (not to mention level xpconnect traversals), and
> i believe GetTags() does exactly that.
Yeah, turns out it was pretty slow.. 100+ms instead of the 10-15ms from before this patch. (I timed the start to end time of FilterResultSet.)
So instead, I use a separate query to get the tags strings back to do out-of-order multi-word matching. Now it's going at 9-12ms for queries.
> >+ for (PRInt32 termIndex = terms[queryInde x]->Count( ); --termIndex >= 0 &&
> >+ matchAll; ) {
> nit: weird indent, please line up with parens contents
Shifted to under PRInt32.