PDA

View Full Version : MySQL: GetChannelAttribs Exception


sonnyka
20-10-2005, 01:30
I run a linux based TS server (Version: 2.0.20.1) on a debian testing system with MySQL (Ver 14.7 Distrib 4.1.14, for pc-linux-gnu (i486) using readline 5.0).

Latelay I see the following error in my TS server.log, if a user/client changes from or to a channel where he has CA rights (not 100% if it is only with CA users, but I think so; definitively it's not limied to SA)

--- snip ---
20-10-05 01:12:56,ERROR,All,CHANNEL, SID: 1 GetChannelAttribs Exception: EDatabaseError.dbExpress Error: Operation Not Supported
20-10-05 01:12:56,ERROR,All,CHANNEL, SID: 1 GetChannelAttribs Exception: EDatabaseError.dbExpress Error: Operation Not Supported
--- snap ---

MySQL logs shows (actually twice, same for each error msg in TS log):
--- snip ---
22 Connect teamspeak@localhost on teamspeak
22 Query select count(*) from ts2_channel_privileges
23 Connect teamspeak@localhost on teamspeak
23 Query SHOW INDEX FROM ts2_channel_privileges
5 Query select * from ts2_channel_privileges
where i_cp_server_id = 1
and i_cp_channel_id = 2
and i_cp_client_id = 3
23 Quit
--- snap ---

Here the results, if I do the querys manually under the same user:
--- snip ---
mysql> select count(*) from ts2_channel_privileges;
+----------+
| count(*) |
+----------+
| 70 |
+----------+

mysql> SHOW INDEX FROM ts2_channel_privileges;
+------------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+------------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| ts2_channel_privileges | 0 | PRIMARY | 1 | i_cp_id | A | 70 | NULL | NULL | | BTREE | |
+------------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+

mysql> select * from ts2_channel_privileges
-> where i_cp_server_id = 1
-> and i_cp_channel_id = 2
-> and i_cp_client_id = 3;
+---------+----------------+-----------------+----------------+-----------------+------------------+---------------------+
| i_cp_id | i_cp_server_id | i_cp_channel_id | i_cp_client_id | b_cp_flag_admin | b_cp_flag_autoop | b_cp_flag_autovoice |
+---------+----------------+-----------------+----------------+-----------------+------------------+---------------------+
| 1 | 1 | 2 | 3 | -1 | 0 | 0 |
+---------+----------------+-----------------+----------------+-----------------+------------------+---------------------+

--- snap ---



Sniplet from the server.ini:
--- snip ---
[DBEXPRESS]
sqldir=mysql_sql/
Drivername=mysql
Database=teamspeak
Hostname=localhost
User_name=teamspeak
Password=<forsuredeletedhere ;-)>
GetDriverFunc=getSQLDriverMYSQL
VendorLib=/usr/lib/libmysqlclient_r.so.10.0.0
LibraryName=./libsqlmy.so
Active=1
--- snap ---

Any ideas?

marcelrx
20-10-2005, 11:55
I'm not sure but with MySQL 4.1 you had problems to start a teamspeak server.
Downgrade on 4.0 or lower. Also you must have the libmysqlclient_r.so.10.0.0
from the old 3.9 or lower version of MySQL.

sonnyka
20-10-2005, 17:00
Can anyone confirm that TS does not work with MySQL V4.1?

If so:
* Is there a way to make TS work with v4.1? I prefer this over downgrading.
* If there is no way, does anyone know a godd documentation for downgrading MySQL from v4.1 to v4.0 for a debian system?

marcelrx
20-10-2005, 20:53
Can anyone confirm that TS does not work with MySQL V4.1?

If so:
* Is there a way to make TS work with v4.1? I prefer this over downgrading.
* If there is no way, does anyone know a godd documentation for downgrading MySQL from v4.1 to v4.0 for a debian system?

I'm not sure but I think teamspeak didn't run with Mysql 4.1.
Downgrading. Deinstall your mysql-server,mysql-client and mysql-common then install the mysql-server verions 4.0 ....

sonnyka
21-10-2005, 02:03
Yes, you were right. I downgraded to V4.0 and TS seems to run fine now (I'm still suspiciously watching the log, but no errors so far).

Thanks for your hint!

P.S. Deinstalling all mysql packages is NOT a good idea - you will loose any dependend package as well. Found a better solution with apt-get install mysql-server/stable.

mokum
03-11-2005, 12:03
You do NOT need to downgrade, if you don't want/can:

Read this (http://forum.goteamspeak.com/showthread.php?t=26982) for a working solution for mysql >4.0

Cheers,
mokum

siepel
12-11-2005, 02:42
I'm not sure but I think teamspeak didn't run with Mysql 4.1.
Downgrading. Deinstall your mysql-server,mysql-client and mysql-common then install the mysql-server verions 4.0 ....


Downgrading is the worst thing u could do.
All know bugs could be abused to get control over your mysql/server.

Try the fixes, as posted in the other topics.

It consistts of 3 fixes

mysqllib.10.so in ur ts dir

edit the 2 sql files

old passwords = 1 in my.cnf of mydql config