Bug 31577

Summary: "Unable to store downloaded mails" when downloading POP3 mail in kmail after mariadb upgrade
Product: Mageia Reporter: Dan Fandrich <dan>
Component: RPM PackagesAssignee: Mageia Bug Squad <bugsquad>
Status: RESOLVED DUPLICATE QA Contact:
Severity: major    
Priority: Normal CC: dan, mageia
Version: 8   
Target Milestone: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Source RPM: akonadi-20.12.0-1.mga8.src.rpm CVE:
Status comment:

Description Dan Fandrich 2023-02-20 05:34:50 CET
Description of problem:
Attempting to download e-mails in kmail results in a "Unable to store downloaded mails" error dialog and the new e-mails are not downloaded. Old mail is still accessible. This happens for several users on several machines connecting to several POP-3 servers, and started at about the same time a couple of days ago. Probably not coincidentally, that's the same time I installed mariadb-10.5.19-1.mga8 (upgrading from mariadb-10.5.18-1.mga8). 

~/.local/share/akonadi/Akonadi.error shows a number of critical errors at the time of attempted download:

2023-02-19T15:50:10 [CRITICAL] org.kde.pim.akonadiserver: DATABASE ERROR:
2023-02-19T15:50:10 [CRITICAL] org.kde.pim.akonadiserver:   Error code: "1292"
2023-02-19T15:50:10 [CRITICAL] org.kde.pim.akonadiserver:   DB error:  "Incorrect datetime value: '2023-02-19T23:50:10Z' for column `akonadi`.`pimitemtable`.`at
ime` at row 1"
2023-02-19T15:50:10 [CRITICAL] org.kde.pim.akonadiserver:   Error text: "Incorrect datetime value: '2023-02-19T23:50:10Z' for column `akonadi`.`pimitemtable`.`atime` at row 1 QMYSQL: Unable to execute query"
2023-02-19T15:50:10 [CRITICAL] org.kde.pim.akonadiserver:   Values: QMap((":0",QVariant(QDateTime, QDateTime(2023-02-19 23:50:10.434 UTC Qt::UTC)))(":1", QVariant(qlonglong, 868)))
2023-02-19T15:50:10 [CRITICAL] org.kde.pim.akonadiserver:   Query: "UPDATE PimItemTable SET atime = :0 WHERE ( ( PimItemTable.id = :1 ) )"
2023-02-19T15:50:10 [WARN ] org.kde.pim.akonadiserver: Unable to update item access time

I found a number of upstream bugs with similar symptoms, but I haven't found one yet that obviously matches the versions on my system.

https://bugs.kde.org/show_bug.cgi?id=439769
https://bugs.kde.org/show_bug.cgi?id=373782

It seems clearly related to the mariadb upgrade, but previous incidents of this resulted in upstream (qtbase or akonadi) changes to be more strict, so it seems likely to be fixed in the client.

The first bug above looks shockingly similar, although the versions aren't quite right. It's hard for me to tell from the packaging, but it looks like the mariadb-connector library version in Mageia is 3.1.20, not 3.2 which the bug report says is the affected version, and mysql_get_client_version() returns 30120 in Mageia which seems to confirm it. This value is less than 40108 which Qt uses in its version check in the same way that mariadb-connector 3.2 behaves, so I think this is the problem.

If so, then applying this patch to qtbase should solve the problem: https://codereview.qt-project.org/c/qt/qtbase/+/363880

N.B. This seems like a pretty big behavioural change for a point release, and I wouldn't be surprised if there's more fallout from other programs looking at the mysql version number.

Version-Release number of selected component (if applicable):
akonadi-20.12.0-1.mga8
kmail-20.12.0-1.mga8
mariadb-10.5.19-1.mga8
qtbase5-5.15.2-4.5.mga8

How reproducible:
No longer able to download any new e-mails.

Steps to Reproduce:
1. Run kmail/akonadi on mariadb-10.5.18-1.mga8
2. Upgrade to mariadb-10.5.19-1.mga8
3. Try to download mails from a POP3 server in kmail
Dan Fandrich 2023-02-20 05:35:51 CET

CC: (none) => dan, mageia

Comment 1 Dan Fandrich 2023-02-20 05:47:54 CET
I just spotted the patch in question applied in r1943643 in the mga8 branch, so I'll try out the resulting RPM and see if it fixes the problem.
Comment 2 Dan Fandrich 2023-02-20 06:39:29 CET
It looks like lib64qt5-database-plugin-mysql-5.15.2-4.8.mga8 solves the issue.
Comment 3 sturmvogel 2023-02-20 06:58:13 CET
duplicate

*** This bug has been marked as a duplicate of bug 29359 ***

Resolution: (none) => DUPLICATE
Status: NEW => RESOLVED