powered by Jive Software

Time Zone

Still not saving. After i restart server it points to GMT +1:00 again.

Hey wroot,

The timezone is being stored as a system property in the database. So my first question is how are you stopping the server? If you are using the embedded database then make sure that you are not killing the server process (e.g. kill -9). Otherwise, the server will not be able to commit changes to the HSQLDB file. You can always execute the “SELECT * FROM jiveProperty” SQL statement and check the value of the locale.timeZone[/i] property (if you are not using HSQLDB).


– Gato

I’'m running and stopping it with Jive Messenger Launcher (Windows 2000). Yes, embedded-db. Like i said, when i change time zone value and press Save Settings there is no confirmation message about saving changes. When i try to navigate out and back the value is saved. But after restart it is not.

Hey wroot,

Could you check in the HSQLDB files after the server has been stopped if the system property has been changed? BTW, do you have any relevant error in the logs?


– Gato

So, it seems to be not only this property’‘s problem. JM cant push some changes (user Names, properties) to a DB. But it do saves Security settings and maybe something more. I’'m not sure but i think DB was created from scratch starting from 2.3.0b1. Havent changed anything or creatd new users/rooms for a long time (this is only a local dummy test server at home).

some errors for you:

2005.11.23 23:24:25 [org.jivesoftware.database.ConnectionPool.(ConnectionPool.java:108)

] Failed to create new connections on startup. Attempt 0 of 3

java.sql.SQLException: The database is already in use by another process: org.hsqldb.persist.NIOLockFile@b27997b8[file =C:\Program Files\Jive Messenger\embedded-db\messenger.lck, exists=true, locked=false, valid=false, fl =null]: java.lang.Exception: checkHeartbeat(): lock file is presumably locked by another process.

at org.hsqldb.jdbc.Util.sqlException(Unknown Source)

at org.hsqldb.jdbc.jdbcConnection.(XMPPServer.java:134)

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.messenger.starter.ServerStarter.start(ServerStarter.java:82)

at org.jivesoftware.messenger.starter.ServerStarter.main(ServerStarter.java:46)

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 com.exe4j.runtime.LauncherEngine.launch(Unknown Source)

at com.exe4j.runtime.WinLauncher.main(Unknown Source)

I think i have tried to start server to quickly after stopping it. But changes are not saving even if i wait a little.

similar problems with different OS:


same problems under linux. question. how do i connect to the embedded db and query it? can it be done? or is there any way i can browse table contents?


Havent tried anything else since last Wednesday, but maybe you (devs) have found something about this? Cause now i cant upgrade my work server, have to investigate this first.

Hey wroot,

Matt found and fix the problem. The fix is only available in the nightly build version. Note that the nightly build version also includes support for having JIDs inside shared groups. However, the idea is to only include JIDs of entities that will automatically accept presence subscriptions. It was necessary to make several modifications to the code so I won’'t recommend the nighlty build version for production (yet).

For those of you that need to change the timezone and are using JM 2.3.0 you can add/edit the locale.timeZone[/i] system property and set the ID of the timezone you want to use. After the system property has been set you will need to restart the server. Let me know if you need help figuring out the ID of the desired timezome.

For instance, the id of (GMT+3:00) Moscow, St.Petersburg, Volgograd is Europe/Moscow.


– Gato

I dont really bother about Time Zone But i had problems with saving any information to a DB. So, i have tried last nightly (11-28) and Time Zone value is now saving after restart, so Security Settings are saving too. But something is broken still.

First i wanted to ask about Launcher in Windows version. If i press Stop, then Start button is activating at the same moment, so if i press Start button at once then Launch Admin is activating and only after some time console is showing lines about server starting actually. If i wait a little after stoping server and only then press Start so starting lines appears firstly and only then Launch Admin button activates. At first i even thought it was causing me troubles, not saving. But after some testing i havent find any connection between these. Though maybe you have to edit delay values a little. Is Start button activating only if DB is closed?

And the broken part. I was testing if changes are now saving to a DB. Have tried to change names of users. And:

original user with name - John

then i change it to Johna and restart server, launch admin, check it, and it’'s updated - Johna

but if i try to change it back, or write some other name and then restart server it never reflects changes, it is always Johna.

Ok. bat didnt worked, so i have started server with messengerd.exe manually. And now it’'s saving name changes ok

so, is there something wrong with Launcher?

Hey wroot,

So it seems that the problem is related to the way the launcher is stopping the server. I will check it later and let you know what I found.


– Gato