Openfire startup very slowly, ten minutes, how to resolve this?

i install it on arrch64 linux,i startup openfire very slowly,it is ten miniutes. the client always offline.

i use jstack pid

2022-01-16 10:18:59
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.121-b13 compiled mode):

"Attach Listener" #16 daemon prio=9 os_prio=0 tid=0x0000fffb60001000 nid=0x175ebe waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Prototyper" #15 daemon prio=5 os_prio=0 tid=0x0000fffb44005000 nid=0x175e85 in Object.wait() [0x0000fffb80e8e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Object.java:502)
	at org.logicalcobwebs.proxool.PrototyperThread.doWait(PrototyperThread.java:69)
	- locked <0x00000006c2011a70> (a org.logicalcobwebs.proxool.PrototyperThread)
	at org.logicalcobwebs.proxool.PrototyperThread.run(PrototyperThread.java:58)

"HouseKeeper" #14 daemon prio=5 os_prio=0 tid=0x0000fffc48b01800 nid=0x175e84 waiting on condition [0x0000fffb80f8e000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.logicalcobwebs.proxool.HouseKeeperThread.run(HouseKeeperThread.java:46)

"TaskEngine-pool-2" #12 daemon prio=5 os_prio=0 tid=0x0000fffb48003000 nid=0x175e83 waiting on condition [0x0000fffb8108e000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000006c2020330> (a java.util.concurrent.SynchronousQueue$TransferStack)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
	at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
	at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

"Abandoned connection cleanup thread" #11 daemon prio=5 os_prio=0 tid=0x0000fffc48ac7000 nid=0x175e82 in Object.wait() [0x0000fffb8118e000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
	- locked <0x00000006c2019cc8> (a java.lang.ref.ReferenceQueue$Lock)
	at com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:41)

"TaskEngine-timer" #8 daemon prio=5 os_prio=0 tid=0x0000fffc489fb800 nid=0x175e81 in Object.wait() [0x0000fffb8148e000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.util.TimerThread.mainLoop(Timer.java:552)
	- locked <0x00000006c2011e48> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"Service Thread" #7 daemon prio=9 os_prio=0 tid=0x0000fffc486c1000 nid=0x175e2f runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x0000fffc486b1800 nid=0x175e2e waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #5 daemon prio=9 os_prio=0 tid=0x0000fffc486af000 nid=0x175e2d waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" #4 daemon prio=9 os_prio=0 tid=0x0000fffc486ad800 nid=0x175e2c runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x0000fffc4867a800 nid=0x175e2b in Object.wait() [0x0000fffb83e5e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
	- locked <0x00000006c201a4c8> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x0000fffc48676000 nid=0x175e2a in Object.wait() [0x0000fffb83f5e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Object.java:502)
	at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
	- locked <0x00000006c2011c70> (a java.lang.ref.Reference$Lock)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

"main" #1 prio=5 os_prio=0 tid=0x0000fffc48009000 nid=0x175df9 runnable [0x0000fffc4d60d000]
   java.lang.Thread.State: RUNNABLE
	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
	at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:928)
	at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1323)
	at java.net.InetAddress.getLocalHost(InetAddress.java:1500)
	- locked <0x00000006c207a2c0> (a java.lang.Object)
	at org.jivesoftware.openfire.spi.XMPPServerInfoImpl.getHostname(XMPPServerInfoImpl.java:68)
	at org.jivesoftware.openfire.spi.XMPPServerInfoImpl.getXMPPDomain(XMPPServerInfoImpl.java:93)
	at org.jivesoftware.openfire.SessionManager.initialize(SessionManager.java:1364)
	at org.jivesoftware.openfire.XMPPServer.initModules(XMPPServer.java:539)
	at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:428)
	at org.jivesoftware.openfire.XMPPServer.<init>(XMPPServer.java:163)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:105)
	at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:56)

"VM Thread" os_prio=0 tid=0x0000fffc4866e800 nid=0x175e29 runnable 

"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x0000fffc4801f000 nid=0x175dfe runnable 

"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x0000fffc48021000 nid=0x175dff runnable 

"GC task thread#2 (ParallelGC)" os_prio=0 tid=0x0000fffc48022800 nid=0x175e00 runnable 

"GC task thread#3 (ParallelGC)" os_prio=0 tid=0x0000fffc48024800 nid=0x175e01 runnable 

"GC task thread#4 (ParallelGC)" os_prio=0 tid=0x0000fffc48026000 nid=0x175e02 runnable 

"GC task thread#5 (ParallelGC)" os_prio=0 tid=0x0000fffc48028000 nid=0x175e03 runnable 

"GC task thread#6 (ParallelGC)" os_prio=0 tid=0x0000fffc4802a000 nid=0x175e04 runnable 

"GC task thread#7 (ParallelGC)" os_prio=0 tid=0x0000fffc4802b800 nid=0x175e05 runnable 

"GC task thread#8 (ParallelGC)" os_prio=0 tid=0x0000fffc4802d800 nid=0x175e06 runnable 

"GC task thread#9 (ParallelGC)" os_prio=0 tid=0x0000fffc4802f000 nid=0x175e07 runnable 

"GC task thread#10 (ParallelGC)" os_prio=0 tid=0x0000fffc48031000 nid=0x175e08 runnable 

"GC task thread#11 (ParallelGC)" os_prio=0 tid=0x0000fffc48032800 nid=0x175e09 runnable 

"GC task thread#12 (ParallelGC)" os_prio=0 tid=0x0000fffc48034800 nid=0x175e0a runnable 

"GC task thread#13 (ParallelGC)" os_prio=0 tid=0x0000fffc48036000 nid=0x175e0b runnable 

"GC task thread#14 (ParallelGC)" os_prio=0 tid=0x0000fffc48038000 nid=0x175e0c runnable 

"GC task thread#15 (ParallelGC)" os_prio=0 tid=0x0000fffc48039800 nid=0x175e0d runnable 

"GC task thread#16 (ParallelGC)" os_prio=0 tid=0x0000fffc4803b800 nid=0x175e0e runnable 

"GC task thread#17 (ParallelGC)" os_prio=0 tid=0x0000fffc4803d000 nid=0x175e0f runnable 

"GC task thread#18 (ParallelGC)" os_prio=0 tid=0x0000fffc4803f000 nid=0x175e10 runnable 

"GC task thread#19 (ParallelGC)" os_prio=0 tid=0x0000fffc48040800 nid=0x175e11 runnable 

"GC task thread#20 (ParallelGC)" os_prio=0 tid=0x0000fffc48042800 nid=0x175e12 runnable 

"GC task thread#21 (ParallelGC)" os_prio=0 tid=0x0000fffc48044800 nid=0x175e13 runnable 

"GC task thread#22 (ParallelGC)" os_prio=0 tid=0x0000fffc48046000 nid=0x175e14 runnable 

"GC task thread#23 (ParallelGC)" os_prio=0 tid=0x0000fffc48048000 nid=0x175e15 runnable 

"GC task thread#24 (ParallelGC)" os_prio=0 tid=0x0000fffc48049800 nid=0x175e16 runnable 

"GC task thread#25 (ParallelGC)" os_prio=0 tid=0x0000fffc4804b800 nid=0x175e17 runnable 

"GC task thread#26 (ParallelGC)" os_prio=0 tid=0x0000fffc4804d000 nid=0x175e18 runnable 

"GC task thread#27 (ParallelGC)" os_prio=0 tid=0x0000fffc4804f000 nid=0x175e19 runnable 

"GC task thread#28 (ParallelGC)" os_prio=0 tid=0x0000fffc48050800 nid=0x175e1a runnable 

"GC task thread#29 (ParallelGC)" os_prio=0 tid=0x0000fffc48052800 nid=0x175e1b runnable 

"GC task thread#30 (ParallelGC)" os_prio=0 tid=0x0000fffc48054000 nid=0x175e1c runnable 

"GC task thread#31 (ParallelGC)" os_prio=0 tid=0x0000fffc48056000 nid=0x175e1d runnable 

"GC task thread#32 (ParallelGC)" os_prio=0 tid=0x0000fffc48057800 nid=0x175e1e runnable 

"GC task thread#33 (ParallelGC)" os_prio=0 tid=0x0000fffc48059800 nid=0x175e1f runnable 

"GC task thread#34 (ParallelGC)" os_prio=0 tid=0x0000fffc4805b000 nid=0x175e20 runnable 

"GC task thread#35 (ParallelGC)" os_prio=0 tid=0x0000fffc4805d000 nid=0x175e21 runnable 

"GC task thread#36 (ParallelGC)" os_prio=0 tid=0x0000fffc4805e800 nid=0x175e22 runnable 

"GC task thread#37 (ParallelGC)" os_prio=0 tid=0x0000fffc48060800 nid=0x175e23 runnable 

"GC task thread#38 (ParallelGC)" os_prio=0 tid=0x0000fffc48062800 nid=0x175e24 runnable 

"GC task thread#39 (ParallelGC)" os_prio=0 tid=0x0000fffc48064000 nid=0x175e25 runnable 

"GC task thread#40 (ParallelGC)" os_prio=0 tid=0x0000fffc48066000 nid=0x175e26 runnable 

"GC task thread#41 (ParallelGC)" os_prio=0 tid=0x0000fffc48067800 nid=0x175e27 runnable 

"GC task thread#42 (ParallelGC)" os_prio=0 tid=0x0000fffc48069800 nid=0x175e28 runnable 

"VM Periodic Task Thread" os_prio=0 tid=0x0000fffc486c3800 nid=0x175e30 waiting on condition 

JNI global references: 40

Normally, Openfire should start up (very) fast. It is typically very slow only when something in the network is very slow (for example, the connection to an external database or directory service), when it is very heavily used (without proper configuration having been applied), or when custom plugins have added that introduce bugs.

The stack trace that you provided sadly does not show anything wrong. Was it taken during that initial 10 minutes? If that’s not the case, then please create a new thread dump when Openfire is starting up.

directory service? i don’t use this on my app.

I developed the openfire plugin myself,but the plugin starts quickly, but openfire service starts slowly.

the startup time is from 08:45 to 08: 58, with an interval of 13 minutes;

Here is mine openfire startup log.

2022.01.14 08:45:18 INFO  [main]: org.jivesoftware.openfire.XMPPServer - Registering shutdown hook (standalone mode)
2022.01.14 08:45:18 INFO  [main]: org.logicalcobwebs.proxool.ProxoolFacade - Proxool 0.9.0RC3+ (February 6 2008)
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing Servers Cache
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing Components Cache
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing Users Cache
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing AnonymousUsers Cache
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Routing User Sessions
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Roster
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Multicast Service
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Offline Message Size
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for VCard
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Privacy Lists
2022.01.14 08:45:19 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for File Transfer Cache
2022.01.14 08:45:41 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Offline Presence Cache
2022.01.14 08:45:41 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Last Activity Cache
2022.01.14 08:45:41 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for User
2022.01.14 08:45:41 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Remote Users Existence
2022.01.14 08:45:41 ERROR [main]: org.jivesoftware.openfire.user.UserManager - Error loading user provider: com.superred.openfire.provider.SuperredUserProvider
java.lang.ClassNotFoundException: com.superred.openfire.provider.SuperredUserProvider
	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
	at org.jivesoftware.util.ClassUtils.loadClass(ClassUtils.java:76)
	at org.jivesoftware.util.ClassUtils.forName(ClassUtils.java:48)
	at org.jivesoftware.openfire.user.UserManager.initProvider(UserManager.java:490)
	at org.jivesoftware.openfire.user.UserManager.<init>(UserManager.java:97)
	at org.jivesoftware.openfire.user.UserManager.<init>(UserManager.java:55)
	at org.jivesoftware.openfire.user.UserManager$UserManagerContainer.<clinit>(UserManager.java:61)
	at org.jivesoftware.openfire.user.UserManager.getInstance(UserManager.java:82)
	at org.jivesoftware.openfire.XMPPServer.getUserManager(XMPPServer.java:1173)
	at org.jivesoftware.openfire.spi.PresenceManagerImpl.initialize(PresenceManagerImpl.java:530)
	at org.jivesoftware.openfire.XMPPServer.initModules(XMPPServer.java:539)
	at org.jivesoftware.openfire.XMPPServer.start(XMPPServer.java:428)
	at org.jivesoftware.openfire.XMPPServer.<init>(XMPPServer.java:163)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:105)
	at org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:56)
2022.01.14 08:46:11 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Components Sessions
2022.01.14 08:46:11 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Connection Managers Sessions
2022.01.14 08:46:11 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Incoming Server Sessions
2022.01.14 08:46:11 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Sessions by Hostname
2022.01.14 08:46:11 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Validated Domains
2022.01.14 08:46:11 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Client Session Info Cache
2022.01.14 08:47:34 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Entity Capabilities
2022.01.14 08:47:34 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Entity Capabilities Users
2022.01.14 08:48:57 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Directed Presences
2022.01.14 08:48:57 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created local-only cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for PEPServiceManager
2022.01.14 08:49:57 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for File Transfer
2022.01.14 08:50:32 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Published Items
2022.01.14 08:50:32 INFO  [main]: org.logicalcobwebs.proxool.openfire - Proxool statistics legend: "s - r  (a/t/o)" > s=served, r=refused (only shown if non-zero), a=active, t=total, o=offline (being tested)
2022.01.14 08:50:32 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Disco Server Features
2022.01.14 08:51:02 INFO  [main]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Disco Server Items
2022.01.14 08:54:23 INFO  [main]: org.jivesoftware.openfire.pubsub.PubSubModule - 发布-订阅域:pubsub.143.104.133.221
2022.01.14 08:57:34 INFO  [main]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - 多用户聊天域:conference.143.104.133.221
2022.01.14 08:57:34 INFO  [main]: org.jivesoftware.openfire.XMPPServer - Openfire 4.1.3 [2022-1-14 8:57:34]
2022.01.14 08:57:57 INFO  [pool-3-thread-1]: org.jivesoftware.openfire.spi.EncryptionArtifactFactory - Creating new SslContextFactory instance
2022.01.14 08:57:57 INFO  [pool-3-thread-1]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Favicon Misses
2022.01.14 08:57:57 INFO  [pool-3-thread-1]: org.jivesoftware.util.cache.CacheFactory - Created cache [org.jivesoftware.util.cache.DefaultLocalCacheStrategy] for Favicon Hits
2022.01.14 08:58:19 INFO  [pool-3-thread-1]: org.jivesoftware.openfire.container.AdminConsolePlugin - 管理平台开始监听:
  http://:9092
  https://:9091
2022.01.14 08:58:19 INFO  [pool-3-thread-1]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'admin'.
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: com.superred.openfire.plugin.SuperredAuditPlugin - SuperredAuditPlugin initialize.
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: com.superred.AuditGlobal - Global memory init...
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.impl.StdSchedulerFactory - Using default implementation for ThreadExecutor
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.simpl.SimpleThreadPool - Job execution threads will use class loader of thread: pool-4-thread-2
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.core.SchedulerSignalerImpl - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.core.QuartzScheduler - Quartz Scheduler v.2.3.0-SNAPSHOT created.
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.simpl.RAMJobStore - RAMJobStore initialized.
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.core.QuartzScheduler - Scheduler meta-data: Quartz Scheduler (v2.3.0-SNAPSHOT) 'DefaultQuartzScheduler' with instanceId 'NON_CLUSTERED'
  Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
  NOT STARTED.
  Currently in standby mode.
  Number of jobs executed: 0
  Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
  Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.

2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.impl.StdSchedulerFactory - Quartz scheduler 'DefaultQuartzScheduler' initialized from default resource file in Quartz package: 'quartz.properties'
2022.01.14 08:58:19 INFO  [pool-4-thread-2]: org.quartz.impl.StdSchedulerFactory - Quartz scheduler version: 2.3.0-SNAPSHOT
2022.01.14 08:58:20 INFO  [Thread-22]: com.superred.thread.LuceneWhiteAndBlackExportThread - LuceneWhiteAndBlackExportThread start
2022.01.14 08:58:20 INFO  [pool-4-thread-2]: org.quartz.core.QuartzScheduler - Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started.
2022.01.14 08:58:20 INFO  [pool-4-thread-2]: org.jivesoftware.openfire.container.PluginManager - Successfully loaded plugin 'superredauditholder'.
2022.01.14 08:58:20 INFO  [Thread-22]: com.superred.thread.LuceneWhiteAndBlackExportThread - LuceneWhiteAndBlackExportThread end
2022.01.14 08:58:20 INFO  [pool-3-thread-1]: org.jivesoftware.openfire.container.PluginMonitor - Finished processing all plugins.

Curious. Please create a thread dump while the server is starting up. That might tell us what the server is waiting for, if anything.

One major red flag is this error:

2022.01.14 08:45:41 ERROR [main]: org.jivesoftware.openfire.user.UserManager - Error loading user provider: com.superred.openfire.provider.SuperredUserProvider

Apparently, you’ve configured your server to use a proprietary User Provider (that cannot be found). I can only guess what kind of other configuration changes are made.

My advise would be to undo all of those changes, and see if the server startup reverts back to normal again.

My tests in other Linux environments are normal. I think the whole mistake should have little impact.
I try to create thread dump while the server is starting up. The database is local.

This is the lastes log information.

This doesn’t really show any very useful information that can be used to diagnose the problem.

Are the blocked thread affect ?

No. Those are socket acceptors, blocking until a new socket is being created.


i create thread dump on the image.

Does the red part in the figure above have any accfect ?
Now my client are always offline after being online. I cann’t find the reason.
Is the heartbeat packet time interval of the client’s online status configured on the server or the client?

Thanks! I resolved this problem.

Good to hear! Can you let us know what the problem was, and how it was resolved? This might help people that read this in the future!

I found that it was caused by the problem of address setting.