mumble-voip / mumble

Mumble is an open-source, low-latency, high quality voice chat software.
https://www.mumble.info
Other
6.37k stars 1.12k forks source link

User unable to move to another room #3724

Closed StrvnMrvn closed 4 years ago

StrvnMrvn commented 5 years ago

Server info: 1.3.0-rc2-1\~ppa1~bionic (X11) Ubuntu 18.04.2 LTS hosted on a single core VLTR instance

Client Info: 1.3.0-rc2 Windows 7/10

Steps to reproduce: Unable to methodically reproduce the behavior

Full Description: Twice now I've encountered the inability to switch from one room to another on my Windows 7 client. I just had another user on Windows 10 (also 1.3.0-rc2) report the same behavior. In both cases, we were able to restore normal usage by exiting and restarting the client.

davidebeatrici commented 5 years ago

Do other actions (e.g. mute) still work when you're unable to switch room?

StrvnMrvn commented 5 years ago

It's possible that is the case as the mute function was not responding the other day. I could hear the 'dink' when I tried to toggle mute but the microphone icon would not change. I tried to mute via context menu as well. Same thing, 'dink' but no actual change. Exit and restart resolved this. I will have to check both behaviors the next time either condition reoccurs.

StrvnMrvn commented 5 years ago

Can now confirm that "unable to change room" and "cannot toggle mute" coincide.

davidebeatrici commented 5 years ago

Do the actions become available again after some time?

StrvnMrvn commented 5 years ago

I've only just noticed the condition ten minutes ago after being a room with three other users for a few hours. I'll leave it as is overnight and check in the morning. Unfortunately, the other users had already left so was unable to check if they had the same problem.

I have yet to experience the exact behavior referenced in #3662.

davidebeatrici commented 5 years ago

No problem. If you didn't change the setting in the server's configuration, the actions are supposed to become available again after a few seconds.

StrvnMrvn commented 5 years ago

It's been about fifteen minutes, mute toggle is still stuck in the unmuted state, still cannot change rooms.

If you didn't change the setting in the server's configuration, the actions are supposed to become available again after a few seconds.

Do you mean messageburst and messagelimit options as mentioned in #3662? Those have not been changed. The first time I noticed this behavior was about 2 weeks ago. Hadn't seen it in RC1.

davidebeatrici commented 5 years ago

Correct, those are the options that control the flood limit system.

If after 15 minutes the actions are still stuck, there's probably another bug (the first one was fixed in #3695).

Could you inspect the value of the variables in LeakyBucket::rateLimit(), please?

https://github.com/mumble-voip/mumble/blob/467cbd9b97300c457d7c071b1a61db4bc06a6703/src/murmur/ServerUser.cpp#L128-L154

StrvnMrvn commented 5 years ago

How would I go about doing that? I must confess, I am not a developer. The last coding I did was some Basic, Fortran and some 6502 assembly back in the 80's :) I'll check back on this issue in the morning. It's 0100 my local time and needing some sleep.

Rantanen commented 4 years ago

Happened a moment ago for me.

<W>2019-10-28 02:09:54.509 Limited @ ratelimit (ms: -75860158, drainTokens: -75860, tokens: 1, currentTokens: 5, tokensPerSec: 1, maxTokens: 5, lastUpdate: 23:14:14.667)

Looking at the code more closely:

QTime doesn't track date so after midnight "the time moves back" and the code won't drain tokens anymore. After this, the user is limited to maxTokens messages - once those are up, the user is permanently rate limited.

This means the issue may become apparent hours after the bug triggered, if the user has sent less than 5 (by default) messages.

Changing the QTime to QDateTime should fix this.