[Kde-pim] On-demand lazy loading of items in Akonadi

Kevin Krammer krammer at kde.org
Tue May 7 11:49:55 BST 2013


On Tuesday, 2013-05-07, Jan Kundrát wrote:
> Hi,
> before I start spreading possible misinformation, I'd like to check by the
> horse's mouth. Is it technically feasible to implement the following in
> Akonadi?
> 
> - Don't fetch envelopes of all message in a mailbox, sync just their UID
> and FLAGS

Yes, an Akonadi item is in its most basic form just a (remote) identifier and 
a MIME type. The identifier is needed so that the resource can actually relate 
the item to the actual backend data, e.g. the specific email.
The MIME type is often hardcoded in resources since they only serve one kind 
of data.
One can flags or other attributes to that if desired.

> - Implement an intelligent preload of items (i.e. when requesting envelope
> for message X, fetch everything between X-100 and X+100)

That depends on what the backend supports. The resource, as the primary 
contact to the backend, will get a request for the data or a subset of the 
data for a specific item.
Whether it only gets the requested data or more or does anything on top of 
that is up to it and its backend's capabilities.

> - Delegate certain operations like sorting, threading and searching to the
> IMAP server without having to fetch anything but UID first

Not sure. I know there were talks about delegating search to resources which 
have backends that support that but I am uncertain whether the interfaces for 
that have been implemented already.

> I have no idea whether Akonadi imposes certain restrictions on immutability
> of the individual items, for example, which might make doing the above
> impractical.

The only item data that is immutable IIRC is the Akonadi internal identifier. 

> I asume that the KDE's IMAP resource does not do this (I've checked the
> code and it looks like that is the case to me). Why is that?

My guess would be resource constraints, e.g. needing an implementation that 
contains all necessary features before optmizing specific ones.

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20130507/fefad063/attachment.sig>
-------------- next part --------------
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/


More information about the kde-pim mailing list