Server doesn''t start anymore

Hello,

I’‘ve just started with Wildfire today and made a simple test installation. Everything went fine, I use MySQL 5.0 as database, running it all on a Debian 3.1 box. In the web interface, I saw the label “Domain names” besides my primary IP address, so I tried to change it to a second domain, comma-separated. It accepted the setting and said, I must restart the server. I clicked the “Stop” button in the overview, then I assume it was stopped. I restarted it in the console, but it didn’‘t come back since. The error log said, what I entered was an invalid jid. So I browsed the database and changed it back to what it was before. Strangely the error log message was only there when I started AND stopped the server. Although I don’‘t believe it was ever started with this invalid jid, or was it? Well, now it still doesn’‘t start. The error log says nothing, it’'s just empty. What can I do now? Do I need to re-install everything fron new only because I entered an invalid server name that the system cannot handle correctly?

Hi,

a wrong domain name does indeed cause Wifi to start. I assume that you did edit the xmpp.domain stored in JIVEPROPERTY to be valid again. So there’'s no need why Wifi should not start.

Is is possible that you did install and run it as root the first time and now you are trying to run it as a normal user? Can the server write the conf/wildfire.xml file, are the permissions right? Is the server still running and blocking port 5222 or write access to the files?

LG

edited: What can I do now? Do I need to re-install everything from new only because I entered an invalid server name that the system cannot handle correctly?[/i]

You could do this to fix it quick, but the change you made and reverted is not the cause of your problem, I just did try it and got "2006.04.29 19:13:55 org.jivesoftware.wildfire.XMPPServer.initModules(XMPPServer.java:483) Internal server error

java.lang.IllegalArgumentException: Illegal JID: jabber.company,foobar.de at org.xmpp.packet.JID.init(JID.java:401)". After changing the JID back to jabber.company Wifi did start.

Yes, I did install and run Wildfire as root, I haven’'t thought out the security considerations yet nor found any official. But I am still trying to run it as root, nothing is blocking the port, I rebooted the machine.

Ehm… I was having dinner and watching TV, now that I come back, start the Wildfire service, the web interface works as before again. Now this is strange. It didn’'t before.

An interesting thing is that I now have 3 lines for the server ports, last time it was only one. But I could and can log in to the server with Psi… No idea what’'s going on on that machine…

Hi,

did you disable s2s on page /server2server-settings.jsp (xmpp.server.socket.active=false) ? This will remove the 5269 line.

If you disable Old SLL on page /ssl-settings.jsp (or set system property xmpp.socket.ssl.active=false) the line with port 5223 will be removed.

LG

PS: If you have a very slow server with 100 MHz I could image that if was still loading and initializing.

Now it’'s gone for good again.

Meanwhile, I have set ownership for all files of wildfire to the “jabber” user and “jabber” group. The Wildfire server is started with

su jabber -c “/usr/local/wildfire/bin/wildfire start”

and I remember that has worked several times before. Now I added SSL support to the MySQL 5 server that Wildfire uses, and MySQL ist still working, but Wildfire just does nothing at all. When I start it as the jabber user, there is no process of it afterwards. Just like it was never called. It says:

Starting wildfire

nohup: appending output to `nohup.out’’

and that’'s all. When I start it as the root user, it opens the web interface, but not the ports 5222 and 5223 and accessing the web interface just shows me the initial setup page (language selection). But the config file is still there and untouched, accessible and writable to the jabber user.

I have no idea what the heck is going on there, I can’'t find any more output that this. No debug option or anything. The error log contains previous items that say that config.xml must be writable, maybe this was because it was owned by the root user before. Now I changed that to the jabber user, as I said, and from then on, the error log and all other logs remain empty (no new entries).

Does anybody know what I can do to make it live again?

PS: I have no slow computer. It’'s an Athlon64 3700+ with 2GB RAM. I guess the server should be up within a few seconds if at all.

Hi,

is you /usr/local/wildfire/bin/nohup.out file empty after trying to start Wildfire as user jabber or what is the content of it? I’'d assume “java not found”.

LG

The file is empty.

-rw------- 1 jabber jabber 0 May 6 17:05 nohup.out

And I see that it’'s totally outdated.

go back in, reset your wildfire.xml and start the server. resetup the variables, and see if it runs from there. It doesn’'t over-write anything, so yoru database is safe. Also, do you see anything in the other logs?

Jeff

Hi,

I wonder why no log entries are written. Please (backup and then) delete all files in the logs directory, something should be written during startup, maybe the files are owned by root? You could start Wildfire as jabber with “sh -x /usr/local/wildfire/bin/wildfire start” to verify what is launched, one of the last lines should contain the java call with the used path.

LG

Ok, here’'s what I did:

  • Make backup of wildfire.xml

  • Edit wildfire.xml to

  • Start the Wildfire server as root

  • Opened the web interface on port 9091 in the browser

  • Followed the setup questions, no errors

  • Tried to log in with my admin user -> didn’'t let me in

Now wildfire.xml is owned by the root user (not sure if it was before, but it shouldn’'t be so).

  • Stopped Wildfire server as root again

  • Changed ownership of wildfire.xml to jabber:jabber

  • Removed that nohup file

  • Started Wildfire server again as the jabber user

Now it works. Anybody knows why? Was it that nohup file?

Hi,

the nohup.out file should not be the reason for the problems you did see. You may try to start Wifi with the backup of your wildfire.xml file or compare the files.

As you did not make a database backup you may probably not be able to revert the changes the setup process made to it. So it’'s hard to guess what the problem was.

LG

Don’‘t know, I think it in George Jetson’'s words “Space Magic” !!!

Actually, I found weird issues when I first tested my Wildfire server (2.4.x and up) when I was validating it as a replacement for my current Jabberd2 install, running as root (SUSE and RHEL). It just does, is basically what I told myself, then went in and reset all permissions to my Jabberd account. haven’'t had the funky issues since, only other ones…

It wasn;t nohup.out, that is strictly your error log for startup.

Now that you are running, you can login AD? If so, let;s get back to you MSN prob…

Jeff

I removed the config backup again, but I entered it all the same and afterwards both files were the same size.

But wait, it only works half. I can connect with Psi but cannot login to the web interface. The MySQL database still holds the admin password (only plain, not encrypted, as opposed to all Jabber users).

Yes, once you make the leap to another authenticating source the database shouldn;t be holding your usernames and passwords.

Try adding just yoru username to the section restart the server then see if you can get in…

Jeff

What does that mean, it shouldn’‘t hold usernames and passwords? It does, but the admin user cannot log in. My Jabber user can log in to the webadmin interface. I added myself some time ago but didn’‘t restart the server then because I didn’'t need it.

And to the restart issue: I don’‘t like magic. I don’‘t want to hope that it works. I need the server to be reliable. But that seems to be a word that doesn’‘t fit today. Since my new server I cannot use two applications (ftp, mail) that I didn’‘t compile on another machine, Wildfire sometimes just doesn’'t start, the Py-transports sometimes just disconnect and die… - Two years ago the world was still good.

Hi

it shouldn’'t hold usernames and passwords” - I think Jeff did post something about LDAP / AD but you are not connected to AD / LDAP, so forget this sentence.

I added myself some time ago but didn’'t restart the server” - so it could be possible that you did lock out admin.

I see no magic around, if you have little unix experience some things may look like magic. If you change libs or update your kernel it’‘s normal that some things will no longer work as they rely on specific lib version, it’'s the same with Windows 3.11 - try to run these programs with Windows XP and you may hit some problems.

LG

Sorry I may have taken for granted that you were using an outside source for authentication. Are you? Active Directory, LDAP, eDir? If not then I mis-spoke, you will have to create the users within wildfire Or allow registration and their info will be stored in your *SQL database. if you are authenticating to an outside source the admin cannot login, unless you have an account in that source with admin

As far as Magic goes, if you are seasoned at *NIX, then you understand that root is the ultimate in shouldn;t be used accounts. Paths are open, and root does things that others cannot. So in that regard, maybe ‘‘magic’’ was a poor term. However, stability is good in the product. If compiled correctly it will work. The FTP and mail issues I don’'t understand.

Py-transports are a pain. It isn;t WIldfire that creates an issue with those.

I take it by what you are saying that this is now a production box, hence the inability to restart? Ok, then can I ask you. On your installation, was it RPM or tarred? If tarred, who (username) untar’'d, make (ed) it?

I only added my username to the . Does that lock out the “admin” user? (Well, “alternatively” should say that.) That would explain what’'s happening. Fine, can I delete the admin user then?

You said it’‘s magic. I haven’‘t changed anything since I last restarted Wildfire. I moved the MySQL server’‘s IP address and Wildfire worked immediately again. That was 9 days ago. No software change since then. And I do have Linux experience, but only not so much with Java. And when I start an application that says nothing at all (stdout/stderr/log files/anywhere) and isn’'t there right after I started it, what is there to understand…

Well, for now it seems to work. Maybe I’‘ll try to restart it again the next days to see if it’'s going to stay. Thank you all so far.

Sorry, that was you with the “magic”…

I’'m using a MySQL 5.0 server for authentication and storage, no LDAP or something.

Yes, the box itself is production, but the Jabber server is still an “experimental” service with two users, including me. And only I use the transports. But I’'m going to make that public and by then it should work reliably.

My Wildfire setup was a precompiled tarball. I basically unpacked it, chown’‘ed it all to jabber:jabber and chmod’'ed 700 conf logs plugins resources. The server is started and stopped by root (as all system services), in this case with an “su jabber -c …” call.

So it was one of the nightlies then? hmm. That shouldn;t be a problem. Something that I found very helpful setting up the production box was to setup first on an older machine to tweak, break, and fix. This might be a good idea for you as well, since you can’'t really do much breaking on your production box. What OS are you using currently? What flavor I mean. An RPM might be a nicer install for you, it installs fairly cleanly for me atleast.

Jeff