Item10610: Foo~'*Blah' is massively slower than Foo='Blah'

pencil
Priority: Low
Current State: New
Released In: n/a
Target Release: n/a
Applies To: Extension
Component: MongoDBPlugin
Branches:
Reported By: PaulHarvey
Waiting For: SvenDowideit
Last Change By: PaulHarvey
Because it can't use indexes.

I guess the aim of this bug will be to compare how different MongoDBPlugin's performance is for wildcard/regex matching vs BruteForce. Anyway, https://wiki.trin.org.au/TaxonProfile/Builder/ProfileBuilder?Namespace=WC contains an include to https://wiki.trin.org.au/TaxonProfile/Builder/TermBuilder?Namespace=WC;section=existing which had:
  • form.name~'*TermForm' but is now re-written as
  • %QFORM{"Definitions" form="TermForm"}% defined at https://wiki.trin.org.au/TaxonProfile/WebPreferences as a parameterised variable, which produces
  • (form.name='TaxonProfile.Definitions.TermForm' OR form.name='TaxonProfile/Definitions.TermForm' OR form.name='TaxonProfile/Definitions/TermForm' OR form.name='TaxonProfile.Definitions/TermForm' OR form.name='TermForm') to accommodate all the variations of different web/topic separators that are found in our topics.

Before this change, the script times out. Afterwards, typical times are ~6s (it's got lots of nested queries). With DBQUERY it took around ~30s.

-- PaulHarvey - 08 Apr 2011

Another avenue to explore: is Namespace='WC' AND form.name~'*TermForm' faster than form.name~'*TermForm' AND Namespace='WC'... if so, can the hoister re-arrange the query automagically

-- PaulHarvey - 13 Apr 2011

Ah, of course it won't be (not for Definitions web anyway). As 99% the topics are TermForm topics.

-- PaulHarvey - 13 Apr 2011
 

ItemTemplate edit

Summary Foo~'*Blah' is massively slower than Foo='Blah'
ReportedBy PaulHarvey
Codebase trunk
SVN Range
AppliesTo Extension
Component MongoDBPlugin
Priority Low
CurrentState New
WaitingFor SvenDowideit
Checkins
TargetRelease n/a
ReleasedIn n/a
Topic revision: r2 - 13 Apr 2011, PaulHarvey - This page was cached on 14 Oct 2020 - 22:16.

The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy