Project

General

Profile

Actions

Bug #7747

closed

Indexation complète

Bug #7747: Indexation complète

Added by Emmanuel GRANGE over 10 years ago. Updated almost 10 years ago.

Status:
Closed
Priority:
Normal
Category:
Moteur de recherche
Start date:
04/05/2016
Due date:
% Done:

100%

Estimated time:
Navigateur:
Firefox
Votre version de Silverpeas:
5.15.3
Système d'exploitation:
Linux
Votre base de données:
PostgreSQL
Livraison en TEST:
Livraison en PROD:

Description

Bonjour,

D'après nos tests précédents, l'indexation complète semble fonctionner mais dure extrèmement longtemps (4-5 jours) et ralenti considérablement l'utilisation du portail.

Il est compliqué dans notre environnement de production de trouver une plage aussi longue pour la réindexation complète du portail. D'autant plus que pendant ce laps de temps, les utilisateurs ne pourront plus du tout faire de recherche, puisqu'il est conseillé de supprimer le dossier d'index avant de lancer la réindexation.

Tout d'abord, est_il vraiment nécessaire de supprimer le dossier $SILVERPEAS_HOME/data/index ?
Que se passe t'il si nous lançons l'indexation d'un espace, sans supprimer le dossier index avant ? Réindexation complète, ou uniquement la différence ? Suppression des index qui n'existe plus ?

Pour alléger l'opération, nous envisageons de faire une copie du portail de Production, et de lancer l'indexation complète sur ce clone. Une fois terminée, nous copierons le dossier "index" sur le serveur de production. Puis, afin d'indexer les fichiers manquants, nous relancerons l'indexation espace par espace pendant les week-end.

Est-ce que cela vous semble réalisable ?

Merci


Files

indexEngine.txt.gz (562 Bytes) indexEngine.txt.gz Emmanuel GRANGE, 09/19/2016 09:31 AM
traces.txt.2016-03.gz (983 KB) traces.txt.2016-03.gz Emmanuel GRANGE, 09/19/2016 09:31 AM
server.log.2016-09-17.gz (234 KB) server.log.2016-09-17.gz Emmanuel GRANGE, 09/19/2016 09:34 AM
lib-core-5.15.3.jar (2.41 MB) lib-core-5.15.3.jar David Lesimple, 09/26/2016 09:34 AM
traces.index.2016-05.txt.gz (369 KB) traces.index.2016-05.txt.gz Emmanuel GRANGE, 10/03/2016 01:52 PM
server.log.2016-10-01.gz (405 KB) server.log.2016-10-01.gz Emmanuel GRANGE, 10/03/2016 01:52 PM
7747_pb_indexation (3.49 KB) 7747_pb_indexation David Lesimple, 10/04/2016 09:26 AM

Updated by Emmanuel GRANGE over 10 years ago Actions #1

  • Subject changed from Bonjour, to Indexation complète
  • Description updated (diff)

Updated by David Lesimple over 10 years ago Actions #2

  • Status changed from New to Feedback

Emmanuel GRANGE a écrit :

Bonjour,

D'après nos tests précédents, l'indexation complète semble fonctionner mais dure extrèmement longtemps (4-5 jours) et ralenti considérablement l'utilisation du portail.

Il est compliqué dans notre environnement de production de trouver une plage aussi longue pour la réindexation complète du portail. D'autant plus que pendant ce laps de temps, les utilisateurs ne pourront plus du tout faire de recherche, puisqu'il est conseillé de supprimer le dossier d'index avant de lancer la réindexation.

Tout d'abord, est_il vraiment nécessaire de supprimer le dossier $SILVERPEAS_HOME/data/index ?

Si c'est indiqué dans la release-notes il faut faire cela, dans les autres cas, cela n'est pas obligatoire.

Que se passe t'il si nous lançons l'indexation d'un espace, sans supprimer le dossier index avant ? Réindexation complète, ou uniquement la différence ? Suppression des index qui n'existe plus ?

La réindexation est complète mais dans certains cas, certains éléments restent indexés alors qu'ils ne devraient plus l'etre.

Pour alléger l'opération, nous envisageons de faire une copie du portail de Production, et de lancer l'indexation complète sur ce clone. Une fois terminée, nous copierons le dossier "index" sur le serveur de production. Puis, afin d'indexer les fichiers manquants, nous relancerons l'indexation espace par espace pendant les week-end.

Est-ce que cela vous semble réalisable ?

Oui c'est une solution possible dans le cas d'une ré-indexation complète lorsque les index sont remis à 0.
Un rsync peut également vous indiquer quels sont les espaces à ré-indexer.

Merci

Updated by David Lesimple almost 10 years ago Actions #3

  • % Done changed from 0 to 90

L'indexation complète peut être grandement écourtée si vous n'indexez plus en plein texte les différents documents.
Avez-vous effectué le test en ce sens ?

Au niveau paramétrage, il faut valoriser :

attachment.index.separately=false
attachment.index.incorporated=false

dans Attachment.properties

Updated by Emmanuel GRANGE almost 10 years ago Actions #4

  • Votre version de Silverpeas changed from 5.15.1 to 5.15.3

Nous utilisons déjà ce paramétrage.

Une indexation complète du portail a été relancé ce week-end.
Mais elle ne semble pas avoir aboutie.

Elle a été lancé Samedi 17/09 à 9:57, et il n'y a plus de trace dès 11:00 !

Updated by David Lesimple almost 10 years ago Actions #5

Emmanuel GRANGE a écrit :

Nous utilisons déjà ce paramétrage.

Vous utilisez déja ce paramétrage, mais aviez-vous déja refait une indexation complète avant celle-ci ?

Une indexation complète du portail a été relancé ce week-end.
Mais elle ne semble pas avoir aboutie.

Elle a été lancé Samedi 17/09 à 9:57, et il n'y a plus de trace dès 11:00 !

merci de joindre les logs (traces.txt)

Updated by David Lesimple almost 10 years ago Actions #7

  • Assignee set to David Lesimple

Updated by David Lesimple almost 10 years ago Actions #8

  • Tracker changed from Support to Bug
  • Votre base de données set to PostgreSQL

L'indexation se termine brutalement par une erreur :

2016-09-17 11:02:49,889 ERROR [STDERR] (Thread-221) Exception in thread "Thread-221" java.lang.IllegalArgumentException
2016-09-17 11:02:49,890 ERROR [STDERR] (Thread-221) at java.util.concurrent.Semaphore.release(Semaphore.java:583)
2016-09-17 11:02:49,890 ERROR [STDERR] (Thread-221) at org.silverpeas.search.indexEngine.model.IndexerThread.run(IndexerThread.java:144)

Updated by David Lesimple almost 10 years ago Actions #9

  • Assignee deleted (David Lesimple)

Updated by David Lesimple almost 10 years ago Actions #10

On va déja essayer de le lancer sur le serveur de test pour voir si l'erreur survient.

Updated by Emmanuel GRANGE almost 10 years ago Actions #11

tu le fais, ou c'est moi ?

Updated by David Lesimple almost 10 years ago Actions #12

Emmanuel GRANGE a écrit :

tu le fais, ou c'est moi ?

je m'en occupe.
Autre chose, as-tu supprimer le répertoire index avant de lancer l'indexation ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #13

Non, je voulais juste ajouter les index manquant !
Et je ne voulais pas arrêter le portail.

Mais ça devrait fonctionner aussi, non ?

oui. Mais tu n'as pas répondu à ma question: Vous utilisez déja ce paramétrage, mais aviez-vous déja refait une indexation complète avant celle-ci ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #14

Pardon, non, pas complète.

Pour info, le portail de test a planté avec la même erreur.

Updated by David Lesimple almost 10 years ago Actions #15

oui mais je vais la relancer pour essayer d'avoir encore plus d'infos dans le log.

Updated by David Lesimple almost 10 years ago Actions #16

J'ai supprimé les derniers éléments affichés dans le log et qui devaient etre indexées et relancer l'indexation mais le problème persiste.
Ce n'est donc pas un problème localisé de données.

Je continue à investiguer.

Updated by David Lesimple almost 10 years ago Actions #17

En jouant sur le paramétrage de l'indexeur, l'indexation a tourné 14 heures mais s'est également terminé en erreur.
Cependant, on ne devait pas etre trop éloigné de la fin: Taille index: 788 Mo - 14111 dossiers.

Je vais refaire un test. Merci de ne pas intervenir sur le serveur.

Updated by David Lesimple almost 10 years ago Actions #18

Bien. Quelque soit le paramétrage, on finit par une erreur du meme type (erreur dans un thread) dont la cause exacte est inconnue :

2016-09-20 16:44:58,413 ERROR [STDERR] (Thread-59) Exception in thread "Thread-59" java.lang.IllegalArgumentException
2016-09-20 16:44:58,413 ERROR [STDERR] (Thread-59) at java.util.concurrent.Semaphore.release(Semaphore.java:583)
2016-09-20 16:44:58,413 ERROR [STDERR] (Thread-59) at org.silverpeas.search.indexEngine.model.IndexerThread.run(IndexerThread.java:144)

Updated by David Lesimple almost 10 years ago Actions #19

Nous allons maintenant essayer de la reproduire en local avec votre base de données, puisque les pièces jointes ne sont pas indexées.

Updated by Emmanuel GRANGE almost 10 years ago Actions #20

Peut-on arrêter le portail de test ?

Updated by David Lesimple almost 10 years ago Actions #21

D'ici 15' oui.

Updated by Emmanuel GRANGE almost 10 years ago Actions #22

Trop tard, il ne répondait pas, et je l'ai donc redémarré.

Updated by David Lesimple almost 10 years ago Actions #23

  • Status changed from Feedback to Qualified

Nous avons localisé et qualifié l'erreur. Correctif à venir.

Updated by David Lesimple almost 10 years ago Actions #24

  • Assignee set to Yohann Chastagnier
  • Target version set to Version 5.15.4

Updated by David Lesimple almost 10 years ago Actions #25

  • Status changed from Qualified to In progress...

Indexation en cours sur le serveur de test avec correctif. Merci de ne pas redémarrer le serveur.

Updated by David Lesimple almost 10 years ago Actions #26

  • Assignee changed from Yohann Chastagnier to David Lesimple

toujours en cours... (tous les espaces).

Updated by David Lesimple almost 10 years ago Actions #27

Indexation sur le serveur de test terminé. Durée: 25h
Taille finale de l'index: 939 Mo

En pièce jointe le fichier contenant le correctif de ce ticket.

A placer dans $SILVERPEAS_HOME/jar/silverpeas.ear/lib

et dans
$JBOSS_HOME/server/default/deploy/silverpeas/silverpeas.ear/lib/

Updated by Emmanuel GRANGE almost 10 years ago Actions #28

  • Assignee deleted (David Lesimple)
  • Target version deleted (Version 5.15.4)

Cool, bonne nouvelle.

L'indexation a-t'elle été faite avec ou sans avoir supprimé le dossier index ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #29

  • Assignee set to David Lesimple
  • Target version set to Version 5.15.4

Désolé, ça a supprimé les champs à l’insu de mon plein gré !

Autre question, comment être sûr qu'il a bien tout indexé ?

Updated by David Lesimple almost 10 years ago Actions #30

Emmanuel GRANGE a écrit :

Cool, bonne nouvelle.

L'indexation a-t'elle été faite avec ou sans avoir supprimé le dossier index ?

J'avais supprimé au préalable le répertoire index.

Updated by David Lesimple almost 10 years ago Actions #31

  • Status changed from In progress... to Resolved
  • % Done changed from 90 to 100

Updated by Yohann Chastagnier almost 10 years ago Actions #32

  • Status changed from Resolved to Integration in progress...

Updated by Yohann Chastagnier almost 10 years ago Actions #33

  • Status changed from Integration in progress... to V6 pending

Updated by Emmanuel GRANGE almost 10 years ago Actions #34

Vu le temps que prends l'indexation complète, je l'ai lancé ce week-end, avec beaucoup d'espoir.

Mais il semble qu'elle est tournée à peu près 2h30, et puis s'est à nouveau arrêtée.
Pour information, je n'ai pas supprimé le dossier index avant de lancer l'indexation.

Updated by Yohann Chastagnier almost 10 years ago Actions #35

Bonjour,
Est-il possible de nous transmettre les logs correspondantes ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #36

Le fichier de log trace.txt complet fait plus de 1Go (34Mo compressé), j'ai donc extrait depuis le lancement de l'indexation, et aussi le server.log de samedi.

J'ai lancé l'indexation à 21:07, et la dernière trace est à 23:34

Updated by David Lesimple almost 10 years ago Actions #37

Il y a eu un problème encore non identifié lors de l'indexation de l'espace WA8614, peu-ton essayer de le re-indexer ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #38

Juste cet espace ? (pas le portail complet)
Je pense que oui. A ma connaissance, il n'est pas très gros.

Le problème, est qu'il s'agit d'un sous-espace d'un espace lui-même supprimé. Comment faire pour n'indexer que celui-ci ?

Updated by David Lesimple almost 10 years ago Actions #39

D'après mes constats, c'est l'indexation des raccourcis (alias) de publications qui a remonté une erreur.
Nous allons regarder de plus près pourquoi.

Updated by David Lesimple almost 10 years ago Actions #40

Bonjour,

Serait-il possible d'avoir une restauration des données de prod sur la VM de test pour que nous puissions ajouter plus de traces et voir ce qui bloque ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #41

Oui, c'est possible.
Nous allons voir s'il est plus rapide de faire une restauration ou une copie de la VM à la place du test existant.

Par contre, si la restauration est trop lente, nous ne lanceront la copie de la VM que ce soir, pour limiter l'impact sur la Prod.

Cela vous convient-il ?

Updated by David Lesimple almost 10 years ago Actions #42

Oui merci.

Updated by Emmanuel GRANGE almost 10 years ago Actions #43

Le portail de Test est prêt.
Finalement, nous avons fait un clone intégrale du portail de Prod : au moins 3x plus rapide, et exacte copie de la Prod (Données et BDD)

Updated by David Lesimple almost 10 years ago Actions #44

Merci, nous avons apporté des améliorations au niveau du parcours de l'arborescence Espaces/Applications/etc.. de l'indexation qui devraient fiabiliser le process.
Nous allons le valider sur le serveur de test.

Updated by David Lesimple almost 10 years ago Actions #45

Ok, l'indexation est terminée (24 heures de traitement) sur le serveur de test, avec les données fraichement restaurées de prod.

Début le 5 octobre 2016 à 14h (tous les espaces)
Fin le 6 Octobre à 13h59
Taille du répertoire index: 1,3 Go

Précision: l'indexation de l'espace WA8614 s'est bien passée.

Updated by David Lesimple almost 10 years ago Actions #46

Nous allons incorporez ces améliorations dans la 5.15.4-SNAPSHOT.
Souhaitez-vous l'appliquer sur votre environnement de Prod avant de la sortir en version définitive (si cela peut etre fait ce week-end) ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #47

Oui, ça serait bien.

Est-ce compliqué à installer ?

Updated by David Lesimple almost 10 years ago Actions #48

Il suffira de modifier le pom.xml et de mettre 5.15.4-SNAPSHOT puis de faire les opérations habituelles de mise à jour.

J'en profite pour signaler qu'avant de lancer une indexation complète, il est souhaitable de :

- Vider la corbeille des espaces et des applications, cela allégera d'autant l'indexation
- Supprimer le contenu du répertoire index (faire un backup de l'actuel, ce qui permettra de comparer leur taille).
- Activer le niveau INFO du module Bus.indexEngine

Updated by David Lesimple almost 10 years ago Actions #49

La version 5.15.4-SNAPSHOT est disponible dans Nexus.

Updated by Emmanuel GRANGE almost 10 years ago Actions #50

Est-ce que cette version contient les patchs manuels des tickets #8162 (#8157) et celui livré ci-dessus ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #51

D'ailleurs, ne contient-elle pas toutes les corrections de la 5.15.4 ?

Updated by Emmanuel GRANGE almost 10 years ago Actions #52

Je reste toujours un peu hésitant à installer une version non finale

Updated by David Lesimple almost 10 years ago Actions #53

Pas de souci, tu peux attendre la sortie officielle de la 5.15.4 !

Updated by Emmanuel GRANGE almost 10 years ago Actions #54

Elle est prévue pour quand ?

Updated by Miguel Moquillon almost 10 years ago Actions #55

La sortie officielle de la 5.15.4 a été retardée pour pouvoir intégrer la dernière correction relative à ce ticket. On en profite pour intégrer aussi quelques corrections de nouveaux bogues mineurs (comme la #8243).
Si par d'imprévue impromptue, elle est prévue la semaine prochaine.

Updated by Emmanuel GRANGE almost 10 years ago Actions #56

On devrait pouvoir patienter d'ici là. Merci

Updated by Yohann Chastagnier almost 10 years ago Actions #57

  • Status changed from V6 pending to Closed

Intégré en 6.0

Actions

Also available in: PDF Atom