Bonjour,
Je vous soumets un
problème que j'ai depuis quelques temps et que je n'arrive pas à
résoudre.
Pour
vous situer le contexte, mon application SDX publie des documents en 2 étapes
:
- un première étape de préparation à
la publication, lors de laquelle les documents sont indexés dans une première
base de données "privée" (inaccessible aux
visiteurs)
- une seconde étape de
"publication", qui permet de rendre mes documents accessibles à tout le
monde, en ré-indexant les documents dans une seconde base
"publique".
C'est-à-dire que la première base fonctionne avec un
entrepôt de type FileSystem et la seconde avec un entrepôt de type URL. Les
articles de cette dernière étant indexé via
l'API-URL.
Mon problème est le
suivant : lorsque j'effectue la deuxième étape, il arrive parfois que SDX ne
parvienne pas à indexer tous les documents dans la base publique, mais seulement
une partie. Je dois ensuite indexer les documents restants un par un... C'est en
fait très gênant pour l'utilisateur final, qui ne va pas comprendre pourquoi
tous ses documents n'ont pas été publiés :-(
Ce problème fait même parfois planter
Tomcat. Il ne répond plus à toutes les réquêtes et finit par s'écrouler. Autre
symptôme : Tomcat résiste au crash, mais lorsque je veux l'arrêter, je suis
obligé de terminer le processus manuellement ("kill -9" sous Unix, ou
"Ctrl+Alt+Suppr/Liste des tâches" sous Windows), car le processus ne finit
jamais.
Lorsque je regarde
dans les logs, je trouve pour chaque document :
-
soit je trouve une erreur du type "Premature end of
file"
- soit je
trouve une erreur du type "Socket write error" ou encore
"Cocoon servlet threw an
Exception while trying to close stream"
(en fait j'ai plein d'erreurs dans le fichier
"error.log", mais j'ai un peu de mal à me
dépatouiller)
Bizarrement, lorsque
l'erreur est "Premature end of file" et que je vérifie si le document est bien
accessible avec l'URL que j'ai donné pour l'indexation, le document est
effectivement accessible. Ou alors il est inaccessible, mais provisoirement
(pourquoi donc ???).
Autre remarque :
j'ai testé ceci dernièrement avec un PC (sous Win XP) plus puissant que celui
que j'utilise actuellement... et les résultats sont encore pire. Les messages
d'erreur sont les mêmes, mais sont encore plus fréquents.
Est-ce que quelqu'un
a déjà eu le même genre de problème ?
Sinon, quelqu'un a
une idée ?
Problème de réglage
d'utilisation mémoire ?
Problème
d'"architecture" de l'application ?
Ma config est la
suivante :
-
Windows 2000 SP4 (256Mo de RAM)
-
JDK1.4.2_08 (avec les options d'optimisation de la mémoire -Xms256M
-Xmx256M)
-
Tomcat 4.1.27
-
SDX
version:2.2.1, build:2004111001.
Précisez-moi si vous
avez besoin de plus d'infos (la XSP d'indexation, le
fichier application.xconf...)
D'avance un grand
merci, car cela fait un bon moment que je galère en tournant en
rond...
Claude
Niederlender