Jump to content
Mumble forums

Mumble servers crash for a SQL error : Duplicate entry


Puma
 Share

Recommended Posts

Hi,


I'm hosting several hundred of Mumble servers with SQL database.


Sometimes, i get this error message from mumble logs and all mumble servers are crashed, i must restart the Mumble server service.


Can you help me to understand this SQL error please ? I suppose that one user is editing his server and enter an incorrect parameter...

 

SQL Error [iNSERT INTO `murmur_groups` (`server_id`, `channel_id`, `name`, `inherit`, `inheritable`) VALUES (?,?,?,?,?)]: Duplicate entry '3566-1-admin' for key 'murmur_groups_name_channels' QMYSQL3: Unable to execute statement

 

Have i a way to fix that ? Is it a bug ?


Thanks for your help.

Link to comment
Share on other sites

  • Administrators

I presume the murmur_ table prefix is something that is done for/on MySQL? In sqlite there is a groups table and the column names match.


I presume the issue here is that on that server 3566 in channel 1 a group with name admin is trying to be created.


I do not know where this is coming from. What kind of client, or maybe other tooling and interfaces you make use of?


The SQL error is logged by the server?


Can you elaborate on what happens? What does 'servers crash' mean here?


Given that the error is logged by the server it seems to have received this request and tries to save this group that already exists. Looking at just the user UI the Mumble 1.3.0 client seems to correctly handle existing groups. It could also be trying to add groups via Ice/scripting/webinterface, or other clients.

Link to comment
Share on other sites

Hi,


Thanks for your answer !



 

I presume the murmur_ table prefix is something that is done for/on MySQL?

Indeed, murmur_ is a prefix for tables in MySQL. All parameters of customer clients are stored in this MySQL databse (port, welcometext, SuperUser password, channels...), created by murmur on the first launch of the binary on Linux because i set MySQL configuration instead sqlite parameter.




 

In sqlite there is a groups table and the column names match.

I have the table "murmur_groups" with these columns and this primary key.

Columns :

murmur_groups

channel_id

group_id

inherit

inheritable

name

server_id



Index PRIMARY :

murmur_groups_name_channels

 



 

I do not know where this is coming from. What kind of client, or maybe other tooling and interfaces you make use of?

The user can administrate his Mumble server directly in the Mumble software because he has a SuperUser account and in addition we have a web interface to register members by specifying a username and a password, which is equivalent to the function "register" in the Mumble client.

The web interface is MyMumb-Panel (https://github.com/dieonar/MyMumb-Panel).

For me, the user that caused the error was editing from Mumble clients.

I checked the actions of the webinterface with murmur_groups table and the only action is to remove the entry when the server is deleted: "Database::delete("murmur_groups", "server_id='".$id."'");"




 

The SQL error is logged by the server?

No, i checked events from phpMyAdmin and Log files, there is no log about this error..




 

Can you elaborate on what happens? What does 'servers crash' mean here?

With this error, all users connected to all Mumble servers (600 servers) are disconnected. The "mumble-server" service is stopped and i have to start the service.



I'm copying the MySQL database and Mumble configuration to another server to try to reproduce the issue and to understand how does the problem happens.


If necessary, i can partially dump the MySQL database and give the murmur binary (latest version 1.3) with one or two servers if someone wants to test.

Link to comment
Share on other sites

In the Mumble server log, it displays the SQL error.


Example :

20:36 : error and servers crashed. nothing special before this line about this event.

20:39 : i start the Mumble service.

 

2019-09-14 20:36:36.611 SQL Error [iNSERT INTO `murmur_groups` (`server_id`, `channel_id`, `name`, `inherit`, `inheritable`) VALUES (?,?,?,?,?)]: Duplicate entry '3566-1-admin' for key 'murmur_groups_name_channels' QMYSQL3: Unable to execute statement

2019-09-14 20:39:40.620 SSL: OpenSSL version is 'OpenSSL 1.0.2k 26 Jan 2017'

2019-09-14 20:39:40.621 Initializing settings from /etc/mumble-server.ini (basepath /etc)

2019-09-14 20:39:40.712 MetaParams: Adding 1 intermediate certificates from certificate file.

2019-09-14 20:39:40.793 MetaParams: TLS cipher preference is "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:AES256-SHA:AES128-SHA"

2019-09-14 20:39:41.227 DBus registration succeeded

2019-09-14 20:39:41.231 MurmurIce: Endpoint "tcp -h 127.0.0.1 -p 6502" running

2019-09-14 20:39:41.430 Murmur 1.3.0 (1.3.0-rc2) running on X11: Debian GNU/Linux 8.11 (jessie): Booting servers

...

 


For information, i got this SQL error for some months with different murmur versions, i think this is the 5th or 6th time.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...