I'm trying to write own SyncML server on basis of libsynthesis
(version 3.4.0.6, Linux ix86, Fedora 13).

Synchronization of Bookmarks from Nokia E65 does not work.
With DEMO server I'm getting response "System error" when
synchronization fails. With my version the last message is sent to
Synthesis engine, but no response data are returned up to
sysync::STEPCMD_DONE is returned. No error codes are returned
from  sysync::TEngineModuleBridge::SessionStep either, but I see
error 415 in session log generated by Synthesis engine.

stepCmd transitions from sysync::TEngineModuleBridge::SessionStep
ar as follows:

session_step: t=0.000004 err=0 : STEPCMD_GOTDATA ==> STEPCMD_OK
session_step: t=0.013181 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.022412 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.003081 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.002419 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.000028 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.001782 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.000234 err=0 : STEPCMD_STEP ==> STEPCMD_SENDDATA
session_step: t=0.000002 err=0 : STEPCMD_SENTDATA ==> STEPCMD_NEEDDATA
session_step: t=0.000004 err=0 : STEPCMD_GOTDATA ==> STEPCMD_OK
session_step: t=0.001729 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.023664 err=0 : STEPCMD_STEP ==> STEPCMD_OK
session_step: t=0.000004 err=0 : STEPCMD_STEP ==> STEPCMD_DONE

Note: t=<time in seconds> err=<return code>

How I can detect such problem and return reasonable response to the client
(perhaps Synthesis engine should do that instead of "eathing" client query
without any response)?

Andris

PS. Related fragments from session log:

   *
         o
           –
           [2010-06-01 13:36:13.906] 'RemoteDatastores' - Analyzing
           remote datastores [--][++] [->end]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F17>
           [->enclosing]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H15>

               +
                 +
                 –
                 [2010-06-01 13:36:13.906] 'RemoteDSDevInf' -
                 Registering remote Datastore from devInf [--][++]
                 [->end]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F18>
                 [->enclosing]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H17>

                     # /[2010-06-01 13:36:13.906]/ Remote Datastore
                       Name='./BrowserBookmarks',
                       DisplayName='Bookmarks', MaxGUIDSize=8
                     # /[2010-06-01 13:36:13.906]/ Preferred
                       Rx='text/x-vBookmark' version '1.0', preferred
                       Tx='text/x-vBookmark' version '1.0'
                     #
                       +
                       –
                       [2010-06-01 13:36:13.906] 'RemoteTypes' -
                       Analyzing remote types listed in datastore level
                       CTCap [--][++] [->end]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F19>
                       [->enclosing]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H18>

                           *
                             +
                             –
                             [2010-06-01 13:36:13.906] 'RemoteCTCap' -
                             Registering remote Type/Version from >=DS
                             1.2 style CTCap, type=text/x-vBookmark,
                             version=1.0 [--][++] [->end]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F20>
                             [->enclosing]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H19>

                                 o /[2010-06-01 13:36:13.906]/
                                   Registered Type 'text/x-vbookmark'
                                   Version='1.0', implemented by local
                                   type vbookmark, related to remote
                                   datastore './BrowserBookmarks'
                                 o /[2010-06-01 13:36:13.906]/ Field
                                   options after CTCap analyzing:
                                 o /[2010-06-01 13:36:13.906]/

                                   - REV                  : n/a          
maxoccur=0, maxsize=0 (unlimited)
                                   - SYNCLVL              : n/a          
maxoccur=0, maxsize=0 (unlimited)
                                   - TITLE                : n/a          
maxoccur=0, maxsize=0 (unlimited)
                                   - CATEGORIES           : n/a          
maxoccur=0, maxsize=0 (unlimited)
                                   - CLASS                : n/a          
maxoccur=0, maxsize=0 (unlimited)
                                   - URL                  : n/a          
maxoccur=0, maxsize=0 (unlimited)
                                   - NOTE                 : n/a          
maxoccur=0, maxsize=0 (unlimited)

                             –[2010-06-01 13:36:13.906] End of
                             'RemoteCTCap' [->top]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H20>
                             [->enclosing]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F19>
                           *
                             +
                             –
                             [2010-06-01 13:36:13.906] 'RemoteCTCap' -
                             Registering remote Type/Version from >=DS
                             1.2 style CTCap,
                             type=application/vnd.omads-folder+xml,
                             version=1.0 [--][++] [->end]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F21>
                             [->enclosing]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H19>

                                 o /[2010-06-01 13:36:13.906]/
                                   Registered Type
                                   'application/vnd.omads-folder+xml'
                                   Version='1.0', NOT implemented,
                                   related to remote datastore
                                   './BrowserBookmarks'
                             –[2010-06-01 13:36:13.906] End of
                             'RemoteCTCap' [->top]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H21>
                             [->enclosing]
                             
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F19>
                       –[2010-06-01 13:36:13.906] End of 'RemoteTypes'
                       [->top]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H19>
                       [->enclosing]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F18>
                     # /[2010-06-01 13:36:13.906]/ Type already
                       registered as 'text/x-vbookmark' Version='1.0'
                     # /[2010-06-01 13:36:13.906]/ Type already
                       registered as 'application/vnd.omads-folder+xml'
                       Version='1.0'
                     # /[2010-06-01 13:36:13.906]/ Type already
                       registered as 'text/x-vbookmark' Version='1.0'
                     # /[2010-06-01 13:36:13.906]/ Type already
                       registered as 'application/vnd.omads-folder+xml'
                       Version='1.0'
                 –[2010-06-01 13:36:13.906] End of 'RemoteDSDevInf'
                 [->top]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H18>
                 [->enclosing]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F17>
           –[2010-06-01 13:36:13.906] End of 'RemoteDatastores' [->top]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H17>
           [->enclosing]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F15>
         o /[2010-06-01 13:36:13.911]/ ##### IPNSyncAdmin (LNK):
           Session_SaveDeviceInfo: error code 0
     –[2010-06-01 13:36:13.911] End of 'DevInf_Analyze' [->top]
     
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H15>
     [->enclosing]
     
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F14>
   *
     +

–
[2010-06-01 13:36:14.543] 'processStatus' - Processing incoming Status [--][++] [->end] <file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F34> [->enclosing] <file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H28>

   * /[2010-06-01 13:36:14.544]/ Started processing Command 'Status'
     (incoming MsgID=2, CmdID=2)
   * /[2010-06-01 13:36:14.544]/ WARNING: RECEIVED NON-OK STATUS 415
     for command 'Results'
     
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#IO_1_5>
     (outgoing MsgID=1, CmdID=5)
   * /[2010-06-01 13:36:14.544]/ Found matching command 'Results' for
     Status
   * /[2010-06-01 13:36:14.544]/ Status: 415: originator exception
   *
     +
     –
     [2010-06-01 13:36:14.544] 'SessionAbort' - Aborting Session,
     Status=415, ProblemSource=REMOTE [--][++] [->end]
     
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F35>
     [->enclosing]
     
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H34>

         o /[2010-06-01 13:36:14.544]/ WARNING: Aborting Session with
           Reason Status 415 (REMOTE problem) ***
         o /[2010-06-01 13:36:14.544]/ --------------- Ignoring all
           commands in this message (after 0 sec. request processing, 0
           sec. total) with Status 514 (0=none) from here on
         o
           +
           –
           [2010-06-01 13:36:14.544] 'DSAbort' - Aborting datastore
           sync, abortStatusCode=415, localProblem=no, resumable=yes
           [--][++] [->end]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F36>
           [->enclosing]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H35>

               + /[2010-06-01 13:36:14.544]/ bookmarks: testState=FALSE
                 - expected state>='sync_set_ready', found
                 state=='server_answered_alert'
               +
                 +
                 –
                 [2010-06-01 13:36:14.544] 'SaveSuspendState' - Saving
                 state for suspend/resume, datastore=bookmarks [--][++]
                 [->end]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F37>
                 [->enclosing]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H36>

                     #
                       +
                       –
                       [2010-06-01 13:36:14.544] 'SaveResumeMarks' -
                       let implementation save resume info,
                       datastore=bookmarks [--][++] [->end]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F38>
                       [->enclosing]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H37>

                           * /[2010-06-01 13:36:14.544]/ SaveAdminData:
                             adding 0 entries from fTempGUIDMap as
                             mapentry_tempidmap
                           * /[2010-06-01 13:36:14.544]/
                             apiSaveAdminData: internal map table has 0
                             entries (normal and others)
                       –[2010-06-01 13:36:14.575] End of
                       'SaveResumeMarks' [->top]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H38>
                       [->enclosing]
                       
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F37>
                 –[2010-06-01 13:36:14.575] End of 'SaveSuspendState'
                 [->top]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H37>
                 [->enclosing]
                 
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F36>
               + /[2010-06-01 13:36:14.576]/ *************** Warning:
                 Datastore flagged aborted (after 0 sec. request
                 processing, 0 sec. total) with REMOTE Status 415
           –[2010-06-01 13:36:14.576] End of 'DSAbort' [->top]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H36>
           [->enclosing]
           
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F35>
     –[2010-06-01 13:36:14.576] End of 'SessionAbort' [->top]
     
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#H35>
     [->enclosing]
     
<file:///home/apavenis/Work/projects/SyncML/f13/log/sysynclib_uni_linux_20100601T103613Z_s3nWotsCUALsq1PZCDcGj728kSWU.html#F34>
   * /[2010-06-01 13:36:14.576]/ Status: processed, removed command
     'Results' from status wait queue
   * /[2010-06-01 13:36:14.576]/ Status: command 'Results' has handled
     status and allows to be deleted
   * /[2010-06-01 13:36:14.576]/ Deleted command 'Results' (outgoing
     MsgID=1, CmdID=5)
   * /[2010-06-01 13:36:14.576]/ Deleted command 'Status' (incoming
     MsgID=2, CmdID=2)

_______________________________________________
os-libsynthesis mailing list
[email protected]
http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis

Reply via email to