AnsweredAssumed Answered

Résultat de requête Lucene imcomplet

Question asked by zederk on Nov 26, 2009
Latest reply on Dec 4, 2009 by zederk
Bonjour,

Je développe une extension qui doit exécuter des requêtes Lucene pour trouver des noeuds sur Alfresco Community 3.2.
Dans l'exemple qui suit, je recherche les documents contenus dans tous les sites qui contiennent le mot "salut".


RetryingTransactionCallback<ResultSet> searchCallback = new RetryingTransactionCallback<ResultSet>() {
   public ResultSet execute() throws Throwable {
     SearchParameters sp = new SearchParameters();
     sp.addStore(Repository.getStoreRef());
     sp.setLanguage(SearchService.LANGUAGE_LUCENE);
     sp.setQuery("PATH:\"/app:company_home/st:sites//*\" AND EXACTTYPE:\"cm:content\" AND TEXT:\"salut\"");
     return searchService.query(sp);
   }
};

try {
  ResultSet results = transactionService.getRetryingTransactionHelper().doInTransaction(searchCallback, true);
  System.out.println("Resultats : " + results.length());
} catch (Throwable e) {
  e.printStackTrace();
}

En théorie, je devrais trouver 3 résultats.
Le problème est que je n'en récupère que 2.
Ensuite, j'effectue la même requête avec le node browser, il me renvoie 3 résultats.
Si je relance à nouveau mon extension, j'obtiens bien cette fois ci 3 résultats (toujours avec la même requête).

Après avoir fait quelques tests, j'ai constaté que tant que je ne lançais pas une requête (n'importe laquelle) avec le node browser, j'obtenais toujours 2 résultats.
Par contre, dès que j'ai lancé une requête avec le node browser, mon extension me renvoie 3 résultats.

Ma question est donc la suivante, aurais-je oublié un paramètre d'initialisation permettant d'assurer que le résultat d'une requête lucene est correct.
Ou encore, qu'est-ce que le node browser fait que je ne fais pas ?

Si vous avez une idée, n'hésitez pas.
Merci d'avance.
Cordialement

Outcomes