Bonjour
 
Je cherche à patcher Jahia 4.0 en 4.1 à l'aide du patch standard.
J'ai l'erreur suivante :
 

Execute update :
-----------------
 
Apply class PatchSlide2b ...
PatchSlide2 initialized.
Load script : WEB-INF\var\db\mysql.script
java.sql.SQLException: Duplicate entry '150475-Guide JAHIA.doc-150474' for key 1
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2847)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1531)
        at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1347)
        at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:958)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1957)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1880)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1741)
        at org.jahia.update.core.PatchSlide2b.execute(PatchSlide2b.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jahia.update.JahiaUpdate.executeUpdate(JahiaUpdate.java:557)
        at org.jahia.update.JahiaUpdate.main(JahiaUpdate.java:115)
        at org.jahia.update.JahiaUpdate.execute(JahiaUpdate.java:77)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jahia.update.JahiaUpdateChain.executeUpdate(JahiaUpdateChain.java:341)
        at org.jahia.update.JahiaUpdateChain.main(JahiaUpdateChain.java:76)
 
Cela vient du fait qu'il y a des entrées dans la base de données qui n'ont pas de correspondance de fichiers "\tomcat\webapps\jahia\WEB-INF\var\content\slide"
Au passage c'est aussi ça qui empeche d'acceder au répertoire en tant que dossier web.
Du coup j'ai supprimé les entrées dans la table "jahia_sl2_uri" qui n'avaient pas de correspondance de fichier. Et j'ai supprimé les fichiers qui n'avaient pas de correspondance dans la base. J'ai supprimé aussi les doublons de fichier dans cette même table.
 
Le patch s'applique donc maintenant correctement.
 
Ma question est donc la suivante :
   
  1. Existe t'il un outil automatique pour faire cette manipulation ?
  2. Est ce que le mode opératoire est correct ou dois je purger des lignes à d'autres endroits dans les tables ?
  3. Comment ces erreures en base apparaissent t elles ?
   
en vous remerciant pour vos réponses.
 
Nicolas
 
Nicolas LAFAURY
Smile- Motoriste Internet
01-41-40-11-05
[EMAIL PROTECTED]
 
 

Répondre à