On Mon, 2023-06-12 at 11:24 +0100, junk wrote:
>
> With the dropping of SOGo1 I recently moved to SOGo 5. I created a
> container image using Centos Stream 8 and got it all working about
> three
> weeks ago using LDAP for auth and mariadb for the database. I used
> sogo-tool to export the data from the old db into a fresh one.
>
> However 4 days ago I suddenly lost the ability to connect to the DAV
> data for all users, and in the logs I'm getting
>
> 2023-06-12 10:16:34.573 sogo-tool[345:345]
> ERROR(-[NSNumber(MySQL4Values) initWithMySQL4Field:value:length:]):
> unsupported MySQL type: 0 (len=4)
> 2023-06-12 10:16:34.573 sogo-tool[345:345] ERROR(-[MySQL4Channel
> primaryFetchAttributes:withZone:]): <MySQL4Channel[0x0x2722130]
> connection=0x0x274e6b0>: got no value for column: attribute=c_path2
> valueClass=NSNumber
> type=DECIMAL
>
> Sometimes the attribute is c_path, c_path2 or c_path4
>
> Any attempt to use sogo-tool checkup or backup also just shows this
> message.
>
> Can someone help me work out how to fix it?
>
> Leon
>
>
I added the MYSQL4 debug line and got a little more information
5ea3bd8ac7c1 2023-06-12 21:56:23.674 sogod[239:239]
<MySQL4Channel[0x0x55c490747410] connection=0x0x55c490c6bd10> SQL:
INSERT INTO sogo_folder_info (c_path, c_path1, c_path2, c_path3,
c_path4, c_foldername, c_location, c_quick_location,
c_acl_location, c_folder_type) VALUES
('/Users/baggypants/Calendar/personal', 'Users', 'baggypants',
'Calendar', 'personal', 'Personal Calendar',
'mysql://sogo:[email protected]:3306/sogo/sogobaggypan0bc18d03bcf',
'mysql://sogo:[email protected]:3306/sogo/sogobaggypan0bc18d03bcf_quic
k',
'mysql://sogo:[email protected]:3306/sogo/sogobaggypan0bc18d03bcf_acl'
, 'Appointment');
5ea3bd8ac7c1 2023-06-12 21:56:23.675 sogod[239:239]
<MySQL4Channel[0x0x55c490747410] connection=0x0x55c490c6bd10> ERROR:
Duplicate entry '/Users/baggypants/Calendar/personal' for key 'PRIMARY'
5ea3bd8ac7c1 2023-06-12 21:56:23.675 sogod[239:239]
<MySQL4Channel[0x0x55c490747410] connection=0x0x55c490c6bd10> SQL:
ROLLBACK;
5ea3bd8ac7c1 2023-06-12 21:56:23.675 sogod[239:239]
<MySQL4Channel[0x0x55c490747410] connection=0x0x55c490c6bd10> query
has no results.
5ea3bd8ac7c1 2023-06-12 21:56:23.675 sogod[239:239]
<MySQL4Channel[0x0x55c49090f490] connection=0x0x55c49015dcf0> SQL:
SELECT c_path FROM sogo_folder_info WHERE c_path1 = 'Users' AND c_path2
= 'baggypants' AND c_path3 = 'Calendar' AND c_path4 = 'personal';
5ea3bd8ac7c1 2023-06-12 21:56:23.676 sogod[239:239]
<MySQL4Channel[0x0x55c49090f490] connection=0x0x55c49015dcf0> query
has results, entering fetch-mode.
5ea3bd8ac7c1 2023-06-12 21:56:23.676 sogod[239:239] ERROR(-
[NSNumber(MySQL4Values) initWithMySQL4Field:value:length:]):
unsupported MySQL type: 0 (len=35)
5ea3bd8ac7c1 2023-06-12 21:56:23.676 sogod[239:239] ERROR(-
[MySQL4Channel primaryFetchAttributes:withZone:]):
<MySQL4Channel[0x0x55c49090f490] connection=0x0x55c49015dcf0>: got no
value for column: attribute=c_path
5ea3bd8ac7c1 valueClass=NSNumber
5ea3bd8ac7c1 type=DECIMAL
I'm not sure why it's trying to add the personal calendar again.
The sogo version is sogo-5.8.3.20230611-1.el8.x86_64 mariadb is 8
I checked some of the database character settings at they all seem to
be utf8mb4
MariaDB [sogo]> SELECT default_character_set_name FROM
information_schema.SCHEMATA WHERE schema_name = "sogo";
+----------------------------+
| default_character_set_name |
+----------------------------+
| utf8mb4 |
+----------------------------+
1 row in set (0.008 sec)
MariaDB [sogo]> SELECT CCSA.character_set_name FROM
information_schema.`TABLES` T,
information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA WHERE
CCSA.collation_name = T.table_collation AND T.table_schema = "sogo"
AND T.table_name = "sogo_folder_info";
+--------------------+
| character_set_name |
+--------------------+
| utf8mb4 |
+--------------------+
1 row in set (0.010 sec)
MariaDB [sogo]> SELECT character_set_name FROM
information_schema.`COLUMNS` WHERE table_schema = "sogo" AND
table_name = "sogo_folder_info" AND column_name = "c_path";
+--------------------+
| character_set_name |
+--------------------+
| utf8mb4 |
+--------------------+
1 row in set (0.012 sec)
MariaDB [sogo]> SELECT character_set_name FROM
information_schema.`COLUMNS` WHERE table_schema = "sogo" AND
table_name = "sogo_folder_info" AND column_name = "c_path2";
+--------------------+
| character_set_name |
+--------------------+
| utf8mb4 |
+--------------------+
1 row in set (0.007 sec)
MariaDB [sogo]> SELECT character_set_name FROM
information_schema.`COLUMNS` WHERE table_schema = "sogo" AND
table_name = "sogo_folder_info" AND column_name = "c_path4";
+--------------------+
| character_set_name |
+--------------------+
| utf8mb4 |
+--------------------+
1 row in set (0.010 sec)
Leon