On Thu, 2012-02-16 at 18:14 +0100, Lukas Zeller wrote:
On Feb 13, 2012, at 14:35 , Patrick Ohly wrote:
> Instead of repeating myself, let me quote the commit messages of the
> relevant commits on that branch below. There are a few more commits in
> that branch. Lukas, what do you think?
Thanks for these patches (the one with firstReadNextItem not being set
is an embarassing one - on the other hand it proves safe coding in all
of the plugins in use so far in that they apparently all cleanly reset
the iterator at initialisation without being told so).
I guess they would have failed in very obvious ways if they hadn't done
that. My main concern was that they now might now start to fail because
the engine works as described ;-)
Regarding the solution for the 409 merge problem, I think the
fake-ID-delete approach is fine. Numeric localids are not used in any
libsynthesis build, this is legacy from the monolithic PalmOS clients
which had severe memory constraints which ruled out anything as fat
and resource wasting as string IDs :-) Still, I think the use of
negative IDs would work here, the only thing I'm not sure is if
RND_MAX can be safely assumed to be 31 bits only - in case it would
extend into 32 bit we'd get positive IDs clashing with real ones
occasionally. Maybe just AND rand() result with 0x7FFFFFFF to be on
the safe side...
I haven't look into this yet, but still have it on my radar.
Instead I continued investigating multi-cycle syncs by writing more
tests and fixing some of the other TODO items. All of that works now, so
I merged the code into the master branched of the
meego.gitorious.org
repos.
--
Best Regards, Patrick Ohly
The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.