Why there are two openfire.exe and two openfired.exe in the windows task manager?

After openfire running a period of time, we can see that there are two openfire.exe and two openfired.exe in the windows task manager. And once this phenomena happans, the user who login in the server afterward can’t see the users who login in before that phenomena happens. In the Admin console, this user is shown as offline. And the file transfer through proxy can’t success.Why this happens. I look over the server information log, and found the openfire startup twice.Do openfire can self-startup? And if this is true, what leads this happens, and how to solve it?

Are you using it as a service? Maybe something wrong is with services. Though it shouldnt be possible to install two openfire services.

Thanks for your kindness!

Do you mean if I have installed and started openfire-service.exe?No.If there is something wrong with service,what’s wrong with it?

If I quit the openfire, there still is a openfire.exe and openfired.exe in task manager.

I check the log.

In info.log,it is as follow:

2007.09.18 08:06:23 multi-user chat?conference.fis.crec.cn

.

.

.

2007.09.18 08:06:24 Openfire 3.3.2

2007.09.18 08:06:25 admin console start listening:

http://fis.crec.cn:9090

https://fis.crec.cn:9091

2007.09.18 08:53:10 multi-user chat?conference.fis.crec.cn

.

.

.

2007.09.18 08:53:11 Openfire 3.3.2

2007.09.18 08:53:12 admin console start listening:

http://fis.crec.cn:9090

https://fis.crec.cn:9091

At the time of 08:53:10, the second openfire.exe and openfired.exe appear. And in the error.log, it is as follow:

2007.09.18 08:53:10
[org.jivesoftware.openfire.filetransfer.proxy.ProxyConnectionManager$1.run(Proxy ConnectionManager.java:87)

] Error creating server socket

java.net.BindException: Address already in
use: JVM_Bind

at
java.net.PlainSocketImpl.socketBind(Native Method)

at java.net.PlainSocketImpl.bind(Unknown
Source)

at java.net.ServerSocket.bind(Unknown
Source)

at
java.net.ServerSocket.(Unknown Source)

at
org.jivesoftware.openfire.filetransfer.proxy.ProxyConnectionManager$1.run(ProxyC onnectionManager.java:84)

at
java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at
java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown
Source)

at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

2007.09.18 08:53:11 [org.jivesoftware.openfire.http.HttpBindManager.start(HttpBindManager.java:96)

] Error starting HTTP bind service

org.mortbay.util.MultiException[java.net.BindException:
Address already in use: bind, java.net.BindException: Address already in use:
JVM_Bind]

at org.mortbay.jetty.Server.doStart(Server.java:179)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at
org.jivesoftware.openfire.http.HttpBindManager.start(HttpBindManager.java:93)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.startHTTPBindListeners(Conne ctionManagerImpl.java:415)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.createSocket(ConnectionManag erImpl.java:106)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.start(ConnectionManagerImpl. java:705)

at org.jivesoftware.openfire.XMPPServer.startModules(XMPPServer.java:528)

at
org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:398)

at
org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:148)

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:93)

at
org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:49)

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)

java.net.BindException: Address already in
use: bind

at sun.nio.ch.Net.bind(Native Method)

at
sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)

at sun.nio.ch.ServerSocketAdaptor.bind(Unknown
Source)

at
org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:19 8)

at
org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:251)

at
org.mortbay.jetty.nio.SelectChannelConnector.doStart(SelectChannelConnector.java :233)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at
org.mortbay.jetty.Server.doStart(Server.java:221)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at org.jivesoftware.openfire.http.HttpBindManager.start(HttpBindManager.java:93)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.startHTTPBindListeners(Conne ctionManagerImpl.java:415)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.createSocket(ConnectionManag erImpl.java:106)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.start(ConnectionManagerImpl. java:705)

at
org.jivesoftware.openfire.XMPPServer.startModules(XMPPServer.java:528)

at
org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:398)

at
org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:148)

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:93)

at
org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:49)

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)

java.net.BindException: Address already in
use: JVM_Bind

at
java.net.PlainSocketImpl.socketBind(Native Method)

at java.net.PlainSocketImpl.bind(Unknown
Source)

at java.net.ServerSocket.bind(Unknown
Source)

at
java.net.ServerSocket.(Unknown Source)

at java.net.ServerSocket.(Unknown
Source)

at
javax.net.ssl.SSLServerSocket.(Unknown Source)

at
com.sun.net.ssl.internal.ssl.SSLServerSocketImpl.(Unknown Source)

at
com.sun.net.ssl.internal.ssl.SSLServerSocketFactoryImpl.createServerSocket(Unkno wn
Source)

at org.jivesoftware.openfire.net.SSLJiveServerSocketFactory.createServerSocket(SSL JiveServerSocketFactory.java:69)

at
org.mortbay.jetty.security.SslSocketConnector.newServerSocket(SslSocketConnector .java:395)

at
org.mortbay.jetty.bio.SocketConnector.open(SocketConnector.java:72)

at
org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:251)

at
org.mortbay.jetty.bio.SocketConnector.doStart(SocketConnector.java:145)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at org.mortbay.jetty.Server.doStart(Server.java:221)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at
org.jivesoftware.openfire.http.HttpBindManager.start(HttpBindManager.java:93)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.startHTTPBindListeners(Conne ctionManagerImpl.java:415)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.createSocket(ConnectionManag erImpl.java:106)

at
org.jivesoftware.openfire.spi.ConnectionManagerImpl.start(ConnectionManagerImpl. java:705)

at
org.jivesoftware.openfire.XMPPServer.startModules(XMPPServer.java:528)

at
org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:398)

at
org.jivesoftware.openfire.XMPPServer.(XMPPServer.java:148)

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:93)

at
org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:49)

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)

2007.09.18 08:53:12
[org.jivesoftware.openfire.container.AdminConsolePlugin.startup(AdminConsolePlug in.java:143)

] Could not start admin conosle server

org.mortbay.util.MultiException[java.net.BindException:
Address already in use: bind, java.net.BindException: Address already in use:
JVM_Bind]

at
org.mortbay.jetty.Server.doStart(Server.java:179)

at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at
org.jivesoftware.openfire.container.AdminConsolePlugin.startup(AdminConsolePlugi n.java:140)

at
org.jivesoftware.openfire.container.AdminConsolePlugin.initializePlugin(AdminCon solePlugin.java:175)

at org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java :404)

at
org.jivesoftware.openfire.container.PluginManager.access$200(PluginManager.java: 46)

at
org.jivesoftware.openfire.container.PluginManager$PluginMonitor.run(PluginManage r.java:916)

at
java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at
java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source)

at
java.util.concurrent.FutureTask.runAndReset(Unknown Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101( Unknown
Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic (Unknown
Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown
Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
Source)

at
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

java.net.BindException: Address already in
use: bind

at sun.nio.ch.Net.bind(Native Method)

at
sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)

at
sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)

at
org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:19 8)

at
org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:251)

at
org.mortbay.jetty.nio.SelectChannelConnector.doStart(SelectChannelConnector.java :233)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at
org.mortbay.jetty.Server.doStart(Server.java:221)

at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at
org.jivesoftware.openfire.container.AdminConsolePlugin.startup(AdminConsolePlugi n.java:140)

at
org.jivesoftware.openfire.container.AdminConsolePlugin.initializePlugin(AdminCon solePlugin.java:175)

at
org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java: 404)

at
org.jivesoftware.openfire.container.PluginManager.access$200(PluginManager.java: 46)

at
org.jivesoftware.openfire.container.PluginManager$PluginMonitor.run(PluginManage r.java:916)

at
java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at
java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source)

at
java.util.concurrent.FutureTask.runAndReset(Unknown Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101( Unknown
Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic (Unknown
Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown
Source)

at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

java.net.BindException: Address already in
use: JVM_Bind

at
java.net.PlainSocketImpl.socketBind(Native Method)

at java.net.PlainSocketImpl.bind(Unknown
Source)

at java.net.ServerSocket.bind(Unknown
Source)

at
java.net.ServerSocket.(Unknown Source)

at
java.net.ServerSocket.(Unknown Source)

at
javax.net.ssl.SSLServerSocket.(Unknown Source)

at
com.sun.net.ssl.internal.ssl.SSLServerSocketImpl.(Unknown Source)

at
com.sun.net.ssl.internal.ssl.SSLServerSocketFactoryImpl.createServerSocket(Unkno wn
Source)

at org.jivesoftware.openfire.net.SSLJiveServerSocketFactory.createServerSocket(SSL JiveServerSocketFactory.java:69)

at
org.mortbay.jetty.security.SslSocketConnector.newServerSocket(SslSocketConnector .java:395)

at
org.mortbay.jetty.bio.SocketConnector.open(SocketConnector.java:72)

at
org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:251)

at
org.mortbay.jetty.bio.SocketConnector.doStart(SocketConnector.java:145)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at org.mortbay.jetty.Server.doStart(Server.java:221)

at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)

at
org.jivesoftware.openfire.container.AdminConsolePlugin.startup(AdminConsolePlugi n.java:140)

at
org.jivesoftware.openfire.container.AdminConsolePlugin.initializePlugin(AdminCon solePlugin.java:175)

at
org.jivesoftware.openfire.container.PluginManager.loadPlugin(PluginManager.java: 404)

at
org.jivesoftware.openfire.container.PluginManager.access$200(PluginManager.java: 46)

at org.jivesoftware.openfire.container.PluginManager$PluginMonitor.run(PluginManag er.java:916)

at
java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at
java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source)

at
java.util.concurrent.FutureTask.runAndReset(Unknown Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101( Unknown
Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic (Unknown
Source)

at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown
Source)

at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Does the proxy file tranfer failure leads to this phenomena happen?

So does that mean you are starting openfire manually with each server reboot? Is this a new install? The proxy should not affect it like that.

Clear all your server logs, then quit openfire and end the task on the duplicates.

Reboot the server and restart openfire. Does the same thing happen?

You are right,it’s not the result of proxy error,but when second openfired.exe process starts,the proxy port 7777 is used by the first openfired.exe,so the error ‘java.net.BindException: Address already in use: JVM_Bind’ appears. Now the main problem is what leads to the the second openfire.exe and openfired.exe starting?

Is this a new setup? If it is have you tried a uninstall/reinstall?

Does the same thing happen if it is run as a service?

I have tried the uninstall operation, and then reinstall it. You said if it run as servive,do you mean if i have run ‘openfire-service.exe /install’ and ‘openfire-service.exe /start’ command the in console window? No,i haven’t. I’ll try.

By the way, is it possible that because of cache reason, for example:‘Cache: Roster – object with key Amanda is too large to fit in cache’ , that leads to the openfired.exe to start again?

I run openfire as windows service this week, util now, the phenomena I describe above doesn’t happen again. Thanks a lot!