Review Request 114523: libkpeople: PersonManager: Fallback to QSQLITE DB driver if QSQLITE3 is not available.
Dan Vrátil
dvratil at redhat.com
Fri Dec 27 15:45:13 UTC 2013
> On Dec. 19, 2013, 9:19 p.m., Dan Vrátil wrote:
> > QSQLITE3 driver shipped with Akonadi is copy (very old one) of upstream QSQLITE driver with some patches for concurrency and we failed to upstream it (it comes from the time before Qt being open governance). Upstreaming the patches is on my TODO, but it's not that simple.
> >
> > The QSQLITE3 driver should be shipped with Akonadi by default, but it's possible that some distributions split it to separate subpackage, like Fedora does with akonadi-mysql.
> >
> > You can just use QSQLITE, which is always part of Qt, and just ignore QSQLITE3. You don't need really that level of concurrency in KPeople we need in Akonadi.
>
> Alexandr Akulich wrote:
> So? Where is "Ship it" label? :-) Or do you prefer first version of patch, which just replace "QSQLITE3" by "QSQLITE"?
> I'm using Gentoo and there is no defaults for akonadi. Problem comes from missed dependency, which can be revealed only by source code reading.
>
> David Edmundson wrote:
> I think Dan is saying.
>
> "Dave is a noob, it should have been just SQLITE from the start".
Sorry for the delay. I'm not saying Dave is a noob, but yup, you should only use QSQLITE and don't care about QSQLITE3 at all. :-)
- Dan
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/114523/#review45936
-----------------------------------------------------------
On Dec. 19, 2013, 6:52 p.m., Alexandr Akulich wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/114523/
> -----------------------------------------------------------
>
> (Updated Dec. 19, 2013, 6:52 p.m.)
>
>
> Review request for Telepathy.
>
>
> Repository: libkpeople
>
>
> Description
> -------
>
> There is said nothing about kpeople dependency on akonadi sqlite driver. At same time, it's said that QMYSQL driver is strongly recommend as Akonadi database backend, so (imo) there is much chance that qsqlite3 driver isn't presented on system, even is akonadi is.
> Currently this case isn't handled at all. Library is making visible that all works, while it didn't. E.g. it return "success" result for PersonManager::mergeContacts() and PersonManager::unmergeContact(), even if it fails to update base. It causes strange behavior in clients app.
>
> Proposed change introduce fallback to QSQLITE, as lesser evil.
>
> P.S.: It's hard to understand that QSQLITE3 is correct driver, provided by akonadi. Prefixed with Q instead of K it reject all ideas about kde-relation, while Qt documentation says that driver for SQLite 3 is just "QSQLITE".
> If it worth it, may be someone merge changes to upstream "QSQLITE" driver?
>
>
> Diffs
> -----
>
> src/personmanager.cpp fd03ba7
>
> Diff: https://git.reviewboard.kde.org/r/114523/diff/
>
>
> Testing
> -------
>
> All works good without QSQLITE3 driver. I can't find any issues.
>
>
> Thanks,
>
> Alexandr Akulich
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-telepathy/attachments/20131227/d8d347e1/attachment-0001.html>
More information about the KDE-Telepathy
mailing list