Bug#1031770: Info received (kontact: cannot show existing messages and will not retrieve new ones)

2023-02-24 Thread Paul Boddie
On Friday, 24 February 2023 09:55:18 CET Rai wrote:
> Hi Paul,
> 
> Great work and big thanks for the findings.
> But indeed, this change in mariadb_lib.c is a functional change which should
> have never made it in a security update. :(

Agreed. Since this bug merely manifests itself in Kontact but must be fixed 
elsewhere, I have opened a new bug against libqt5sql5-mysql:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1031863

Sorry if this bug might have been retargeted, but it isn't obvious how that 
might be done.

I imagine that we could make this existing bug dependent on the new bug, and 
when the fix is hopefully made, we might then close both of them. It is 
conceivable that Debian maintainers may wish to revert the regression in 
libmariadb3 instead, but that it a matter for them to decide, and so I won't 
go and create another bug against libmariadb3. I have merely mentioned the 
possibility in the new bug description.

Paul



Bug#1031863: libqt5sql5-mysql: incompatible change in libmariadb3 breaks kontact, needs upstream fix in libqt5sql5-mysql

2023-02-24 Thread Paul Boddie
Package: libqt5sql5-mysql
Version: 5.11.3+dfsg1-1+deb10u5
Severity: important

Dear Maintainer,

A recent update to libmariadb3 introduced a change to MySQL version number
reporting that ultimately breaks Kontact and Akonadi. To note this, I filed
bug #1031770 against the kontact package:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1031770

However, this breakage probably needs fixing in the Qt 5 SQL driver for
MySQL/MariaDB, and a fix was indeed introduced to Qt 5.15 upstream:

https://bugreports.qt.io/browse/QTBUG-95071

Should the Qt packaging be the appropriate location of any fix, then this
upstream fix will need to be backported to Qt 5.11.3, as packaged by Debian
for Buster.

I have tested a variant of the upstream patch with the Qt 5.11.3 SQL driver
for MySQL, and it restored Kontact to a functioning state. It is a question
of policy as to whether the upstream Qt approach of working around the
breakage is more desirable than patching libmariadb3 within Debian.

Obviously, an alternative would be to make Qt-based software link against
later versions of Qt, but these are, of course, not packaged for Buster.
Such an alternative is presumably available by upgrading a system to
Bullseye, but having to upgrade a system purely to work around a one-line
regression is hardly optimal.

Therefore, I invite the Qt and MariaDB package maintainers to discuss the
most convenient solution to this issue, noting that anyone relying on
Kontact, KMail, Akonadi and other Qt-based software employing MySQL/MariaDB
in Buster will already have been dealing with non-functioning software for
the past few days.

Thanks in advance for any consideration you can give to this issue,

Paul

-- System Information:
Debian Release: 10.13
  APT prefers oldstable-updates
  APT policy: (500, 'oldstable-updates'), (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.5.0-0.bpo.2-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libqt5sql5-mysql depends on:
ii  libc6 2.28-10+deb10u2
ii  libmariadb3   1:10.3.38-0+deb10u1
ii  libqt5core5a [qtbase-abi-5-11-3]  5.11.3+dfsg1-1+deb10u5
ii  libqt5sql55.11.3+dfsg1-1+deb10u5
ii  libstdc++68.3.0-6

libqt5sql5-mysql recommends no packages.

libqt5sql5-mysql suggests no packages.

-- no debconf information



Bug#1031770: Info received (Bug#1031770: Info received (kontact: cannot show existing messages and will not retrieve new ones))

2023-02-23 Thread Paul Boddie
Hello again,

I also found the applicable upstream KDE bug:

"Akonadi fails with Mariadb 10.6.3"
https://bugs.kde.org/show_bug.cgi?id=439769

Meanwhile, applying the fix suggested for Qt 5.15 in a slightly modified form 
seems to prevent the error I experienced from occurring.

With the modified libqt5sql5-mysql package installed, I have managed to start 
Kontact, view stored messages (after some messing around with akonadiconsole, 
due to earlier troubleshooting attempts), and this message will have been sent 
from Kontact.

I conclude, then, that the upstream fix needs backporting to Qt 5.11.3 for 
Debian.

Paul



Bug#1031770: Info received (kontact: cannot show existing messages and will not retrieve new ones)

2023-02-23 Thread Paul Boddie

Hello again,

I looked at the packaging repository for libmariadb3 and found the 
following commit importing the upstream sources for 10.3.38:


https://salsa.debian.org/mariadb-team/mariadb-10.3/-/commit/773fb3e04ffae2b4868876be632fb7244329e7c3

Looking at the diff, I found the following change to 
libmariadb/libmariadb/mariadb_lib.c:


@@ -3879,7 +3881,7 @@ int STDCALL mysql_set_server_option(MYSQL *mysql,

 ulong STDCALL mysql_get_client_version(void)
 {
-  return MARIADB_VERSION_ID;
+  return MARIADB_PACKAGE_VERSION_ID;
 }

 ulong STDCALL mysql_hex_string(char *to, const char *from, unsigned 
long len)


This appears to be what the Qt bug report is describing:

"MariaDB 10.6 changed the mysql_get_client_version output to return the 
library version (30200 as of 10.6.3) instead of the server version"


https://bugreports.qt.io/browse/QTBUG-95071

So, it seems that the changes to MariaDB 10.6 have leaked into 10.3, 
thus causing this issue.


Paul



Bug#1031770: kontact: cannot show existing messages and will not retrieve new ones

2023-02-22 Thread Paul Boddie

On 2023-02-22 17:03, Otto Kekäläinen wrote:

Seems Akonadi tried to execute

"INSERT INTO PimItemTable (rev, remoteId, remoteRevision, gid,
collectionId, mimeTypeId, datetime, atime, dirty, size) VALUES (:0,
:1, :2, :3, :4, :5, :6, :7, :8, :9)"

and gets error

"Incorrect datetime value: '2023-02-22T12:00:36Z' for column
`akonadi`.`pimitemtable`.`datetime` at row 1"

Can you check what the schema for that table is? How does the current
data look like?


So, akonadiconsole produces a graphical representation of the schema, so 
I had to use the command line client as follows:


mysql -S /tmp/akonadi-paulb.c9oVw2/mysql.socket

The socket file can be discovered by doing "ps -ef | grep mysql" and 
reading the --socket option of the mysqld process command line.


After doing "use akonadi", I performed the following:

MariaDB [akonadi]> desc PimItemTable;
+++--+-+-++
| Field  | Type   | Null | Key | Default | 
Extra  |

+++--+-+-++
| id | bigint(20) | NO   | PRI | NULL| 
auto_increment |
| rev| int(11)| NO   | | 0   |   
 |
| remoteId   | varbinary(255) | YES  | MUL | NULL|   
 |
| remoteRevision | varbinary(255) | YES  | | NULL|   
 |
| gid| varbinary(255) | YES  | MUL | NULL|   
 |
| collectionId   | bigint(20) | YES  | MUL | NULL|   
 |
| mimeTypeId | bigint(20) | YES  | MUL | NULL|   
 |
| datetime   | timestamp  | NO   | | current_timestamp() |   
 |
| atime  | timestamp  | NO   | | current_timestamp() |   
 |
| dirty  | tinyint(1) | YES  | | NULL|   
 |
| size   | bigint(20) | NO   | | 0   |   
 |

+++--+-+-++
11 rows in set (0.001 sec)


(Unless you are sure the root cause is
https://bugreports.qt.io/browse/QTBUG-95071)


This was the closest thing I could find.


Or could this be a variant of
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=993219 ?


I don't think so. People have experienced configuration issues with 
MySQL in the past, on one occasion involving a change in the default 
behaviour of MySQL itself, but the library upgrade seems more likely to 
have caused a problem than anything else.



Very weird that Akonadi would stop working on an upgrade of
1:10.3.38-0+deb10u1. Does it start working if you downgrade back to
1:10.3.37-0+deb10u1?


Yes, I wouldn't expect the issue described in the upstream bug tracker 
to occur at this point, but I don't know what goes into the Debian 
patching of this library, either.


Using "apt-cache showpkg libmariadb3", I found that the following 
version was available via apt:


1:10.3.34-0+deb10u1

However, in my /var/cache/apt/archive collection, I have this later 
version:


1:10.3.36-0+deb10u2

Trying to use dpkg to install this later version seems to make Akonadi 
non-functional, as does any attempt to use apt to install the earlier 
version, these being the respective commands:


dpkg -i 
/var/cache/apt/archives/libmariadb3_1%3a10.3.36-0+deb10u2_amd64.deb

apt-get install libmariadb3=1:10.3.34-0+deb10u1

Both attempts yield errors like this in the Akonadi server log:

Tokenizer Warning: trailing garbage after angle-addr in Return-Path!

Maybe I am just failing to downgrade the library properly, and perhaps I 
would also need to ensure that the MySQL server is also downgraded.


Paul



Bug#1031770: kontact: cannot show existing messages and will not retrieve new ones

2023-02-22 Thread Paul Boddie
Package: kontact
Version: 4:18.08.3-1
Severity: important

Dear Maintainer,

Today I found that Kontact would not load and show messages that already
reside in my mailboxes, and it refuses to download new ones. In the status
bar, messages like the following are shown:

Unable to fetch item from backend (collection -1)
Unable to retrieve item from resource

Opening akonadiconsole and its browser functionality does show messages in
the list for each mailbox, and it also manages to show each message payload.
However, the following error messages are generated in the terminal window:

org.kde.pim.akonadiserver: DATABASE ERROR:
org.kde.pim.akonadiserver:   Error code: "1292"
org.kde.pim.akonadiserver:   DB error:  "Incorrect datetime value: 
'2023-02-22T12:00:36Z' for column `akonadi`.`pimitemtable`.`datetime` at row 1"
org.kde.pim.akonadiserver:   Error text: "Incorrect datetime value: 
'2023-02-22T12:00:36Z' for column `akonadi`.`pimitemtable`.`datetime` at row 1 
QMYSQL: Unable to execute query"
org.kde.pim.akonadiserver:   Query: "INSERT INTO PimItemTable (rev, remoteId, 
remoteRevision, gid, collectionId, mimeTypeId, datetime, atime, dirty, size) 
VALUES (:0, :1, :2, :3, :4, :5, :6, :7, :8, :9)"
org.kde.pim.akonadiserver: Error during insertion into table "PimItemTable" 
"Incorrect datetime value: '2023-02-22T12:00:36Z' for column 
`akonadi`.`pimitemtable`.`datetime` at row 1 QMYSQL: Unable to execute query"

org.kde.pim.akonadiserver: DATABASE ERROR:
org.kde.pim.akonadiserver:   Error code: "1292"
org.kde.pim.akonadiserver:   DB error:  "Incorrect datetime value: 
'2023-02-22T12:08:21Z' for column `akonadi`.`pimitemtable`.`atime` at row 1"
org.kde.pim.akonadiserver:   Error text: "Incorrect datetime value: 
'2023-02-22T12:08:21Z' for column `akonadi`.`pimitemtable`.`atime` at row 1 
QMYSQL: Unable to execute query"
org.kde.pim.akonadiserver:   Query: "UPDATE PimItemTable SET atime = :0 WHERE ( 
PimItemTable.collectionId = :1 )"
org.kde.pim.akonadiserver: Unable to update item access time

It turns out that this is caused by a bug that was reported back in 2021:

"Kmail fails to display message, akonadiserver errors"
https://forums.opensuse.org/t/kmail-fails-to-display-message-akonadiserver-errors/147051

"Bug 1189184 - org.kde.pim.akonadiserver: Error code: "1292""
https://bugzilla.opensuse.org/show_bug.cgi?id=1189184

"Akonadi fails with Mariadb 10.6.3"
https://bugs.kde.org/show_bug.cgi?id=439769

"mysql client version detection broken with MariaDB 10.6"
https://bugreports.qt.io/browse/QTBUG-95071

I imagine that a fix for this bug needs to be introduced to the packaged
Qt 5 SQL library from whichever version was fixed. It looks like the
libqt5sql5-mysql:amd64 package on my system is based on 5.11:

5.11.3+dfsg1-1+deb10u5

But upstream fixes only covered 5.15 and 6.2 branches.

I see that the following package was upgraded on my system recently:

libmariadb3_1%3a10.3.38-0+deb10u1_amd64.deb

The libmariadb3 package has the following version:

1:10.3.38-0+deb10u1

So, this may have caused this bug to appear on my system.

If anyone really thought that they absolutely had to incorporate a full
relational database server into their desktop application, then at the very
least they should have used PostgreSQL and saved everyone the bother of
dealing with the circus that is MySQL. I will spare everyone the usual rant
about Akonadi, noting only that "akonadictl restart" is a regular command
invocation in my workflow.

Thanks in advance for any consideration of this issue,

Paul

-- System Information:
Debian Release: 10.13
  APT prefers oldstable-updates
  APT policy: (500, 'oldstable-updates'), (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.5.0-0.bpo.2-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages kontact depends on:
ii  kdepim-runtime   4:18.08.3-4
ii  kio  5.54.1-1
ii  libc62.28-10+deb10u2
ii  libgcc1  1:8.3.0-6
ii  libkf5completion55.54.0-1
ii  libkf5configcore55.54.0-1+deb10u1
ii  libkf5configgui5 5.54.0-1+deb10u1
ii  libkf5configwidgets5 5.54.0-1
ii  libkf5coreaddons55.54.0-1
ii  libkf5crash5 5.54.0-1
ii  libkf5grantleetheme-plugins  18.08.3-1
ii  libkf5grantleetheme5 18.08.3-1
ii  libkf5i18n5  5.54.0-1
ii  libkf5iconthemes55.54.0-1
ii  libkf5kcmutils5  5.54.0-1
ii  libkf5kdepimdbusinterfaces5  4:18.08.3-2
ii  libkf5kiowidgets55.54.1-1
ii  libkf5kontactinterface5  18.08.3-1
ii  libkf5libkdepim-plugins  4:18.08.3-2
ii  libkf5libkdepim5 4:18.08.3-2
ii  libkf5parts5 5.54.0-1
ii  libkf5service-bin5.54.0-1
ii  libkf5service5   

Bug#908588: Some more observations

2018-09-12 Thread Paul Boddie
Evidently, the "fix" doesn't seem to have the intended effect. Launching 
Akregator just now spawned three "HTTP Cache Cleaner" instances and the 
animated cursor, with the plasma-desktop process increasing its activity.

I suppose it is possible that the referenced .desktop file is not involved, 
but the /usr/lib/kde4/libexec/kio_http_cache_cleaner program does seem to be 
invoked.

Paul



Bug#908588: kdelibs5-data: HTTP Cache Cleaner starts irritating launch notifier (also makes plasma-desktop busy)

2018-09-11 Thread Paul Boddie
Package: kdelibs5-data
Version: 4:4.14.2-5+deb8u2
Severity: normal

Upon launching Akregator in the Kontact application, "HTTP Cache Cleaner"
starts up with the bouncing notifier cursor and a window entry in the taskbar.
Also plasma-desktop starts running more excitedly. This can be quite annoying.

Apparently, some efforts were made to fix this bug in the past:

https://bugs.kde.org/show_bug.cgi?id=108809
https://bugs.launchpad.net/ubuntu/+source/kde4libs/+bug/60315

The suggested fix is not applied in the Jessie version of the affected file:

/usr/share/kde4/services/http_cache_cleaner.desktop

Here is a link to the fairly trivial change:

http://commits.kde.org/kio/a327b47c16e2a8167e90864aae11240b94dc3f05

(It is mentioned near the end of each of the bug reports given above.)

It may be the case that this fixes the problem, although with the offending
program having been run recently, the program might not be invoked again when
I re-run Akregator, so it remains possible that it will recur in future. I
will attempt to monitor this and provide additional information.

Thanks for packaging KDE for Debian.


-- System Information:
Debian Release: 8.11
  APT prefers oldstable-updates
  APT policy: (500, 'oldstable-updates'), (500, 'oldstable')
Architecture: i386 (i686)

Kernel: Linux 3.16.0-6-586
Locale: LANG=en_GB.ISO-8859-15, LC_CTYPE=en_GB.ISO-8859-15 (charmap=ISO-8859-15)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages kdelibs5-data depends on:
ii  ca-certificates 20141019+deb8u4
ii  hicolor-icon-theme  0.13-1
ii  perl5.20.2-3+deb8u11

kdelibs5-data recommends no packages.

kdelibs5-data suggests no packages.

-- no debconf information



Re: Sort of quick review of libkolab

2014-05-21 Thread Paul Boddie
On Wednesday 21. May 2014 10.39.25 Maximiliano Curia wrote:
> 
> Thanks for taking care of libkolab, I've made a quick review of the
> package, mostly checking the differences with the Debian package. The list
> is long, but I think most of the points are easy to fix.

I hope so! As I'm more or less merging other people's work, and being a quick 
first attempt in limited time, it was not going to produce acceptable results 
straight away, but you've given me some concrete things to fix.

I'll take a look at these things and try and refine the packaging. Thanks for 
taking a look!

Paul


-- 
To UNSUBSCRIBE, email to debian-qt-kde-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/201405212329.48331.p...@boddie.org.uk