• One fix is client destruction happening on the correct thread (when
    kicking another one off with existing client ID). This caused deadlocks
    on the subscriptions lock during a race condition when
    doKeepAliveCheck() also ran.
    
    A related deadlock was that the queued functions were executed while
    holding the lock taskQueueMutex. Together with the subscriptions lock,
    that was executed in the $SYS topic function, this also caused
    deadlocks.
    Wiebe Cazemier authored
     
    Browse File »