cancel
Showing results for 
Search instead for 
Did you mean: 

Very slow selectnodes

nicolasb
Champ in-the-making
Champ in-the-making
Hello,

I am running Alfresco 1.4 with MySql.

When executing a selectnodes query on a light repository (<900 documents), I have to wait 2 minutes before getting results.

The tremendous query I use from the node browser is:
 /app:company_home//*

The same job with Alfresco 1.3 would have taken 10 seconds.

Is there something new with the V1.4 conf ?

Regards
5 REPLIES 5

derek
Star Contributor
Star Contributor
Hi,

I've just repeated the query with large repo (about 80K files) and it returned the first 1000 results in about 8 seconds on my dev laptop from a cold start.  The same search took 3 seconds the second time around.

It is possible that, for small repositories such as yours, the 1.3 would have been very slightly faster on a warm start for that type of blanket search.  Your experience points to something else.

I assume the obvious things have been checked.  But are you running Tomcat or JBoss?

Regards

nicolasb
Champ in-the-making
Champ in-the-making
Hi,

I'm using Tomcat 5.5.20 and MYSQL 4.1.16. My Alfresco is without customisation.

request with xpath :  /app:company_home//* took 3 seconds
request with lucene :  PATH:"/app:company_home//*" took 3 seconds
request with selectnodes : /app:company_home//* took 120+ seconds

I can reproduce the same problem on 2 other computers, with same config. Where am I wrong ?

Regards.

derek
Star Contributor
Star Contributor
Hi,

I didn't try the selectnodes.  I'll have a look.

Regards

derek
Star Contributor
Star Contributor
Hi,

There have been changes between 1.3 and 1.4 that would have caused this.  I've made some initial improvements, but there are still some issues outstanding with the selectnodes or NodeService-based XPath walking.

http://issues.alfresco.com/browse/AR-1114

We moved to a pure query-based implementation of the child associations in order to avoid the crippling Hibernate cache load times when a node contained a large number of children.  Hibernate is still doing a lot of work, just reading the scalar query values - no doubt something we can sort out with a bit of investigation.  In the meantime, use the Lucene-based XPath if you need to pull back the entire repo in one query.

Regards

nicolasb
Champ in-the-making
Champ in-the-making
Hi,

Thanks for this update.

I will use Lucene-based query.


Regards.