Openfire 3.6.0 has been released!

We are pleased to announce the release of Openfire 3.6.0. This is a maintenance release with many important bug fixes and improvements. Upgrading from older versions is highly recommended. You can read more about the highlights here.

The complete set of changes can be found at: http://www.igniterealtime.org/builds/openfire/docs/latest/changelog.html

Download Openfire from: http://www.igniterealtime.org/downloads/index.jsp

Download Connection Manager from: http://www.igniterealtime.org/projects/openfire/connection_manager.jsp

Enjoy!

Openfire Team

Thanks guys and girls! I’ll give it a go in the afternoon…

Links are broken though…theres a “community” that does not belong in there (The readable one works though )

This is great news, and it looks like a lot of work have been done.

I installed it and the upgrade was really smooth.

However I am encountering some issues:

  1. Profile Settings show my LDAP configuration but when I click on Edit Base DN and Administrator DN are not properly retrieved from the databse.

  2. Client management is not loading in Admin Interface

2008.08.27 10:27:34 [org.jivesoftware.openfire.container.PluginServlet.service(PluginServlet.java:9 9)]
javax.servlet.ServletException: java.lang.NoSuchMethodError: org.jivesoftware.openfire.XMPPServer.getMultiUserChatServer()Lorg/jivesoftware/ openfire/muc/MultiUserChatServer;

  1. Statistics is not loading in Admin Interface

2008.08.27 10:28:18 [org.jivesoftware.openfire.container.PluginServlet.service(PluginServlet.java:9 9)]
java.lang.ArrayIndexOutOfBoundsException: 0

I will let you know if I encouter any other issue.

Keep it up and well done.

Sounds great

Questions/Issues:

  1. All links in the “Where Do I Get It?”-section (Blog post) are dead.

  2. You mention some API changes in 3.6.0. What about a special section in changelog where all API changes are listed. This would help plugin developers as me a lot.

  3. Does upgrading Openfire automatically move settings from openfire.xml to database?

@ Coolcat to No.3:

Yes it does, but you might have to be careful (See below)

…and sorry for the doublepost…I have too many PCs

2 Bugs, 1 critical (or dumbness?).

My Openfire authenticates with an Active Directory that is not on the same server.

When I install the Update, the /etc/openfire.xml gets updated accordingly and the Admin-Logins get transferred to the database (found them in ofProperty -> admin.authorizedJIDs, is that correct?)

Login is not possible anymore.

The transferred value gets modified.

My old entry was “username” the new one in the DB reads “username@jabberserver” this probably wont work, as my AD wont understand that username.

However changing that value back to just “username” or to “username@FQDN” (Or even “username\40FQDN”) doesnt let me back into my Admin Interface. Login with a normal Jabber-Client doesnt work as well so I checked the LDAP Log and found, what I will attach in a minute (from the other PC). The AcceptSecurityContextError leads me to the guess that some special characters are misinterpretated wrong when read? I don’t know. I didn’t change anything and my Openfire Live-System still works as expected (3.5.1). The entries in my database all look very well (MySQL 5.0.51a)

More Harmless:

Login to Admin Backend:

If the Username contains an “@” and you login with a wrong Password, the @ gets escaped to /40.

If you do it wrong again the \ gets escaped with \c5 and so on and so on…

@ -> \40 -> \5c40 -> \5c5c40

Question:

Why is there a property called ldap.debugEnabled and one called ldap.ldapDebugEnabled ?


javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, vece^@]
at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3005)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2951)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2753)
at com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2667)
at com.sun.jndi.ldap.LdapCtx.(LdapCtx.java:287)
at com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:175)
at com.sun.jndi.ldap.LdapCtxFactory.getUsingURLs(LdapCtxFactory.java:193)
at com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:136)
at com.sun.jndi.ldap.LdapCtxFactory.getInitialContext(LdapCtxFactory.java:66)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.ldap.InitialLdapContext.(InitialLdapContext.java:134)
at org.jivesoftware.openfire.ldap.LdapManager.getContext(LdapManager.java:485)
at org.jivesoftware.openfire.ldap.LdapManager.findGroupDN(LdapManager.java:833)
at org.jivesoftware.openfire.ldap.LdapManager.findGroupDN(LdapManager.java:787)
at org.jivesoftware.openfire.ldap.LdapGroupProvider.getGroup(LdapGroupProvider.jav a:83)
at org.jivesoftware.openfire.group.GroupManager.getGroup(GroupManager.java:278)
at org.jivesoftware.openfire.group.GroupManager.getGroup(GroupManager.java:257)
at org.jivesoftware.openfire.group.GroupCollection$UserIterator.getNextElement(Gro upCollection.java:103)
at org.jivesoftware.openfire.group.GroupCollection$UserIterator.hasNext(GroupColle ction.java:66)
at org.jivesoftware.openfire.group.GroupManager$4.run(GroupManager.java:185)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java: 885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)

I tried to do the rpm -Uvh of the package, the install completed fine, but the server refused to start. It was unable to make the required changes to the database :-

[snipped as this was a lot of errors]

2008.08.27 10:56:03 [org.jivesoftware.database.SchemaManager.executeSQLScript(SchemaManager.java:37 9)] SchemaManager: Failed to execute SQL:
ALTER TABLE mucRoom ADD COLUMN serviceID BIGINT NOT NULL BEFORE roomID;
2008.08.27 10:56:03 [org.jivesoftware.database.SchemaManager.checkSchema(SchemaManager.java:269)]
java.sql.SQLException: Column constraints are not acceptable in statement [ ALTER TABLE mucRoom ADD COLUMN serviceID BIGINT NOT NULL ]
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.execute(Unknown Source)
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.logicalcobwebs.proxool.ProxyStatement.invoke(ProxyStatement.java:100)
at org.logicalcobwebs.proxool.ProxyStatement.intercept(ProxyStatement.java:57)
at $java.sql.Wrapper$$EnhancerByProxool$$1849176a.execute()
at org.jivesoftware.database.SchemaManager.executeSQLScript(SchemaManager.java:374 )
at org.jivesoftware.database.SchemaManager.checkSchema(SchemaManager.java:266)
at org.jivesoftware.database.SchemaManager.checkOpenfireSchema(SchemaManager.java: 71)
at org.jivesoftware.database.DbConnectionManager.setConnectionProvider(DbConnectio nManager.java:498)
at org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager .java:79)
at org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:335)
at org.jivesoftware.util.JiveProperties.init(JiveProperties.java:73)
at org.jivesoftware.util.JiveProperties$JivePropertyHolder.(JiveProperties .java:40)
at org.jivesoftware.util.JiveProperties.getInstance(JiveProperties.java:52)
at org.jivesoftware.util.JiveGlobals.getProperty(JiveGlobals.java:532)
at org.jivesoftware.openfire.XMPPServer.initialize(XMPPServer.java:298)
at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:415)
at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:161)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:106)
at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:51)
2008.08.27 10:56:03 [org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:346)]
java.sql.SQLException: Table not found in statement [SELECT name, propValue FROM ofProperty]
at org.hsqldb.jdbc.Util.throwError(Unknown Source)
at org.hsqldb.jdbc.jdbcPreparedStatement.(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.prepareStatement(Unknown Source)
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.logicalcobwebs.proxool.WrappedConnection.invoke(WrappedConnection.java:162)
at org.logicalcobwebs.proxool.WrappedConnection.intercept(WrappedConnection.java:8 7)
at $java.sql.Wrapper$$EnhancerByProxool$$bdca003f.prepareStatement()
at org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:336)
at org.jivesoftware.util.JiveProperties.init(JiveProperties.java:73)
at org.jivesoftware.util.JiveProperties$JivePropertyHolder.(JiveProperties .java:40)
at org.jivesoftware.util.JiveProperties.getInstance(JiveProperties.java:52)
at org.jivesoftware.util.JiveGlobals.getProperty(JiveGlobals.java:532)
at org.jivesoftware.openfire.XMPPServer.initialize(XMPPServer.java:298)
at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:415)
at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:161)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:106)
at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:51)

Hi

I have a installation of 3.5.2. How do I upgrade my data to the new database format of 3.6.0? I see the db tables changed from a jive “prefix” to “of” prefix. Is there any migration script around or is it a DIY task?

Regards

Jan

Hey,

I have the same problem as above. The upgrade/install using the RPM worked fine but it was unable to make the neccasary modifications to the database. After the upgrade I get this in my error logs

12:25:50 [org.jivesoftware.database.SchemaManager.executeSQLScript(SchemaManager.java:37 9)] SchemaManager: Fail
ed to execute SQL:
ALTER TABLE jiveRoster ADD INDEX jiveRoster_jid_idx (jid);
2008.08.27 12:25:50 [org.jivesoftware.database.SchemaManager.checkSchema(SchemaManager.java:269)]
com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: BLOB/TEXT column ‘jid’ used in key specification without a key length

I have seen similar referenced in other posts, it seems that the schema requires some modification. I have tried to make these mods (specifying a length for jid) but it falls down as my database already has the tables it is trying to create, and I do not wish to drop the whole database and reapply the schema. Is there a fix for this in the pipeline? After the failure to apply this schema, subsequent openfire startups leave me with errors complaining about missing tables, speficically ofID. I have tried downgrading again to my previous version but that does not work now either, any help with this would be greatly appreciated.

Cheers,

Sebastian Clarke

OK it was easy, just make a dbdump of your database and rename the tables and re-import it.

Regards

Jan

@jan:

Is there any migration script around
Normally Openfire does such updates automatically. But you see, there are some problems reported in this thread. You should do a database backup before and, if possible, test it on an identical test system.

@all people with database problems:

It is always helpful, if you say which database you are using.

@Sebastian Clarke:

Is there a fix for this in the pipeline?
You can always apply the database update script manually. Scripts are located in …/resources/database/upgrade

Find the correct update script and execute it by hand, step by step.

Bah! Stupid links not working! What’s worse is there doesn’t appear to be anything I can do about it. (trying to change it doesn’t work)

As for the other questions and comments here, let me finish waking up, cull together everything that’s brought up here, and see what answers I can bring. I’ll be in the weekly chat today “as usual”, so please feel free to join. I’ll try to be there early and late if I can as well since this was a pretty big release and looks like there’s a lot of questions.

A couple of things off the top of my head, make sure you upgrade the plugins I mentioned in the blog post, and I know that Open Archive breaks horribly. (in fact it somehow manages to break other plugins in the process =/) In general, make sure you are running all the latest versions of your plugins.

And also it is -always- a good idea to back up your database (and openfire home) before going through an upgrade. =) I know I know, I don’t always do it either, but it’s always recommended.

Ug, this editor is making me mad at the moment. How do you do “broken into pieces comments”? Anyway —

  1. What do you mean not properly retrieved? What are you seeing instead?

  2. That sounds like the client control plugin needs to be upgraded. Or… you are using Enterprise which is no longer available. (i just noticed that that wasn’t mentioned in the blog post =/ ) There will not be an enterprise plugin for 3.6.0, everyone using it should switch to the separated plugins (monitoring, clientControl, fastpath, clustering).

  3. Same as #2, it sounds like you either need to upgrade the monitoring plugin, or if you have enterprise, ditch it and switch to the separate plugins.

I apologize for not making the “enterprise is gone” clear in my original posts.

michelbugeja wrote:

This is great news, and it looks like a lot of work have been done.

I installed it and the upgrade was really smooth.

However I am encountering some issues:

  1. Profile Settings show my LDAP configuration but when I click on Edit Base DN and Administrator DN are not properly retrieved from the databse.
  1. Client management is not loading in Admin Interface

2008.08.27 10:27:34 [org.jivesoftware.openfire.container.PluginServlet.service(PluginServlet.java:9 9)]
javax.servlet.ServletException: java.lang.NoSuchMethodError: org.jivesoftware.openfire.XMPPServer.getMultiUserChatServer()Lorg/jivesoftware/ openfire/muc/MultiUserChatServer;

  1. Statistics is not loading in Admin Interface

2008.08.27 10:28:18 [org.jivesoftware.openfire.container.PluginServlet.service(PluginServlet.java:9 9)]
java.lang.ArrayIndexOutOfBoundsException: 0

I will let you know if I encouter any other issue.

Keep it up and well done.

Coolcat wrote:

Sounds great

Questions/Issues:

  1. All links in the “Where Do I Get It?”-section (Blog post) are dead.
  1. You mention some API changes in 3.6.0. What about a special section in changelog where all API changes are listed. This would help plugin developers as me a lot.
  1. Does upgrading Openfire automatically move settings from openfire.xml to database?
  1. ARG! And it looks like I can’t fix them. =( (they keep getting put back)

  2. I intend to post something in the openfire developers forum about it actually =) just got too tired. an API changes section in the changelog might not be a bad idea though. I’ll think about that.

  3. Yup! (or at least all of the settings that should be moved)

You actually should leave it as whatever@whatever, as that’s the “official format of the JIDs” now. If the @whatever matches that of the server, then a simple username will work. (ie, don’t have to enter the @) If I recall correctly, error code 49 means nothing more than “couldn’t log in”. I’m perplexed as to why it’s not working all of a sudden. I tested this against our dev active directory server. I don’t actually know why there are two ldap debug properties off the top of my head. That’s rather bizarre! Have you looked at the code at all to see where they are used? As for the login page thing, I’ve noted it to be fixed. =) The inability to log in thing is… well lemme look and response to your other post before commenting more on that.

No.2 wrote:

2 Bugs, 1 critical (or dumbness?).

My Openfire authenticates with an Active Directory that is not on the same server.

When I install the Update, the /etc/openfire.xml gets updated accordingly and the Admin-Logins get transferred to the database (found them in ofProperty -> admin.authorizedJIDs, is that correct?)

Login is not possible anymore.

The transferred value gets modified.

My old entry was “username” the new one in the DB reads “username@jabberserver” this probably wont work, as my AD wont understand that username.

However changing that value back to just “username” or to “username@FQDN” (Or even “username\40FQDN”) doesnt let me back into my Admin Interface. Login with a normal Jabber-Client doesnt work as well so I checked the LDAP Log and found, what I will attach in a minute (from the other PC). The AcceptSecurityContextError leads me to the guess that some special characters are misinterpretated wrong when read? I don’t know. I didn’t change anything and my Openfire Live-System still works as expected (3.5.1). The entries in my database all look very well (MySQL 5.0.51a)

More Harmless:

Login to Admin Backend:

If the Username contains an “@” and you login with a wrong Password, the @ gets escaped to /40.

If you do it wrong again the \ gets escaped with \c5 and so on and so on…

@ -> \40 -> \5c40 -> \5c5c40

Question:

Why is there a property called ldap.debugEnabled and one called ldap.ldapDebugEnabled ?


javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, vece^@]
at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3005)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2951)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2753)
at com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2667)
at com.sun.jndi.ldap.LdapCtx.(LdapCtx.java:287)
at com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:175)
at com.sun.jndi.ldap.LdapCtxFactory.getUsingURLs(LdapCtxFactory.java:193)
at com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:136)
at com.sun.jndi.ldap.LdapCtxFactory.getInitialContext(LdapCtxFactory.java:66)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.ldap.InitialLdapContext.(InitialLdapContext.java:134)
at org.jivesoftware.openfire.ldap.LdapManager.getContext(LdapManager.java:485)
at org.jivesoftware.openfire.ldap.LdapManager.findGroupDN(LdapManager.java:833)
at org.jivesoftware.openfire.ldap.LdapManager.findGroupDN(LdapManager.java:787)
at org.jivesoftware.openfire.ldap.LdapGroupProvider.getGroup(LdapGroupProvider.jav a:83)
at org.jivesoftware.openfire.group.GroupManager.getGroup(GroupManager.java:278)
at org.jivesoftware.openfire.group.GroupManager.getGroup(GroupManager.java:257)
at org.jivesoftware.openfire.group.GroupCollection$UserIterator.getNextElement(Gro upCollection.java:103)
at org.jivesoftware.openfire.group.GroupCollection$UserIterator.hasNext(GroupColle ction.java:66)
at org.jivesoftware.openfire.group.GroupManager$4.run(GroupManager.java:185)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java: 885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)

No.2, Oh that was your other post. Hrm. Well actually, I’m more concerned about this:

java.sql.SQLException: Table not found in statement [SELECT name, propValue FROM ofProperty]

It’s not founding ofProperty??? That might be causing a cascading weird issue.

Did that table not get renamed in your db?

Good lord. What DB is this? Looks like the upgrade script flat out failed. Whatever database it is seems to be mad about … I’m thinking NOT NULL. (in other words it refuses to allow adding a new column that can’t have NULLs in it, a fairly common issue) The only db I ran across that seemed to have that problem I fixed that in so I’m highly interested to know what db this is!

cwipapps wrote:

I tried to do the rpm -Uvh of the package, the install completed fine, but the server refused to start. It was unable to make the required changes to the database :-

[snipped as this was a lot of errors]

2008.08.27 10:56:03 [org.jivesoftware.database.SchemaManager.executeSQLScript(SchemaManager.java:37 9)] SchemaManager: Failed to execute SQL:
ALTER TABLE mucRoom ADD COLUMN serviceID BIGINT NOT NULL BEFORE roomID;
2008.08.27 10:56:03 [org.jivesoftware.database.SchemaManager.checkSchema(SchemaManager.java:269)]
java.sql.SQLException: Column constraints are not acceptable in statement [ ALTER TABLE mucRoom ADD COLUMN serviceID BIGINT NOT NULL ]
at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.jdbcStatement.execute(Unknown Source)
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.logicalcobwebs.proxool.ProxyStatement.invoke(ProxyStatement.java:100)
at org.logicalcobwebs.proxool.ProxyStatement.intercept(ProxyStatement.java:57)
at $java.sql.Wrapper$$EnhancerByProxool$$1849176a.execute()
at org.jivesoftware.database.SchemaManager.executeSQLScript(SchemaManager.java:374 )
at org.jivesoftware.database.SchemaManager.checkSchema(SchemaManager.java:266)
at org.jivesoftware.database.SchemaManager.checkOpenfireSchema(SchemaManager.java: 71)
at org.jivesoftware.database.DbConnectionManager.setConnectionProvider(DbConnectio nManager.java:498)
at org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager .java:79)
at org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:335)
at org.jivesoftware.util.JiveProperties.init(JiveProperties.java:73)
at org.jivesoftware.util.JiveProperties$JivePropertyHolder.(JiveProperties .java:40)
at org.jivesoftware.util.JiveProperties.getInstance(JiveProperties.java:52)
at org.jivesoftware.util.JiveGlobals.getProperty(JiveGlobals.java:532)
at org.jivesoftware.openfire.XMPPServer.initialize(XMPPServer.java:298)
at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:415)
at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:161)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:106)
at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:51)
2008.08.27 10:56:03 [org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:346)]
java.sql.SQLException: Table not found in statement [SELECT name, propValue FROM ofProperty]
at org.hsqldb.jdbc.Util.throwError(Unknown Source)
at org.hsqldb.jdbc.jdbcPreparedStatement.(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.prepareStatement(Unknown Source)
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.logicalcobwebs.proxool.WrappedConnection.invoke(WrappedConnection.java:162)
at org.logicalcobwebs.proxool.WrappedConnection.intercept(WrappedConnection.java:8 7)
at $java.sql.Wrapper$$EnhancerByProxool$$bdca003f.prepareStatement()
at org.jivesoftware.util.JiveProperties.loadProperties(JiveProperties.java:336)
at org.jivesoftware.util.JiveProperties.init(JiveProperties.java:73)
at org.jivesoftware.util.JiveProperties$JivePropertyHolder.(JiveProperties .java:40)
at org.jivesoftware.util.JiveProperties.getInstance(JiveProperties.java:52)
at org.jivesoftware.util.JiveGlobals.getProperty(JiveGlobals.java:532)
at org.jivesoftware.openfire.XMPPServer.initialize(XMPPServer.java:298)
at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:415)
at org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:161)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:106)
at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:51)

serfonteinj wrote:

OK it was easy, just make a dbdump of your database and rename the tables and re-import it.

Regards

Jan

can anyone confirm that the only changes to the DB between these versions is that the jive* tables names are changed to of* - if this is the only difference then yeah, shouldn’t be too hard to dump these out then inject them back in.

Cheers,

Seb