FIXED: Jicofo Healt Check Error

Hello community,

We upgraded to the latest version of jicofo but now we are having problems with the health checks for jicofo.

This is the error we have:

Jicofo 2020-08-27 14:36:19.989 SEVERE: [41] org.jitsi.jicofo.health.Health.log() Health check failed in PT0.002S:                                                   │
│ net.java.sip.communicator.service.protocol.OperationFailedException: Failed to join the room                                                                        │
│     at org.jitsi.impl.protocol.xmpp.ChatRoomImpl.joinAs(ChatRoomImpl.java:298)                                                                                      │
│     at org.jitsi.impl.protocol.xmpp.ChatRoomImpl.join(ChatRoomImpl.java:209)                                                                                        │
│     at org.jitsi.jicofo.JitsiMeetConferenceImpl.joinTheRoom(JitsiMeetConferenceImpl.java:581)                                                                       │
│     at org.jitsi.jicofo.JitsiMeetConferenceImpl.start(JitsiMeetConferenceImpl.java:404)                                                                             │
│     at org.jitsi.jicofo.FocusManager.conferenceRequest(FocusManager.java:477)                                                                                       │
│     at org.jitsi.jicofo.health.Health.check(Health.java:200)                                                                                                        │
│     at org.jitsi.jicofo.health.Health.performCheck(Health.java:133)                                                                                                 │
│     at org.jitsi.health.AbstractHealthCheckService.run(AbstractHealthCheckService.kt:155)                                                                           │
│     at org.jitsi.utils.concurrent.RecurringRunnableExecutor.run(RecurringRunnableExecutor.java:216)                                                                 │
│     at org.jitsi.utils.concurrent.RecurringRunnableExecutor.runInThread(RecurringRunnableExecutor.java:292)                                                         │
│     at org.jitsi.utils.concurrent.RecurringRunnableExecutor.access$000(RecurringRunnableExecutor.java:36)                                                           │
│     at org.jitsi.utils.concurrent.RecurringRunnableExecutor$1.run(RecurringRunnableExecutor.java:328)                                                               │
│ Caused by: org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPP error reply received from conference.my-domain.org: XMPPError: service-unav │
│     at org.jivesoftware.smack.XMPPException$XMPPErrorException.ifHasErrorThenThrow(XMPPException.java:132)                                                          │
│     at org.jivesoftware.smack.StanzaCollector.nextResultOrThrow(StanzaCollector.java:263)                                                                           │
│     at org.jivesoftware.smack.StanzaCollector.nextResultOrThrow(StanzaCollector.java:214)                                                                           │
│     at org.jivesoftware.smackx.disco.ServiceDiscoveryManager.discoverInfo(ServiceDiscoveryManager.java:540)                                                         │
│     at org.jivesoftware.smackx.disco.ServiceDiscoveryManager.discoverInfo(ServiceDiscoveryManager.java:506)                                                         │
│     at org.jivesoftware.smackx.disco.ServiceDiscoveryManager.supportsFeatures(ServiceDiscoveryManager.java:748)                                                     │
│     at org.jivesoftware.smackx.disco.ServiceDiscoveryManager.supportsFeatures(ServiceDiscoveryManager.java:744)                                                     │
│     at org.jivesoftware.smackx.disco.ServiceDiscoveryManager.supportsFeature(ServiceDiscoveryManager.java:740)                                                      │
│     at org.jivesoftware.smackx.muc.MultiUserChatManager.providesMucService(MultiUserChatManager.java:361)                                                           │
│     at org.jivesoftware.smackx.muc.MultiUserChat.enter(MultiUserChat.java:311)                                                                                      │
│     at org.jivesoftware.smackx.muc.MultiUserChat.createOrJoin(MultiUserChat.java:498)                                                                               │
│     at org.jivesoftware.smackx.muc.MultiUserChat.createOrJoin(MultiUserChat.java:444)                                                                               │
│     at org.jitsi.impl.protocol.xmpp.ChatRoomImpl.joinAs(ChatRoomImpl.java:240)                                                                                      │
│     ... 11 more                                                                  

Did anything changed from version 1.0-589 and version 1.0-612? By looking the issues in the changelog does not seem to be anything obvious (that we could see).

We are using jitsi-meet-prosody/stable 1.0.4289-1 and this is our configuration:

admins = {
    "focus@auth.my-domain.org",
    "jvb@auth.my-domain.org"
}

plugin_paths = { "/prosody-plugins/", "/prosody-plugins-custom" }
http_default_host = "my-domain.org"

turncredentials_secret = "ThisIsNotAPassword";
turncredentials = {
    { type = "turn", host = "turn.my-domain.org", port = 443},
    { type = "turns", host = "turn.my-domain.org", port = 443, transport = "tcp" }
}

VirtualHost "my-domain.org"
    authentication = "anonymous"
    ssl = {
        key = "/config/certs/my-domain.org.key";
        certificate = "/config/certs/my-domain.org.crt";
    }
    modules_enabled = {
        "bosh";
        "pubsub";
        "ping";
        "speakerstats";
        "conference_duration";
        "turncredentials";
    }

    speakerstats_component = "speakerstats.my-domain.org"
    conference_duration_component = "conferenceduration.my-domain.org"

    c2s_require_encryption = false

VirtualHost "auth.my-domain.org"
    ssl = {
        key = "/config/certs/auth.my-domain.org.key";
        certificate = "/config/certs/auth.my-domain.org.crt";
    }
    authentication = "internal_hashed"

VirtualHost "recorder.my-domain.org"
    modules_enabled = {
      "ping";
    }
    authentication = "internal_hashed"


Component "internal-muc.my-domain.org" "muc"
    storage = "memory"
    modules_enabled = {
        "ping";

    }
    muc_room_locking = false
    muc_room_default_public_jids = true

Component "muc.my-domain.org" "muc"
    storage = "memory"
    modules_enabled = {
        "muc_meeting_id";
    }
    muc_room_cache_size = 1000
    muc_room_locking = false
    muc_room_default_public_jids = true

Component "focus.my-domain.org"
    component_secret = "ThisIsNotASecret"

Component "speakerstats.my-domain.org" "speakerstats_component"
    muc_component = "muc.my-domain.org"

Component "conferenceduration.my-domain.org" "conference_duration_component"
    muc_component = "muc.my-domain.org"

Thank you for your help!

Searching another error came up with this github issue: https://github.com/jitsi/docker-jitsi-meet/issues/691 and that solution at the end fixed our problems.