cancel
Showing results for 
Search instead for 
Did you mean: 

Upgrade 3.0 vers 3.3g : Context initialization failed

anton
Champ in-the-making
Champ in-the-making
Bonjour à tous,

Notre société utilise depuis deux ans la version Alfresco CE Labs - v3.0.0 (Stable 1526), sur une plateforme CentOS 5.
J'ai cru comprendre que cette version et la version 3.1 représentaient la même. Est-ce confirmé ?

Afin de préparer une migration vers la v4, je me suis lancé dans l'étape intermédiaire, à savoir un upgrade vers une version Alfresco CE 3.3g avec MySql intégré, sur un Win Server 2003 x64.
L'installation initiale s'est déroulée sans problème sur C:\.
Du fait de contraintes d'espace disque, j'ai du déporter le répertoire alf-data sur une autre partition puis modifier le fichier alfresco-global.properties en conséquence (dir.root = E:\alf_data)
Un redémarrage m'a permis de constater le succès du déport.

Afin de réaliser l'upgrade, j'ai procédé comme suit :
  - arrêt de Tomcat
  - import du dump MySql de la version de prod
  - arrêt de MySql
  - remplacement des répertoires suivants sous E:\alf_data
        audit.contentstore
        contentstore
        mysql
        oouser
  - modification de la propriété INDEX.RECOVERY.MODE = FULL
  - redémarrage de Alfresco

Hélas, suite au rebuild des index sans problème (apparent), j'obtiens l'erreur suivante :
   11:52:54,040 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed
   org.alfresco.error.AlfrescoRuntimeException: 00200000 Ensure that the 'dir.root' property is pointing to the correct data location.


Ci dessous la log complète du redémarrage :

11:51:30,884 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/repository.properties]
11:51:30,900 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/domain/transaction.properties]
11:51:30,900 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from file [C:\Alfresco33\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\module\org_alfresco_module_dod5015\alfresco-global.properties]
11:51:30,900 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from file [C:\Alfresco33\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\module\test\alfresco-global.properties]
11:51:30,900 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from file [C:\Alfresco33\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\module\tests\alfresco-global.properties]
11:51:30,900 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from URL [file:/C:/Alfresco33/tomcat/shared/classes/alfresco-global.properties]
11:51:30,993 INFO  [org.alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
11:52:12,306 WARN  [org.springframework.beans.GenericTypeAwarePropertyDescriptor] Invalid JavaBean property 'serviceBeans' being accessed! Ambiguous write methods found next to actually used [public void org.apache.cxf.jaxrs.JAXRSServerFactoryBean.setServiceBeans(java.lang.Object[])]: [public void org.apache.cxf.jaxrs.JAXRSServerFactoryBean.setServiceBeans(java.util.List)]
11:52:16,321 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor Repository Template Processor for extension ftl
11:52:16,321 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor Repository Script Processor for extension js
11:52:28,587 INFO  [org.alfresco.repo.domain.schema.SchemaBootstrap] Schema managed by database dialect org.hibernate.dialect.MySQLInnoDBDialect.
11:52:31,228 INFO  [org.alfresco.repo.domain.schema.SchemaBootstrap] No changes were made to the schema.
11:52:32,384 INFO  [org.alfresco.repo.management.subsystems.ChildApplicationContextFactory] Starting 'sysAdmin' subsystem, ID: [sysAdmin, default]
11:52:32,415 INFO  [org.alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
11:52:33,025 INFO  [org.alfresco.repo.management.subsystems.ChildApplicationContextFactory] Startup of 'sysAdmin' subsystem, ID: [sysAdmin, default] complete
11:52:35,056 INFO  [org.alfresco.repo.management.subsystems.ChildApplicationContextFactory] Starting 'thirdparty' subsystem, ID: [thirdparty, default]
11:52:35,071 INFO  [org.alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
11:52:35,259 INFO  [org.alfresco.repo.management.subsystems.ChildApplicationContextFactory] Startup of 'thirdparty' subsystem, ID: [thirdparty, default] complete
11:52:35,259 INFO  [org.alfresco.repo.management.subsystems.ChildApplicationContextFactory] Starting 'OOoDirect' subsystem, ID: [OOoDirect, default]
11:52:35,275 INFO  [org.alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
11:52:37,728 WARN  [org.alfresco.util.OpenOfficeConnectionTester] An initial OpenOffice connection could not be established.
11:52:37,743 INFO  [org.alfresco.repo.management.subsystems.ChildApplicationContextFactory] Startup of 'OOoDirect' subsystem, ID: [OOoDirect, default] complete
11:52:38,181 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent] Index recovery started: 72 transactions.
11:52:38,196 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    10 % complete.
11:52:38,196 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    20 % complete.
11:52:38,196 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    30 % complete.
11:52:38,196 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    40 % complete.
11:52:38,196 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    50 % complete.
11:52:38,196 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    60 % complete.
11:52:38,212 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    70 % complete.
11:52:38,212 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    80 % complete.
11:52:38,212 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    90 % complete.
11:52:38,212 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent]    100 % complete.
11:52:53,446 INFO  [org.alfresco.repo.node.index.FullIndexRecoveryComponent] Index recovery completed.
11:52:53,462 INFO  [org.alfresco.repo.node.index.AVMFullIndexRecoveryComponent] Rebuilding indexes for 1 AVM Stores
11:52:53,462 INFO  [org.alfresco.repo.node.index.AVMFullIndexRecoveryComponent]     Rebuilding index for sitestore
11:52:53,571 INFO  [org.alfresco.repo.node.index.AVMFullIndexRecoveryComponent]   Reindex   100% complete
11:52:53,571 INFO  [org.alfresco.repo.node.index.AVMFullIndexRecoveryComponent] Finished rebuilding indexes for AVM Stores
11:52:53,931 INFO  [org.alfresco.repo.admin.ConfigurationChecker] The Alfresco root data directory ('dir.root') is: E:\alf_data
11:52:54,040 ERROR [org.alfresco.repo.admin.ConfigurationChecker] CONTENT INTEGRITY ERROR: System content not found in content store.
11:52:54,040 ERROR [org.alfresco.repo.admin.ConfigurationChecker] Ensure that the 'dir.root' property is pointing to the correct data location.
11:52:54,040 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed
org.alfresco.error.AlfrescoRuntimeException: 00200000 Ensure that the 'dir.root' property is pointing to the correct data location.
   at org.alfresco.repo.admin.ConfigurationChecker.check(ConfigurationChecker.java:332)
   at org.alfresco.repo.admin.ConfigurationChecker.access$000(ConfigurationChecker.java:68)
   at org.alfresco.repo.admin.ConfigurationChecker$1.execute(ConfigurationChecker.java:180)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:321)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:247)
   at org.alfresco.repo.admin.ConfigurationChecker.onBootstrap(ConfigurationChecker.java:184)
   at org.springframework.extensions.surf.util.AbstractLifecycleBean.onApplicationEvent(AbstractLifecycleBean.java:56)
   at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:97)
   at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:294)
   at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:858)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:419)
   at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261)
   at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:192)
   at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
   at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:63)
   at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3972)
   at org.apache.catalina.core.StandardContext.start(StandardContext.java:4467)
   at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
   at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
   at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:637)
   at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:563)
   at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498)
   at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
   at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
   at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
   at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
   at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
   at org.apache.catalina.core.StandardService.start(StandardService.java:519)
   at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
   at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
   at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
11:53:09,603 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 268 Web Scripts (+0 failed), 276 URLs
11:53:09,603 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 8 Package Description Documents (+0 failed)
11:53:09,603 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 0 Schema Description Documents (+0 failed)
11:53:09,931 INFO  [org.springframework.extensions.webscripts.AbstractRuntimeContainer] Initialised Spring Surf Container Web Script Container (in 3192.6948ms)
11:53:09,993 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
11:53:10,103 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js
11:53:10,228 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
11:53:10,243 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js
11:53:10,712 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
11:53:10,728 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js

J'ai cherché d'éventuelles référence au dir.root parmi tous les fichiers de config, sans succès.
Je suis bloqué depuis pas mal de temps sur ce problème, sans trouver de réelle solution.

Quelqu'un aurait-il une piste à me proposer ?

merci d'avance Smiley Happy
6 REPLIES 6

jayjayecl
Confirmed Champ
Confirmed Champ
Bonjour,

je n'ai pas bien compris la phrase suivante : "Un redémarrage m'a permis de constater le succès du déport."
Pouvez-vous l'expliquer ?

Sinon, votre démarche me semble correcte, mais comme tout n'est pas détaillé, je vais tenter de rappeler la procédure de migration d'une version A vers une version B de manière précise.

La réindexation totale lors de la migration n'est pas toujours nécessaire, ainsi :

1/ Rechercher le chemin de migration conseillé entre A et B (migration directe, ou "sauts" de migration successifs)
2/ Installer Alfresco en version B, le démarrer (à vide : avec un alf_data vide, et une nouvelle bdd "alfresco_B" vide) pour vérifie que l'instance fonctionne
3/ Arrêter Alfresco B, et réinitialiser les données (vider alf_data et la bdd "alfresco_B")
4/ Arrêter l'instance Alfresco A
5/ faire un dump de la base de données alfresco_A
6/ Faire une copie du répertoire alf_data d'Alfresco A
7/ Alfresco B étant arrêté, importer le dump dans sa base de données "alfresco_B", et remplacer son alf_data par la copie du répertoire alf_data de l'instance A
8/ configurer index.recovery.mode=AUTO dans alfresco-global.properties
9/ Démarrer l'instance Alfresco B

anton
Champ in-the-making
Champ in-the-making
Bonjour et merci pour votre réponse!

Pour péciser la phrase suivante :
"Un redémarrage m'a permis de constater le succès du déport." =>

L'installation A était sur une machine en CentOS5.
J'ai donc récupéré le dump et le répertoire alf_data de cette première version.
Lorsque j'ai installé la version B sur la machine cible sous Windows 2003 64b, je l'ai installé par défaut sur C:\Alfresco\
Le répertoire alf_data de B était donc sous C:\Alfresco\alf_data\

Dans l'ordre, sur l'installation B, j'ai ensuite:
- arrêté l'instance Alfresco ,
- déplacé le répertoire C:\Alfresco\alf_data\ vers E:\alf_data\ ,
- modifié le fichier alfresco-global.properties pour faire pointer dir.root vers E:\alf_data\ (ainsi que les lignes concernant OpenOffice)
- redémarré l'instance Alfresco
- ouvert le navigateur sur la page d'accueil de share pour me logger avec succès !
donc "Un redémarrage" de l'instance B "m'a permis de constater le succès du déport" du répertoire alf_data de C: vers E:

C'est seulement après cette opération d'installation de l'environnement cible (B) que j'ai commencé la procédure d'upgrade :
remplacement du répertoire E:\alf_data de B par A + import du dump de A dans Mysql

J'espère que cela vous éclaire un peu plus…

anton
Champ in-the-making
Champ in-the-making
un petit up, personne n'a une petite idée ?

cleseach
Star Contributor
Star Contributor
Bonjour,

Je pense qu'il faut regarder du côté de la remontée de votre dump dans la nouvelle base.
Tout s'est-il correctement passé ?
Etes-vous bien reparti d'une base vierge ? L'installation initiale a en effet déjà écrit des informations en base.

Question complémentaire : pourquoi ne recopier que certains dossiers du alf_data d'origine ?

Cordialement,
Charles Le Seac'h

anton
Champ in-the-making
Champ in-the-making
Bonjour et merci pour cette piste, que je vais de ce pas explorer!!
je suis tout de même étonné d'apprendre qu'il faut redémarrer d'une nouvelle base : je pensais que le dump écrasait les infos précédentes… maintenant, vu l'écart de version il est sans doute plus prudent de  :
supprimer la base Alfresco B puis importer le dump de A

question :  ne faut-il pas relancer le script d'initialisation de la base avant d'importer les données ?

pourquoi je ne copie que certains ? une liberté que j'ai prise … uniquement sur les dossiers qui ne me semblaient pas critiques car régénérés à chaque redémarrage (j'ai fait le premier restart avec le répertoire complet) et surtout dans le doute d'une éventuelle référence au répertoire précédent (sur c:/ )

cleseach
Star Contributor
Star Contributor
Bonjour,

je suis tout de même étonné d'apprendre qu'il faut redémarrer d'une nouvelle base : je pensais que le dump écrasait les infos précédentes…

Tout dépend du dump que vous avez réalisé.
Pour être sûr des traitements qui seront effectué, il faut ouvrir le fichier généré. Dans tous les cas, il me semble plus prudent de remonter un dump sur une base neuve.

Cordialement,
Charles Le Seac'h