hi alex,
the ordering of childnodes is optional to implement by a repository.
even if the nodetype defines a 'hasOrderableChildNodes', the
repository must not support this.

but, if it supports it, the result sets of the query must be in the
correct order. since the result set retrieved by lucene is in
arbitrary order internally, it is sorted before returned to the
client. this has an impact on performance. so, if the correct ordering
is not needed by your application, you can disable it.

the reason it is enabled by default is, that it is demanded by the
spec and jackrabbit is jsr170 reference implementation.

regards, toby

On 3/31/06, Alexandru Popescu <[EMAIL PROTECTED]> wrote:
> Ohhhh... and I forgot the question about the document order disabling
> in searchs: I have read quite a few posts on the ML about bad
> performance queries. For most of them, the answer was disable document
> order. If this is a known problem, why isn't it by default disabled? I
> guess the other answers may clarify this one too, but I thought I
> should mention it for further reference. Thanks again.
>
> Eagerly waiting for some light :-).
>
> ./alex
> --
> .w( the_mindstorm )p.
>
>
> On 3/31/06, Alexandru Popescu <[EMAIL PROTECTED]> wrote:
> > Hi!
> >
> > I have been trying to understand what exactly is the document order and why 
> > it is set by default to
> > true in the queries, even if it is known its bad impact on performance.
> >
> > I have been rechecking the spec, but I couldn't find any definition of this 
> > term. A definition can
> > probably be deduced from the 6.4.2 Document View XML Mapping chapter, but 
> > this would lead to a
> > vicious circle imo.
> >
> > So, what is the document order? Please give me any details that might 
> > enlighten me about this term.
> >
> > Related to this document order there is another paragraph in the spec that 
> > is not absolutely clear
> > to me. I am refering to 6.6.4.2 Document Order:
> >
> > [quote]
> > If document order searching is supported, then the context
> > functions related to document order, last() and position(), must
> > also be supported.
> > [/quote]
> >
> > This paragraph should be read like: last(), position() can be used _only_ 
> > in queries that use the
> > document order?
> >
> > If this is the case, than optimization queries like position() > x (for 
> > paging) will not work when a
> > specific order is used (and I know there is already a JIRA issue about 
> > position() being able to
> > handle only equality :-) ). Than you will need to rely on the 
> > NodeIterator.skip() that is not
> > required to be lazy.
> >
> > Can you please give me some details, comments, opinions, anything that 
> > might remove the shaddow on
> > this points? Many, many thanks in advance,
> >
> > ./alex
> > --
> > .w( the_mindstorm )p.
> >
>


--
-----------------------------------------< [EMAIL PROTECTED] >---
Tobias Bocanegra, Day Management AG, Barfuesserplatz 6, CH - 4001 Basel
T +41 61 226 98 98, F +41 61 226 98 97
-----------------------------------------------< http://www.day.com >---

Reply via email to