Upgrade From 3.4.9 to 4.3.3
Asked by Nick Kight:

This is for the development version upgrade of The Children's Hospital of Philadelphia Research Institute's Intranet Upgrade.

We have a live instance of Confluence 3.0.1 that we use as our intranet. It is highly customized, but we are looking to bring it back into the fold of straightforward Confluence. Using the following directions (<https://answers.atlassian.com/questions/78424/upgrade-from-confluence-3-0-1-to-latest-version>) I was able to successfully upgrade to 3.4.9. It doesn't look like much, as I've turned off all of the plugins, but I figured I'd get the content all upgraded then add back in the newest plugins.

I've attempted to upgrade to several of the other upgrade versions but with no success. The article sighted above recommends the 3.5.17 upgrade.

I'd be glad to provide log data for the attempted upgrades.


Answers:
author: J. Caldwell
body: Did you add LDAP or directory change at all? If it is as it always has been, there have been several significant changes that can be lost depending on how you stepped your upgrade.

comments: author: Nick Kight
body: LDAP has always been connected. I moved all the files from 3.4.9 to 3.5.1 except the atlassian-user.xml as I was told you shouldn't do that for this upgrade. It does look like the LDAP failed in this 3.5.1 upgrade. I haven't heard back yet from Atlassian, but will share when I do.


author: Jason Hensler
body: The atlassian-user.xml file is the config file for ldap backends. Not moving that file will cause the ldap to not connect at upgrade and confluence will remove the users that are no longer valid (ie any ldap users) when it converts the user tables in the database for the 3.5 upgrade. Version before 3.5 would probably upgrade ok with-out the atlassian-user.xml file being in places. You should also make sure that the osuser.xml file has been copied over. After Version 3.5 I don't think you will need the atlassian-user.xml file.


author: Nick Kight
body: Part 2:

2012-12-26 09:21:09,687 ERROR \[main\] \[atlassian.confluence.upgrade.UpgradeLauncherServletContextListener\] contextInitialized Upgrade failed, application will not start: Upgrade task com.atlassian.confluence.upgrade.upgradetask.AtlassianUserToEmbeddedCrowdConfigurationUpgradeTask@c60ee2 failed during the VALIDATION phase  
com.atlassian.confluence.upgrade.UpgradeException: Upgrade task com.atlassian.confluence.upgrade.upgradetask.AtlassianUserToEmbeddedCrowdConfigurationUpgradeTask@c60ee2 failed during the VALIDATION phase  
at com.atlassian.confluence.upgrade.AbstractUpgradeManager.executeUpgradeStep(AbstractUpgradeManager.java:205)  
at com.atlassian.confluence.upgrade.AbstractUpgradeManager.validateUpgradeTasks(AbstractUpgradeManager.java:140)  
at com.atlassian.confluence.upgrade.AbstractUpgradeManager.upgrade(AbstractUpgradeManager.java:70)  
at com.atlassian.confluence.upgrade.impl.DefaultUpgradeManager.upgrade(DefaultUpgradeManager.java:140)  
at


author: Nick Kight
body: Part 3:

com.atlassian.confluence.upgrade.UpgradeLauncherServletContextListener.contextInitialized(UpgradeLauncherServletContextListener.java:28)  
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4205)  
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4704)  
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)  
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)  
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)  
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)  
at org.apache.catalina.core.StandardService.start(StandardService.java:525)  
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)  
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)  
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)  
2012-12-26 09:21:09,687 ERROR \[main\] \[atlassian.confluence.upgrade.UpgradeLauncherServletContextListener\] contextInitialized 1 errors were encountered during upgrade:  
2012-12-26 09:21:09,687 ERROR \[main\] \[atlassian.confluence.upgrade.UpgradeLauncherServletContextListener\] contextInitialized 1: Property securityPrincipal is not a valid distinguished name  
2012-12-26 09:21:11,140 INFO \[main\] \[com.atlassian.confluence.lifecycle\] init Confluence is ready to serve


author: Nick Kight
body: From 3.4.9 to 3.5.17:

Unable to move C:\\Conf_Home\\data\\confluence.cfg.xml11970tmp to C:\\Conf_Home\\data\\confluence.cfg.xml. Falling back to non-atomic overwrite.  
2012-12-26 09:20:51,625 INFO \[main\] \[springframework.web.context.ContextLoader\] initWebApplicationContext Root WebApplicationContext: initialization started  
2012-12-26 09:20:54,312 INFO \[main\] \[com.atlassian.confluence.lifecycle\] \<init\> Loading EhCache cache manager  
2012-12-26 09:21:00,375 ERROR \[main\] \[confluence.search.lucene.ConfluenceSearcherInitialisation\] initialise Error encountered while warming up searcher - The index has not been upgraded. Please reindex.  
2012-12-26 09:21:08,546 INFO \[main\] \[springframework.web.context.ContextLoader\] initWebApplicationContext Root WebApplicationContext: initialization completed in 16921 ms  
2012-12-26 09:21:09,671 ERROR \[main\] \[confluence.user.migration.LdapRepositoryConfigurationMigrator\] validateOptionalDistinguishedName Property securityPrincipal is not a valid distinguished name: Failed to parse DN; nested exception is org.springframework.ldap.core.TokenMgrError: Lexical error at line 1, column 5. Encountered: "@" (64), after : ""  
2012-12-26 09:21:09,671 INFO \[main\] \[confluence.user.migration.AtlassianUserMigrator\] validate validated repository \[ ldapRepository2 \] with \[ com.atlassian.confluence.user.migration.LdapRepositoryConfigurationMigrator@baaaba \]  
2012-12-26 09:21:09,671 INFO \[main\] \[confluence.user.migration.AtlassianUserMigrator\] validate validated repository \[ hibernateRepository \] with \[ com.atlassian.confluence.user.migration.HibernateRepositoryConfigurationMigrator@11ec7df \]  


author: AbrahamA
body: Hi Nick

I did the same upgrade recently for a customer and it requires some analysis. you cannot just go to latest confluence available. Look at plugins and their supported version to start with.. figure out which ones are must. Determine version to upgrade and then do the upgrade.

Thanks

Abe

[jiraabraham@gmail.com](mailto:jiraabraham@gmail.com)

comments: author: Nick Kight
body: Update: Working with Atlassian on this. We have now gotten the instance to 3.5.1 however the login (LDAP) doesn't seem to be working, PDFs were not indexed fully (searchable), and it appears that many of the page author details were lost (likely related to the LDAP challenge). When we get it figured out I'll share the process here with you.


author: Renjith Pillai
body: What does the logs say?


author: Theinvisibleman
body: Hi Nick,

Seeing as you have attempted the upgrades a few times, and it did not succeed, I would recommend that you raise a support request for this at [http:support.atlassian.com](http://http:support.atlassian.com).

Please attach your Confluence logs in order to facilitate the troubleshooting effort

comments: author: Nick Kight
body: Hi Joe,

It has been submitted: CSP-93744) Upgrade From 3.4.9 to 4.3.3

Thanks, Nick

The support came back with: **"Checking your logs, I could find the following error:**   

**Failed to parse DN; nested exception is org.springframework.ldap.core.TokenMgrError: Lexical error at line 1, column 5. Encountered: "@" (64), after : ""**   
**It shows us a problem regarding user management issues. on atlassian-user.xml.**   
**This file should be inside your \<ConfluenceInstall3.5.17\>/confluence/WEB-INF/classes/atlassian-user.xml.**   

**After Confluence 3.5.x this file (atlassian-user.xml) will no longer be used and the LDAP settings will be set directly using the UI - User Interface clicking on Browse \> Confluence Admin \> User Directories.**   

**So regarding this Knowledge Base, you will need to proceed the upgrade without copying the atlassian-user and osuser files. Instead, you will use the UI to create your ldap connections."**

The thing is I have not yet successfully upgraded to any 3.5.X versions. I've tried skipping ahead or back a few versions 3.5 and 3.5.5 but with the same result.

Support is not telling me to remove the atlassian-user.xml file in the 3.5.17 instance, before attempting the upgrade, are they?


author: Nick Kight
body: Would you suggest doing a clean 3.5.X install and then connecting it to the LDAP and database?