From: Denis Kenzior <denkenz@gmail.com>
To: ofono@ofono.org
Subject: Re: Unreliable next_msg_id (was Re: [PATCH 2/2] Added SQLite history plugin)
Date: Thu, 15 Apr 2010 17:24:49 -0500 [thread overview]
Message-ID: <201004151724.49943.denkenz@gmail.com> (raw)
In-Reply-To: <x2j359c5481004151457u9ab1f05cn81d7c598803ab415@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2034 bytes --]
Hi Niko,
> > The proper fix is to generate a SHA1 or MD5 hash over the contents, local
> > reception/send time, remote reception / send time, destination /
> > originator of the message.
>
> Dario suggested that to me too, the only problem I see is that an hash
> signature does not provide ">" operator that may help in some sync
> scenarios, but this may be fixed in several ways (for example using an
> additional autoincrement serial column that may expose to applications
> an unique, ordered and reliable id without exposing the ofono internal
> one).
I suggest using a sync timestamp or some other way to accomplish this.
>
> Will check if all history callbacks lets us rehash the messages properly.
>
> A shot in the dark: what's about delegating the id generation to the
> history plugin (if present and capable)?
> That should fix the above problems, avoid hash generation and provide
> a possible base to reuse the id while resubmitting failed/pending
> messages providing the right id to ofono, avoiding the introduction of
> race conditions or complex implementations.
oFono will keep pending messages around across reboots, that is an enhancement
we're already working on. Resubmitting of failed messages should result in a
new ID anyway.
And I honestly don't think N implementations of hashing SMS messages in each
history plugin is a good idea. Let oFono do it so we get it right for
everyone.
> >> Finally, we'd like to use some "panic" function in ofono, that should
> >> power down all modems and warn clients when critical conditions
> >> happen.
> >>
> >> Is that possible?
> >
> > Send HUP to the daemon? Or do you want oFono to keep running?
>
> I mean the best way to shutdown modems and ofono inside the code (in
> the history for example if an sql statement fails, or if it cannot
> save id to the permanent storage, big dbus troubles or other similiar
> cases).
Yikes. The answer is "Please don't even think about it" :)
Regards,
-Denis
prev parent reply other threads:[~2010-04-15 22:24 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-15 14:02 Unreliable next_msg_id (was Re: [PATCH 2/2] Added SQLite history plugin) Nicola Mfb
2010-04-15 18:35 ` Denis Kenzior
2010-04-15 21:57 ` Nicola Mfb
2010-04-15 22:24 ` Denis Kenzior [this message]
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=201004151724.49943.denkenz@gmail.com \
--to=denkenz@gmail.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox