Project

General

Profile

Actions

Bug #11640

closed

Exportation ZIP d'un dossier : Erreur si des fichiers versionnés sont utilisés

Added by David Lesimple over 1 year ago. Updated about 1 year ago.

Status:
Closed
Priority:
High
Start date:
07/24/2020
Due date:
% Done:

100%

Estimated time:
Navigateur:
Tous
Votre version de Silverpeas:
6.1
Système d'exploitation:
Votre base de données:
Toutes
Livraison en TEST:
Livraison en PROD:

Description

Cela ne se produit semble-t-il que si la GED contient des documents versionnés.

pas d'erreur dans les logs, seule la section ci-dessous s'affiche à l'écran :

org.silverpeas.core.contribution.attachment.SimpleDocumentService.getBinaryContent(SimpleDocumentService.java:650)
org.silverpeas.core.contribution.attachment.SimpleDocumentService$Proxy$_$$_WeldSubclass.getBinaryContent(Unknown Source)
org.silverpeas.core.contribution.attachment.SimpleDocumentService.getBinaryContent(SimpleDocumentService.java:640)
org.silverpeas.core.contribution.attachment.SimpleDocumentService$Proxy$_$$_WeldSubclass.getBinaryContent(Unknown Source)
org.silverpeas.core.contribution.attachment.SimpleDocumentService.getBinaryContent(SimpleDocumentService.java:696)
org.silverpeas.core.contribution.attachment.SimpleDocumentService$Proxy$_$$_WeldSubclass.getBinaryContent(Unknown Source)
org.silverpeas.core.importexport.attachment.AttachmentImportExport.copyAttachment(AttachmentImportExport.java:250)
org.silverpeas.core.importexport.attachment.AttachmentImportExport.getAttachments(AttachmentImportExport.java:235)
org.silverpeas.core.importexport.control.PublicationsTypeManager.exportAttachments(PublicationsTypeManager.java:273)
org.silverpeas.core.importexport.control.PublicationsTypeManager.processExport(PublicationsTypeManager.java:191)
org.silverpeas.core.importexport.control.ImportExport.processExport(ImportExport.java:309)
org.silverpeas.core.importexport.control.ImportExport.processExport(ImportExport.java:271)
org.silverpeas.web.importexport.control.ExportXMLTask.doExport(ExportXMLTask.java:54)
org.silverpeas.web.importexport.control.ExportTask.run(ExportTask.java:76)
java.lang.Thread.run(Thread.java:748)
org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl$ManagedThread.run(ManagedThreadFactoryImpl.java:250)

Actions #1

Updated by Miguel Moquillon over 1 year ago

  • Status changed from New to Feedback
Mes conditions de qualification du bogue :
  • Silverpeas version 6.2-build200819.
  • Wildfly 20.0.1.
  • Java 11.
  • GED pour laquelle toutes les options d'exportation sont activées (PDF et ZIP) et l'option "Publication toujours visible" désactivée (pour permettre le suivi de versions).
  • Test avec un dossier d'une GED comprenant 3 publications, chacune avec un fichier joint.
  • Les trois exportations possibles d'un dossier ont été joué pour chaque contexte de test : les fichiers joints seuls, les publications et les fichiers joints, complète.
  • Chaque ZIP a été vérifié.
La campagne de qualification a couvert l'ensemble de ces cas :
  • GED avec option de non suivi des versions des fichiers joints :
  • Aucun fichier joint n'est versionné => OK avec les trois modes d'exportation.
  • Un des fichiers joints est versionné => OK avec les trois modes d'exportation.
  • Un des fichiers joints est versionné et a deux versions => OK avec les trois modes d'exportation.
  • GED avec option suivi des versions des fichiers joints :
  • Tous les fichiers joints sont donc versionnés => OK avec les trois modes d'exportation.
  • Un des fichiers joints a deux versions => OK avec les trois modes d'exportation.
  • Un des fichiers joints n'est pas versionné => OK avec les trois modes d'exportation.
Je ne reproduis donc pas le bogue.
Pourrais-je avoir plus d'informations des conditions sous lesquelles l'erreur est survenue :
  • GED avec ou sans suivi de versions ?
  • nombre de publications dans le dossier incriminé ?
  • publication(s) avec plusieurs fichiers joints ?
  • profondeur de la sous-arborescence s'il y a ?
  • nombre de versions maximum et minimum des fichiers joints versionnés ?
  • publication(s) avec un mixe de fichiers joints versionnés et non versionnées ?
  • le type d'exportation qui échoue ?
  • ...
Actions #2

Updated by David Lesimple over 1 year ago

Miguel Moquillon a écrit (#note-1):

Pourrais-je avoir plus d'informations des conditions sous lesquelles l'erreur est survenue :

Exemple :

https://extranet.silverpeas.com/silverpeas/Topic/100?ComponentId=kmelia10
mais il y a d'autres cas sur d'autres plateformes.

  • GED avec ou sans suivi de versions ?

OUI

  • nombre de publications dans le dossier incriminé ?

26

  • publication(s) avec plusieurs fichiers joints ?

oui

  • profondeur de la sous-arborescence s'il y a ?

3

  • nombre de versions maximum et minimum des fichiers joints versionnés ?

peu élevé.

  • publication(s) avec un mixe de fichiers joints versionnés et non versionnées ?

peu importe.

  • le type d'exportation qui échoue ?

export complet.

Actions #3

Updated by Miguel Moquillon over 1 year ago

J'ai réalisé deux autres cas de tests d'export de dossier (pas de sous arborescence du dossier exporté) :
  • Une GED avec et sans le suivi de versions :
  • Une publication avec 1 fichier joint qui a le suivi de version + une autre publication avec 2 fichiers joints dont l'un est avec suivi de version (avec deux versions), l'autre non => OK avec les trois modes d'exportation.
Actions #4

Updated by Miguel Moquillon over 1 year ago

Est ce que chacun des sous dossiers du dossier exporté comprend des publications ou seul le dernier dossier de l'arborescence en a ?

Actions #5

Updated by David Lesimple over 1 year ago

Miguel Moquillon a écrit (#note-4):

Est ce que chacun des sous dossiers du dossier exporté comprend des publications ou seul le dernier dossier de l'arborescence en a ?

Tous les dossiers contiennent au moins une publication.

Actions #8

Updated by David Lesimple over 1 year ago

David Lesimple a écrit (#note-2):

Exemple :
https://extranet.silverpeas.com/silverpeas/Topic/100?ComponentId=kmelia10
mais il y a d'autres cas sur d'autres plateformes.

https://extranet.silverpeas.com/silverpeas/Topic/10?ComponentId=kmelia10
https://extranet.silverpeas.com/silverpeas/Topic/2219?ComponentId=kmelia10

Possible qu'il y ait un lien avec le contenu wysiwyg et #11649..

Actions #9

Updated by Miguel Moquillon over 1 year ago

J'ai mis en place un contexte de test similaire à celui incriminé, à savoir un dossier qui comprend plusieurs dossiers dont l'un d'eux a une arborescence jusqu'à 3 (un autre jusqu'à 2) et chaque dossier a plusieurs publications qui ont 1 ou plusieurs fichiers joints versionnées ou non et aussi avec un panaché de fichiers versionnés et non versionné. Certaines publications ont un vrai contenu WYSIWYG (copier coller de texte et d'images d'articles sur le Web) .
=> OK avec les trois modes d'exportation.

Je ne reproduis donc pas le bogue avec la dernière version de build de Silverpeas 6.2 (et avec Wildfly 20.0.1 et Java 11).

Afin de valider ce point, peux tu stp mettre à jour l'extranet ?

Actions #10

Updated by David Lesimple over 1 year ago

Même problème avec 6.2-build200819 et jdk11.

Actions #11

Updated by Miguel Moquillon about 1 year ago

J'ai testé sur une autre config de serveur et je n'ai pas rencontré le problème indiqué.
Aussi, j'ai passé l'extranet en debug afin de cerner le vrai problème à l'origine du bogue ici.
Je peux ainsi valider que ce n'est pas un bogue mais un problème externe.
Dans le cas de l'extranet, l'export du dossier Kmelia10 > Documents > Prospects, Veille et Salons > 11093 - MINEFI - Gestion des terms - 161111 échoue parce que le document Annexe 5 - Détails architecture technique et compléments.doc n'existe pas sur le système de fichier :

java.io.FileNotFoundException: File '/opt/silverpeas/data/workspaces/kmelia10/simpledoc_19942/1_0/fr/Annexe 5 - Détails architecture technique et compléments.doc' does not exist

Et effectivement, j'ai ça sur le système de fichier : data/workspaces/kmelia10/simpledoc_19942/1_0/fr/GNUSparseFile.33975/'Annexe 5 - Dét'

Idem, le dossier Kmelia10 > Documents > Prospects, Veille et Salons > 11109 - CALB échoue parce que le document Devis détaillé CALB.xls n'existe pas :

java.io.FileNotFoundException: File '/opt/silverpeas/data/workspaces/kmelia10/simpledoc_20199/1_0/fr/Devis détaillé CALB.xls' does not exist

Et effectivement, j'ai ça sur le système de fichier : data/workspaces/kmelia10/simpledoc_20199/1_0/fr/GNUSparseFile.33975/Devis détaill'$'\303

Parce que l'export de ces dossiers échouent, tout export de dossier parent échoue. Ça n'a donc rien à voir avec les documents versionnés ou non et avec l'export à proprement parlé.

Pour ce qui est des GNUSparseFile, j'ai investigué sur le web et il semblerait qu'il y ait eu à un moment donné peut être une restauration des données qui ne s'est pas finalement bien déroulé (ou son archivage). Voici deux pages au sujet de GNUSparseFile :
Actions #12

Updated by David Lesimple about 1 year ago

Ok il y a donc un client (je vais retrouver le ticket) qui est dans le même cas alors (fichiers absents ou mal encodés).

Actions #13

Updated by Nicolas Eysseric about 1 year ago

  • Status changed from Feedback to In progress...
  • Assignee set to Nicolas Eysseric
  • Target version set to Version 6.1.1

Je vais faire en sorte qu'une seule incohérence ne rende pas tout l'export impossible...

Actions #14

Updated by Nicolas Eysseric about 1 year ago

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

J'ai rendu plus souple l'export afin qu'il ne soit pas interrompu en cas de donnée corrompue.
Il y avait également un problème sur les champs répétables. Seule la première occurence était présente dans le XML et dans le ZIP.

Traité par PR : https://github.com/Silverpeas/Silverpeas-Core/pull/1102

Actions #15

Updated by Yohann Chastagnier about 1 year ago

  • Status changed from Resolved to Integration in progress...
Actions #16

Updated by Yohann Chastagnier about 1 year ago

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

Validé et intégré en 6.1.x et reporté en 6.2.x

Actions

Also available in: Atom PDF