From: Marcel Holtmann <marcel@holtmann.org>
To: ofono@ofono.org
Subject: RE: [RFC 2/2] doc: Add description for history agent interface
Date: Fri, 04 Feb 2011 10:13:07 -0800 [thread overview]
Message-ID: <1296843187.1520.391.camel@aeonflux> (raw)
In-Reply-To: <A459777776EB4841B844E1134E7928740157C97A@008-AM1MPN1-016.mgdnok.nokia.com>
[-- Attachment #1: Type: text/plain, Size: 2360 bytes --]
Hi Mikhail,
> > > I totally agree. But it means that you have code in oFono to reliably
> > store an ordered collection of stuff in a filesystem. I wouldn't like
> > MeeGo developers to maintain very similar code in a different
> > component, just for API adaptation reasons.
> >
> > No we do not. We have code to reliably store tpdus, fragments not
> > re-assembled messages. It is not ordered or anything else you make it
> > out to be. Why don't you actually read the sms_assembly code and tell
> > me if it is usable for anything else. The code for storing assembled
> > messages would be _completely_ different.
>
> Why, you already cache fragments by their respective message refs efficiently.
> The only thing missing is a thin API to provide a view on complete messages.
we are not storing the complete message. We give it to the history API.
> > > D-Bus messages at initialization of a storage-capable client:
> > >
> > > 1. client connects to the oFono signal NewMessage.
> > > 2a. client calls ListMessages.
> > > 2b. oFono returns spooled messages.
> > >
> > > If there are any messages, two more are needed:
> > >
> > > 3a. client calls ExpungeMessages.
> > > 3b. oFono returns.
> > >
> > > When a new message is received:
> > >
> > > 1. oFono emits a NewMessage signal.
> > > 2a. client calls ExpungeMessages.
> > > 2b. oFono returns.
> > >
> > > Now if we implement a history plugin to serve this API, there will be
> > all of the above plus the history plugin registration and event storage
> > roundtrips.
> >
> > You are proving Marcel's point here, the Agent has about 1/2 as many
> > round trips as your proposal.
> >
> > 1. client calls RegisterAgent()
>
> An interesting question here: should oFono core monitor NameOwnerChanged for the agent's service name, just in case it disappears from the bus? What's the failure mode for this case?
You do have read my RFC patch, right? It does exactly this.
> > 2. For each new message the agent's HandleMessage() method is called
>
> 2a. agent returns.
>
> So the ratio is 2/3 for the only event flow that is relevant for performance, more likely.
> But I agree, it's a bit more efficient for simple plugins, provided that they never fall off the bus.
What has falling off the bus to do with this?
Regards
Marcel
next prev parent reply other threads:[~2011-02-04 18:13 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-01 17:29 [RFC 2/2] doc: Add description for history agent interface Marcel Holtmann
2011-02-02 13:23 ` Kai.Vehmanen
2011-02-02 16:43 ` Marcel Holtmann
2011-02-02 18:14 ` mikhail.zabaluev
2011-02-02 19:22 ` Denis Kenzior
2011-02-02 22:56 ` Kai.Vehmanen
2011-02-02 23:12 ` Marcel Holtmann
2011-02-03 10:54 ` mikhail.zabaluev
2011-02-03 7:13 ` Denis Kenzior
2011-02-03 10:11 ` Kai.Vehmanen
2011-02-03 12:42 ` mikhail.zabaluev
2011-02-03 11:57 ` mikhail.zabaluev
2011-02-03 15:58 ` Denis Kenzior
2011-02-02 19:32 ` Marcel Holtmann
2011-02-03 12:22 ` mikhail.zabaluev
2011-02-03 16:11 ` Denis Kenzior
2011-02-04 9:23 ` mikhail.zabaluev
2011-02-04 12:58 ` Marcel Holtmann
2011-02-04 16:52 ` mikhail.zabaluev
2011-02-04 17:05 ` Denis Kenzior
2011-02-04 18:07 ` mikhail.zabaluev
2011-02-04 18:13 ` Marcel Holtmann [this message]
2011-02-04 18:52 ` mikhail.zabaluev
2011-02-04 19:01 ` Denis Kenzior
2011-02-04 19:01 ` Marcel Holtmann
2011-02-04 19:33 ` mikhail.zabaluev
2011-02-04 19:48 ` Marcel Holtmann
2011-02-04 18:27 ` Denis Kenzior
2011-02-04 19:17 ` mikhail.zabaluev
2011-02-04 19:22 ` Marcel Holtmann
2011-02-04 19:27 ` Denis Kenzior
2011-02-04 17:15 ` Marcel Holtmann
2011-02-04 18:32 ` mikhail.zabaluev
2011-02-02 22:55 ` Kai.Vehmanen
2011-02-02 23:06 ` Marcel Holtmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1296843187.1520.391.camel@aeonflux \
--to=marcel@holtmann.org \
--cc=ofono@ofono.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.