On Wed, 2009-08-12 at 17:40 +0100, Lukas Zeller wrote:
> I just saw your patch:
> 
> > slow sync: avoid empty anchors, that confuses ScheduleWorld
> >
> > This patch fixes http://bugzilla.moblin.org/show_bug.cgi?id=4703,
> > "ScheduleWorld: delete on server can not sync to client (after doing  
> > slow sync)".
> >
> > Somehow the ScheduleWorld server has problems with <last></last>.
> > Saving the mapping on the server fails in that case. Mark called
> > an empty anchor string invalid.
> >
> > I don't agree with that and think this issue should be fixed on
> > the server, but as it can be worked around easily (and perhaps
> > more quickly) on the client side, here's the patch for it.
> >
> > Instead of "" it now uses "no local anchor". For symmetry reasons
> > (not required to solve this problem) the last remote anchor is
> > set to "no remote anchor".
> 
> I'm a bit confused, because I don't see how an empty <last></last> can  
> be created at all. The <last> tag is optional within <anchor>, and it  
> is therefore created using newPCDataOptString() in newMetaAnchor(),  
> which does not create the <last> element at all when the input string  
> is missing or empty. So IMHO the engine NEVER sends a <last></last>.

Not sure. Mark mentioned <last></last> as the root cause; I don't
remember whether I checked the outgoing messages myself. But I could
reproduce the problem and setting the anchor as in the patch fixed it.

> Still, if the problem is that Scheduleworld also cannot handle a  
> missing <last> tag,

Perhaps that was the problem.

Anyway, ScheduleWorld can handle that now, so it is safe to not merge
the patch and remove it also in our git repo.

> Reason is that these variables have the semantic meaning of "no  
> anchor" = "empty string". Changing that could mess up code testing  
> these for emptyness e.g. to detect first-time-sync status (I haven't  
> checked if that is really used somewhere, but it would be OK to do so).

I think the logic is the other way around: if first sync, then clear the
anchor. At least that is what I patched in the code. "syncevolution"
still reports "first time sync" despite the patch, so I don't think it
broke anything. We should remove it nevertheless - after 0.9, which I
tagged and compiled today.

-- 
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.



_______________________________________________
os-libsynthesis mailing list
os-libsynthesis@synthesis.ch
http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis

Reply via email to