Item12500: %QUERY's getField is highly inefficient

pencil
Priority: Urgent
Current State: Confirmed
Released In: 1.2.0
Target Release: minor
Applies To: Extension
Component: FoswikiStore
Branches: trunk
Reported By: MichaelDaum
Waiting For:
Last Change By: MichaelDaum
... when fetching a property of a non-topic revision.

Example:
%QUERY{"'%WEB%.%TOPIC%'/versions[1].info.author"}%

This checks out every single revision down to rev 1 resulting in a lot of sysCommands calling rcs. Instead it should just fetch the given revision.

Related: Item11983: prevent excessive calls into the revision system

Here's the problem in all of its beauty when viewing a topic with 139 revisions:

nytprofing-snap1.png

-- MichaelDaum - 16 May 2013

This is a known problem with the way old versions are queried. It may be possible to implement some sort of hoisting optimisation in the query engine. Anyone is welcome to try#.

-- CrawfordCurrie - 20 May 2013

 

ItemTemplate edit

Summary %QUERY's getField is highly inefficient
ReportedBy MichaelDaum
Codebase trunk
SVN Range
AppliesTo Extension
Component FoswikiStore
Priority Urgent
CurrentState Confirmed
WaitingFor
Checkins NatSkin:60a84621908c
TargetRelease minor
ReleasedIn 1.2.0
CheckinsOnBranches trunk
trunkCheckins NatSkin:60a84621908c
Release01x01Checkins
I Attachment Action Size Date Who Comment
nytprofing-snap1.pngpng nytprofing-snap1.png manage 39 K 16 May 2013 - 20:17 MichaelDaum calling sysCommand 139 times
Topic revision: r4 - 21 May 2013, MichaelDaum
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