Openfire MUC rooms disappear

Rooms randomly ‘disappear’ and do not show up in the room list however they are present in the MySql room table. I have been having this problem with openfire for quite a few releases now and was hoping upgrading to 3.7.0 would fix the problem - it didn’t. Rooms (after being recreated) started disappearing within 30 minutes.

Using Linux Slackware / Latest Version of Openfire / MySql V5.07 Standard

Here is a ‘dump’ of the MySql mucRoom table

serviceID
roomID
creationDate
modificationDate
name
naturalName
description
lockedDate
emptyDate
canChangeSubject
maxUsers
publicRoom
moderated
membersOnly
canInvite
roomPassword
canDiscoverJID
logEnabled
subject
rolesToBroadcast
useReservedNick
canChangeNick
canRegister
1
26
001287690851735
001287690851743
1000
General
General Chat
000000000000000
001301414483631
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
27
001287691022111
001287691286511
2000
Womyn’s Chat
Womyn’s Chat
000000000000000
001287948786928
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
28
001287691052931
001287691271709
2001
Men’s Chat
Men’s Chat
000000000000000
001288058438697
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
30
001287691828190
001287691828195
ab
Alberta
Alberta General Chat
000000000000000
001301414498457
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
31
001287691890898
001287691890903
ns
Nova Scotia
Nova Scotia General Chat
000000000000000
001287691890898
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
32
001287691921887
001287691921893
bc
British Columbia
British Columbia General Chat
000000000000000
NULL
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
33
001287691957900
001287691957905
nb
New Brunswick
New Brunswick General Chat
000000000000000
001287691957900
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
34
001287691988005
001287691988010
on
Ontario
Ontario General Chat
000000000000000
001300060580284
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
35
001287692008534
001287692008539
mb
Manitoba
Manitoba General Chat
000000000000000
001288378259643
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
36
001287692043752
001287692043757
qc
Quebec
Quebec General Chat
000000000000000
001287692043752
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
37
001287692076694
001287692076699
sk
Saskatchewan
Saskatchewan General Chat
000000000000000
001287692076694
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
38
001287692127371
001292482280053
nl
Newfoundland
Newfoundland and Labrador General Chat
000000000000000
001301415652121
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
39
001287692156602
001287692156607
pe
PEI
PEI General Chat
000000000000000
001287692156602
0
30
1
0
0
0
NULL
0
0
kevin
7
0
0
1
1
40
001292482169270
001292482169275
nu
Nunavut
Nunavut
000000000000000
001292482169270
0
30
1
0
0
0
NULL
0
0
kevin
7
0
1
1
1
41
001292482201220
001292482201224
nt
Northwest Territories
Northwest Territories
000000000000000
001299103527831
0
30
1
0
0
0
NULL
0
0
kevin
7
0
1
1
1
42
001292482239801
001292482239805
yk
Yukon
Yukon
000000000000000
001292482239801
0
30
1
0
0
0
NULL
0
0
kevin
7
0
1
1

Currently only 6 rooms appear in the admin panel - General (1000), Alberta (ab), British Columbia (bc), Newfoundland (nl), Northwest territories (nt) and Ontario (on).

All other rooms are not listed.

Could this be a memory caching problem ? Even rebooting the machine does not make the rooms appear. :frowning:

Any ideas guys ?

Kevin

1 Like

We are seeing a similar issue. The Muc rooms do not match what is in the data base.

Sometimes there are rooms listed that are not in the database at all.

Under group chat services we have 4 domains. Randomly a room from one domain will also appears in another. Deleting the bogus room also removes it’s counter part.

Does anyone know if there are any memory configuration options that can be tweaked to help?

Turns out there’s a configuration setting - rooms disappear after not being used for 30 days. Add the following setting to your configuration :

xmpp.muc.unload.empty_days 9999

1 Like

I noticed that I had to manually add a line to the OFMUCPROP table where I set ‘unload.empty_days’ to some number, rather than do it globally via Openfire system properties.

Is there a mechanism to edit OFMUCPROP via the admin console, or set the empty days value for a MUC service without going into the database?

Have you tried to restart your server after setting system property?

Yep, restarting Openfire doesn’t help.

The MUC Service code does this:

value = MUCPersistenceManager.getProperty(chatServiceName, “unload.empty_days”)

so I would assume the system property is depricated in favor of the MUC Service property (table name is OFMUCSERVICEPROP, not OFMUCPROP).

Still have to cycle after setting the MUC Service property though.