https://bugs.meego.com/show_bug.cgi?id=2786

pohly <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #3 from pohly <[email protected]> 2011-04-19 08:01:39 PDT ---
(In reply to comment #2)
> Not recording the final sync mode means that CLIENT_TEST_MODE=server can only
> pass client-test tests when CLIENT_TEST_NOCHECK_SYNCMODE=1 is used.
> 
> In addition, testComplexRefreshFromServerSemantic fails because the
> sysync::PEV_DSSTATS_L case in SyncContext.cpp only adds items deleted by us if
> SYNC_REFRESH_FROM_SERVER is detected.
> 
> That mode is not detected a) because there is no final sync mode and b) we 
> need
> to compare against SYNC_REFRESH_FROM_CLIENT in server mode.         

Fixed with multiple commits.

1. libsynthesis in meego.gitorious.org:

commit 398dbd1a4f1712dcea12f90fc6a9737fdf8845c2
Author: Patrick Ohly <[email protected]>
Date:   Tue Apr 19 16:49:43 2011 +0200

    server progress events: report stable sync mode

    In a client, PEV_ALERTED was reported to the app with the final sync
    mode. On the server, that was missing, partly because the
    determination of the final sync mode has to be delayed a bit.

    This patch moves the progress event into the one place that is called
    in all cases: TLocalEngineDS::changeState() for aNewState ==
    dssta_syncmodestable. There it is executed for client and server.

2. SyncEvolution:

commit aebba85c3104c28dca41351242a663403f6730ec
Author: Patrick Ohly <[email protected]>
Date:   Tue Apr 19 16:56:35 2011 +0200

    server sync session: detect final sync mode (BMC #2786)

    This patch relies on libsynthesis reporting a stable sync mode
    of each source in the PEV_ALERTED progress event. This was added
    recently to libsynthesis in server mode.

    This patch deals with a client that falls back to "delete data + slow
    sync" as a way of doing a refresh-from-server (as Synthesis engine
    itself does) at least in one case: server-alerted syncs know the originally
    requested sync mode and assume that a slow sync is the intended mode,
    which then gets translated back into refresh-from-server.

    A session with such a sync initiated by a client is still recorded as
    "slow sync".

-- 
Configure bugmail: https://bugs.meego.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching someone on the CC list of the bug.
_______________________________________________
Syncevolution-issues mailing list
[email protected]
http://lists.syncevolution.org/listinfo/syncevolution-issues

Reply via email to