Fails to unregister server if a device fails to init
If a server fails to init a device (e.g. exception thrown in device_factory), it looks like the db_un_export_server function get an invalid server_name argument.
Tango exception
Severity = ERROR
Error reason = DB_SQLError
Desc : Failed to query TANGO database (error=Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,COERCIBLE) for operation 'like')
.The query was: UPDATE device SET exported=0,stopped=NOW() WHERE server like "���ֆu"
Origin : DataBase::db_un_export_server()
Tango exception
Severity = ERROR
Error reason = API_CommandFailed
Desc : Failed to execute command_inout on device sys/database/2, command DbUnExportServer
The database as the following collation config (which explains the collation error), but I think that "���ֆu" might come from a dangling pointer.
mysql> show variables like "character_set_database";
+------------------------+---------+
| Variable_name | Value |
+------------------------+---------+
| character_set_database | utf8mb4 |
+------------------------+---------+
mysql> SHOW FULL COLUMNS FROM device;
+----------+--------------+-------------------+------+-----+---------+-------+---------------------------------+---------+
| Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment |
+----------+--------------+-------------------+------+-----+---------+-------+---------------------------------+---------+
| name | varchar(255) | latin1_swedish_ci | NO | MUL | nada | | select,insert,update,references | |
| alias | varchar(255) | latin1_swedish_ci | YES | | NULL | | select,insert,update,references | |
| domain | varchar(85) | latin1_swedish_ci | NO | | nada | | select,insert,update,references | |
| family | varchar(85) | latin1_swedish_ci | NO | | nada | | select,insert,update,references | |
| member | varchar(85) | latin1_swedish_ci | NO | | nada | | select,insert,update,references | |
| exported | int | NULL | YES | | 0 | | select,insert,update,references | |
| ior | text | latin1_swedish_ci | YES | | NULL | | select,insert,update,references | |
| host | varchar(255) | latin1_swedish_ci | NO | | nada | | select,insert,update,references | |
| server | varchar(255) | latin1_swedish_ci | NO | | nada | | select,insert,update,references | |
| pid | int | NULL | YES | | 0 | | select,insert,update,references | |
| class | varchar(255) | latin1_swedish_ci | NO | | nada | | select,insert,update,references | |
| version | varchar(8) | latin1_swedish_ci | NO | | nada | | select,insert,update,references | |
| started | datetime | NULL | YES | | NULL | | select,insert,update,references | |
| stopped | datetime | NULL | YES | | NULL | | select,insert,update,references | |
| comment | text | latin1_swedish_ci | YES | | NULL | | select,insert,update,references | |
+----------+--------------+-------------------+------+-----+---------+-------+---------------------------------+---------+