sous-répertoire docserver et problème d'indexation

Problèmes d'installation du framework Maarch (pour les versions 2.x)
Installation issues (for 2.x versions)

sous-répertoire docserver et problème d'indexation

Message par funcool » 14 Nov 2008, 15:19

Bonjour à tous,

Depuis juillet 2008, à la demande de ma Direction j'ai mis en place Maarch LetterBox pour réaliser un workflow de validation de documents.
Cela marchait bien jusque-là mais depuis ce matin, les utilisateurs m'ont signalé un problème particulier.

En effet, ils indexent un document A avec un objet B pour le soumettre à la validation de leur responsable. Lorsque celui-ci accède au système il voit bien le sujet B, mais c'est un autre document C qui lui est joint.

J'ai effectué une recherche sommaire dans le forum pour avoir trace d'un tel problème sans succès.

Le système est en production et très utilisé mais j'ai dû tout arrêter en catastrophe ce matin pour comprendre ce qui se passe et trouver une solution.

J'ai deux serveurs virtuels Debian Etch (base de données et application) installés à l'aide de Openvz sur un même serveur physique. J'ai réalisé quelques recherches sur le système et j'ai les résultats suivants:

- la base de données MySQL, version 5.0.32-Debian_7etch6, tourne bien,
- le serveur web Lighttpd, version 1.4.13-4etch10, tourne bien également
- le serveur ftp pure-ftpd-ldap, version 1.0.21-8, marche bien
- l'espace disque est suffisant

J'ai régardé le répertoire docserver et là surprise ! Je me retrouve avec deux sous-répertoires
- l'un nommé "1", contient 2000 fichiers,
- l'autre nommé "2", en contient 754

Je vois que le répertoire "2" a été créé seulement le 12 novembre 2008 et cela automatiquement. De plus, les fichiers dans ces deux répertoires portent les mêmes nom. Ainsi, j'ai 1/10.pdf et 2/10.pdf, 1/328.pdf et 2/328.pdf.

Maarch LetterBox version 2.

Merci d'avance de me donner un coup de main !
Dernière édition par funcool le 15 Nov 2008, 22:05, édité 1 fois.
funcool
 
Message(s) : 9
Inscription : 29 Juin 2008, 14:46

Re: sous-répertoire docserver et problème d'indexation

Message par funcool » 14 Nov 2008, 21:01

Je réponds pour dire que je poursuis mes investigations et voila ce que j'ai trouvé de nouveaux:

sur le serveur web
------------------

a) ls -ld 2
drwxr-xr-x 2 www-data www-data 18144 Nov 12 18:00 2

Remarquer l'heure de création de ce nouveau répertoire nommé "2", 18:00

b) ls -l 2|wc -l
755

Vraisemblablement ce répertoire "2" contient 755 fichiers ( 1 fichier en plus par rapport au post précédent)

c) ls -l 2/75?.pdf
-rwxrwxrwx 1 www-data www-data 1035e08 Nov 12 17:19 2/750.pdf
-rwxrwxrwx 1 www-data www-data 98157 Nov 12 17:35 2/751.pdf
-rwxrwxrwx 1 www-data www-data 98333 Nov 12 17:45 2/752.pdf
-rwxrwxrwx 1 www-data www-data 100744 Nov 12 17:49 2/753.pdf
-rwxrwxrwx 1 www-data www-data 99566 Nov 14 10:03 2/755.pdf

sur le serveur de base de données
---------------------------------

a) select res_id,creation_date,path,filename,filesize from res_x where path='2#' order by res_id;

me retourne exactement 859 lignes dont les plus pertinentes sont certainement celles-ci:

1: | 2822 | 2008-11-12 17:03:05 | 2# | 748.pdf | 99308 |
2: | 2823 | 2008-11-12 17:04:46 | 2# | 749.pdf | 87068 |
3: | 2824 | 2008-11-12 17:19:32 | 2# | 750.pdf | 103508 |
4: | 2825 | 2008-11-12 17:35:35 | 2# | 751.pdf | 98157 |
5: | 2826 | 2008-11-12 17:45:00 | 2# | 752.pdf | 98333 |
6: | 2827 | 2008-11-12 17:49:15 | 2# | 753.pdf | 100744 |
7: | 2829 | 2008-11-12 18:00:14 | 2# | 755.pdf | 99997 |
8: | 2830 |2008-11-12 18:10:32 | 2# | 755.pdf | 98623 |
9: | 2831 | 2008-11-12 18:23:29 | 2# | 755.pdf | 99182 |
10:| 2832 | 2008-11-12 18:30:58 | 2# | 755.pdf | 99230 |
11:| 2833 | 2008-11-12 18:35:46 | 2# | 755.pdf | 98995 |
12:| 2834 | 2008-11-12 18:43:18 | 2# | 755.pdf | 98678 |
13:| 2835 |2008-11-12 18:48:34 | 2# | 755.pdf | 28614 |
14:| 2836 | 2008-11-13 08:49:54 | 2# | 755.pdf | 98828 |

(J'ai rajouté les numéros de lignes en début pour qu'on se retrouve un peu.)

Je constate que le 12-11-2008:

- le 754.pdf n'a pas été créé
- le 755.pdf a été créé à 18:00:14

j'en déduis que le système fonctionnait correctement jusqu'à 18:00 le 12-11-2008 moment auquel a eu lieu la création du répertoire nommé "2".

Que s'est-il vraiment passé ? Pourquoi le système à perdu le pôle nord pour ne plus générer séquentiellement les numéros de fichiers?

Mais surtout pourrais-je avoir des suggestions/pistes pour remettre le système en production ?
funcool
 
Message(s) : 9
Inscription : 29 Juin 2008, 14:46

Re: sous-répertoire docserver et problème d'indexation

Message par funcool » 15 Nov 2008, 16:27

Bonjour,

Personne n'a aucune idée de comment je peux affronter ce problème?

J'ai fini par redémarrer mes serveurs mais cela n'a rien changé.

Le compteur pour la création de fichier est désespérement bloqué à 755.

J'ai soumis un autre type de fichier différent de .pdf et toujours la même chose: 755.odt

Pourriez-vous m'expliquer le système de génération de fichier? Pour que j'essaie d'éditer un ou deux fichiers?

Merci d'avance.
funcool
 
Message(s) : 9
Inscription : 29 Juin 2008, 14:46

Re: sous-répertoire docserver et problème d'indexation (résolu)

Message par funcool » 15 Nov 2008, 22:04

j'ai découvert le fichier class_docserver.php à la suite d'une erreur de manipulation. j'ai lu le code pour découvrir comment les répertoires et les fichiers sont générés.

En exécutant le code à la main, j'ai compris pourquoi je n'avais que 755 comme nom de fichier.
En fait, la non-création, disparition, suppression du fichier 754 du répertoire 2 faisait que chaque fois que le script s'exécutait, il trouvait 754 comme nombre de fichiers. Et bien sûr en l'incrementant, il tombait toujours sur le 755. (quel fameux chiffre celui-là, je ne vais pas l'oublier).

Solution

serveur d'applications
---------------------
$ rm 2/755.pdf
$ touch 2/754.pdf 2/755.pdf

serveur de base de données
---------------------------
update res_x set status='DEL' where filename='755.pdf' and path='2#';

Et voilà avec ça le système a repris des couleurs.

(je précise que j'ai monté un environnement de débogage où j'ai fait tous les essais avant d'appliquer les changements en environnement de production).

Il y aura quand même une petite centaine de courriers à ré-indexer.

Pourquoi le 754 n'a pas été créé? j'ai pensé un moment à une suppression accidentelle? du fichier sur le disque mais d'après les extraits de la base ci-dessus, rien n'y a été enregistré non plus?

Qu'est-ce qui s'est passé? Cela pourrait se reproduire ?
funcool
 
Message(s) : 9
Inscription : 29 Juin 2008, 14:46

Re: sous-répertoire docserver et problème d'indexation

Message par jle » 17 Nov 2008, 10:25

Bonjour,

Ca ne serait pas arrivé si vous aviez un contrat de maintenance et support Maarch. C'est pas cher et pour des applis en production comme la vôtre ça peut éviter de se faire taper dessus...

Pour en revenir à nos moutons, le problème que vous avez rencontré est connu, et il a été corrigé dans la v2.3.1 de LetterBox. Ca arrive sur certains systèmes Linux à partir de 2000 fichiers. Nous avons fait la correction dans class_docserver.php pour prendre en compte ce comportement.

Je vous conseille de faire un upgrade en 2.3.1 plutôt que de patcher class_docserver.php.

Envoyez un mail à info@maarch.org si votre direction devient raisonnable ;)

JLE.
jle
 
Message(s) : 394
Inscription : 07 Jan 2008, 17:28
Localisation : Paris - France


Retour vers Installation (Maarch 2.x)

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité

cron