Resource Menu


RE : Upgrade 1.5 to 2.0
Hello, we found finally some time to upgrade our LS installation, to be ready for the autumn semester.

We were running LS 1.5, and now we try to upgrade to LS 2.2 thereby imgrating our data, originally created on a LS 1.0 installation. We also move our LS to a different server (Linux).

On the new server I installed Postgres and created a postgres user and an empty libresource database.

I exported the database on the system running LS 1.5 using the pg_dump command (as described somewhere else in this forum). Then I imported this database into the new database using pg_restore.

So I should have all the relevant data on my new system. Now I used the provided SQL scripts to adapt the database structure from 1.5 to 2.0, and then, in a second step from 2.0 to 2.2.

First problem, the SQL script does not work as it is provided. It specifies a user_ table, but there is no such table in the database. I assume it is the libresource_users_ table which is meant and I modified the script. Also the passworddigest_ column did not exist, and I changed it in the script to password_digest_. After this the first SQL script worked without error. (I added some new line characters after some comments, but dont think it matters.)

Applying the second script worked without problems.

Now I installed LS 2.2 using the java installer. This worked without problems. I can start LS using ./start.sh. This seems to work, except of the usual warnings about missing Trans Attributes:

2007-08-20 14:57:17,854 : SessionDesc.checkTxAttribute : trans-attribute missing for method public abstract boolean org.libresource.LibresourceService.canMapResourceForSecurity(java.net.URI,java.net.URI) throws org.libresource.LibresourceException,java.rmi.RemoteException in session bean LibresourceFormService (set to the default value Supports)

I assume after reading:

The JOnAS Server 'jonas' version 4.7.6 is ready 2007-08-20 14:57:21,395 : Server.start : JOnAS server 'jonas' started on rmi/jeremie

Everything should work.

But if I am now accessing the server over http://localhost:9000, I get quite some exceptions about a missing column children_ in the table/relation node_:

… Caused by: javax.ejb.EJBException: Failed to create bean: ERROR: column "children_" of relation "node_" does not exist

at org.objectweb.jonas_gen.org.libresource.kernel.ejb.JOnASNode_1237537263Bean.ejbPostCreate(JOnASNode_1237537263Bean.java:552) at org.objectweb.jonas_gen.org.libresource.kernel.interfaces.JOnASNode_1237537263LocalHome.create(JOnASNode_1237537263LocalHome.java:148) … 91 more 2007-08-20 15:01:30,850 : JFactory.postInvoke : system exception in business method: java.rmi.RemoteException: RuntimeException thrown by an enterprise Bean; nested exception is: javax.ejb.TransactionRolledbackLocalException: Failed to create bean: ERROR: column "children_" of relation "node_" does not exist

at org.objectweb.jonas_gen.org.libresource.kernel.interfaces.JOnASKernelService_861693235Remote.systemBootstrap(JOnASKernelService_861693235Remote.java:4897) at org.libresource.kernel.ejb.NodeBean.ejbHomeGetByPath(NodeBean.java:133) at org.objectweb.jonas_gen.org.libresource.kernel.interfaces.JOnASNode_1237537263LocalHome.getByPath(JOnASNode_1237537263LocalHome.java:338) at org.libresource.kernel.ejb.KernelServiceBean.systemLookup(KernelServiceBean.java:2462) at org.objectweb.jonas_gen.org.libresource.kernel.interfaces.JOnASKernelService_861693235Remote.systemLookup(JOnASKernelService_861693235Remote.java:1373) at org.libresource.membership.ejb.MembershipServiceBean.systemGetProfile(MembershipServiceBean.java:816) at org.libresource.membership.ejb.MembershipServiceBean.getProfile(MembershipServiceBean.java:878) at org.objectweb.jonas_gen.org.libresource.membership.interfaces.JOnASMembershipService860227629Remote.getProfile(JOnASMembershipService860227629Remote.java:1078) at org.libresource.web.Helper.getConnectedUserProfile(Unknown Source) at org.libresource.web.taglibs.JspFunctions.connectedUser(Unknown Source) ...

I assume it would be enough to add this column, but what are the parameters?

Did I miss something? Are your migration scripts maybe missing something?

Is there a better way to upgrade to LS 2.2 from 1.5 and keeping all the data including the users?

Thank you very much, Rüdiger

posted by Rüdiger Lincke at Aug 20, 2007 5:03 PM