Painful hotfix installation

We recently moved to Nuxeo DM 5.4.2. I tried to install the hotfixes (patch per patch). Now, I didn't do this according to the exact order as was expected (only found the Internet page with the right order when I ran into problems) and now I am unable to login onto Nuxeo with my administrator account.

  • How do I uninstall/ roll back manually from the latest hotfixes ? If possible, specify this in a detailed way, because I am not a full time Nuxeo administrator.
  • Why is this hotfix installation procedure so painful ? It seems that this procedure is not really state-of-the-art … On any other application/platform, getting the system up-to-date, just involves getting the last available patch and the installation takes care of any other dependencies and doing this in the right order. Also, restarting each time … well, wasn't this something Windows users were so frustrated about and then Microsoft tried to reduce this as much as possible ? What do other users think about this ?
0 votes

4 answers

1661 views

ANSWER

I've gone throughout the whole process of downloading and installing the hotfixes in the exact order as explained in https://connect.nuxeo.com/nuxeo/site/marketplace/hotfixes and restart the server EACH time.

I've reached hotfix 12 and then after restarting, I couldn't login anymore with my Administrator account ("Invalid user or password"). Any clue why this is not possible anymore ?

Server.log has:

2011-11-28 17:00:00,015 ERROR [org.nuxeo.ecm.platform.scheduler.core.EventJob] javax.security.auth.login.LoginException: createIdentity failed for user Administrator javax.security.auth.login.LoginException: createIdentity failed for user Administrator

    at org.nuxeo.ecm.platform.login.NuxeoLoginModule.createIdentity(NuxeoLoginModule.java:311)
    at org.nuxeo.ecm.platform.login.NuxeoLoginModule.validateUserIdentity(NuxeoLoginModule.java:359)
    at org.nuxeo.ecm.platform.login.NuxeoLoginModule.getPrincipal(NuxeoLoginModule.java:209)
    at org.nuxeo.ecm.platform.login.NuxeoLoginModule.login(NuxeoLoginModule.java:262)
    at org.nuxeo.runtime.api.LoginModuleWrapper.login(LoginModuleWrapper.java:77)
    at sun.reflect.GeneratedMethodAccessor90.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at javax.security.auth.login.LoginContext.invoke(LoginContext.java:769)
    at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
    at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
    at javax.security.auth.login.LoginContext.login(LoginContext.java:579)
    at org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.loginAs(NuxeoAuthenticationFilter.java:997)
    at org.nuxeo.ecm.platform.scheduler.core.EventJob.execute(EventJob.java:85)
    at org.nuxeo.ecm.platform.scheduler.core.EventJob.execute(EventJob.java:59)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
11/28/2011

Did you check if you still don't have the same JBoss issue?<br> Look in the bundles directory and remove if existing: nuxeo-core-storage-sql-5.4.2-HF05.jar nuxeo-core-storage-sql-5.4.2-HF07.jar nuxeo-core-storage-sql-5.4.2-HF08.jar nuxeo-core-storage-sql-5.4.2-HF09.jar nuxeo-core-storage-sql-5.4.2-HF10.jar nuxeo-core-storage-sql-5.4.2-HF11.jar
11/29/2011



Hello,

I suppose the issue you had with the order was on DM-5.4.2-PATH-HF05.

In Nuxeo 5.4.2, uninstalling hotfixes is not an easy task.
The easier solution would be to replace the whole Nuxeo directory with a clean one. Reusing the same configuration, same data directory, same database, will ensure the “new” Nuxeo to keep your existing data.

If you prefer trying to repair your current install, we need to know the following (use something like http://friendpaste.com/ to share the listings):

  • content of ${nuxeo.data.dir}/packages/.packages file
  • listing of $NUXEO_HOME/nxserver/bundles/ directory

About your other questions:

  • Nuxeo 5.5 comes with a lot of improvements, including a quick install of all hotfixes, automatically taking care of the other dependencies and their respective order, in the state-of-the-art :)
  • You will have to restart only once.
  • Nuxeo 5.5 provides management of packages out of Nuxeo, allowing easy uninstall in such a case.
  • Restart of the server is sometimes required because of some Nuxeo Framework technical constraints, but, most of the time, the restart is only required under Windows because of its file locking behavior. Using Linux or Mac, restart is not required so often.
1 votes



Ok. Thanks for the fast reply. I understand that since the Nuxeo Admin Centre is quite new, some things need to be improved.

Now for the fixing of my problem, I don't have an idea how to replace the Nuxeo directory with a clean one (I assume apt-get won't solve my problem).

I posted the .packages file and bundles directory listing on friendpaste (thanks for the new discovery !):

.packages

bundles folder

11/25/2011

If you installed Nuxeo with APT, then "apt-get remove …" followed by "apt-get install …" is enough. DO NOT use "purge" in order to keep your data. You should backup your data before (see http://doc.nuxeo.com/x/-YSE).

About fixing your current install, it seems you encountered a known issue with file deletion at restart under JBoss.<br/> Remove the following files: nuxeo-core-storage-sql-5.4.2-HF05.jar nuxeo-core-storage-sql-5.4.2-HF07.jar nuxeo-core-storage-sql-5.4.2-HF08.jar nuxeo-core-storage-sql-5.4.2-HF09.jar nuxeo-core-storage-sql-5.4.2-HF10.jar nuxeo-core-storage-sql-5.4.2-HF11.jar

11/25/2011


Why is this hotfix installation procedure so painful ? It seems that this procedure is not really state-of-the-art … On any other application/platform, getting the system up-to-date, just involves getting the last available patch and the installation takes care of any other dependencies and doing this in the right order. Also, restarting each time … well, wasn't this something Windows users were so frustrated about and then Microsoft tried to reduce this as much as possible ? What do other users think about this ?

It will be done for Nuxeo 5.5

1 votes



I tried the apt-get remove and install way (clean way), but the install failed:

FATAL: invalid value for parameter “lc_messages”: “en_US.UTF-8” psql: could not connect to server: No such file or directory

    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5433"?

This is probably due to the fact that I use a different port (5432), a different user name, password and database (not nuxeodb). I tried to change nuxeo.conf and restarting nuxeo-dm, but that didn't solve the problem…

0 votes



Yeah, it seems there's an issue in the current packages when switching between an auto-configured postgresql and a "custom" one, this has been rewritten for 5.5. For your version, you can try changing the value of "nuxeo.debconf.pgsqldb" to "custom" in your nuxeo.conf, I believe that should fix it.
11/28/2011

I tried to fix it with changing nuxeo.debconf.pqsqldb. Reinstalling it gave me the option to change the db settings, but still there were db connections errors (in server.log) and also some jar files (remaining hotfixes which are not removed by "apt-get remove" so it seems) caused problems. I tried to remove the jar files, still I had problems with the postgresql service. Still, I could connect to the Postgresql server and see that all data was there. I don't want to read a 1000 page manual, so …

Completely in rage, I typed "apt-get purge nuxeo-dm" (although that was discouraged) and then "apt-get install nuxeo-dm". This actually solved my problem. I could connect to my old database and didn't lose any data. Problem fixed, but it seems that a lot needs to be improved still.

11/28/2011

I'm afraid that using "purge", you lost the data directory, even if your custom database was kept.
11/29/2011


I am not sure, but I think that you only need to remove the bad hot fix file from your nxserver/bundles

You can make a backup of the nxserver directory before, so if anithing goes wrong, you can go back :-)

0 votes