Uploaded image for project: 'Nuxeo Drive '
  1. Nuxeo Drive
  2. NXDRIVE-599

Fix duplicate file synchronization with InterfaceError

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.1.316, 2.1.427
    • Fix Version/s: 2.1.818
    • Component/s: Synchronizer
    • Backlog priority:
      700
    • Sprint:
      nxfit 8.3.6, nxfit 8.3.7, nxfit 8.4.2, nxfit 8.4.1, nxfit 8.4.3
    • Story Points:
      5

      Description

      Here is some analysis of the datas provided:

      Checking the ndrive_638f7da128a211e696aa0019b915f944.db file,

      Last error details column shows the following:
      InterfaceError('Error binding parameter 0 - probably unsupported type.',)

      for those files (mentioned in the previous update):

      • TestFile1503.txt
      • TestFile1765.txt
      • TestFile1825.txt
      • TestFile1862.txt
      • TestFile637.txt

      The version remained 0 for all those files.

      Apart from the error column, those files have entries similar to correctly synchronized files.

      Further analysis show in the logs that there is indeed 2 attempts of synchronization for the mentioned files (here TestFile1503.txt):

      2016-06-02 17:23:42,727 1896 4084 TRACE    nxdrive.engine.processor Calling <bound method Processor._synchronize_locally_created of <nxdrive.engine.processor.Processor object at 0x05F3E210>> on doc pair StateRow[4567](Local: u'/TEST2USER user2/newsetfiles/TestFile1503.txt', Remote: None, Local state: created, Remote state: unknown, State: locally_created)
      2016-06-02 17:23:42,729 1896 4084 TRACE    nxdrive.engine.processor Soft locking: /TEST2USER user2/newsetfiles/TestFile1503.txt
      2016-06-02 17:23:43,398 1896 4084 DEBUG    nxdrive.engine.processor Creating remote document 'TestFile1503.txt' in folder 'newsetfiles'
      ...
      2016-06-02 18:01:25,145 1896 4084 TRACE    nxdrive.engine.processor Calling <bound method Processor._synchronize_locally_created of <nxdrive.engine.processor.Processor object at 0x05F3E210>> on doc pair StateRow[4567](Local: u'/TEST2USER user2/newsetfiles/TestFile1503.txt', Remote: defaultFileSystemItemFactory#default#13f84291-f93b-4f12-bb37-ea78b628d3d6, Local state: created, Remote state: unknown, State: locally_created)
      2016-06-02 18:01:25,145 1896 4084 TRACE    nxdrive.engine.processor Soft locking: /TEST2USER user2/newsetfiles/TestFile1503.txt
      2016-06-02 18:01:25,270 1896 4084 DEBUG    nxdrive.engine.processor Creating remote document 'TestFile1503.txt' in folder 'newsetfiles
      

      with the first one containing:

      2016-06-02 17:23:46,325 1896 4084 DEBUG    nxdrive.engine.workers Increasing error [SYNC HANDLER: _synchronize_locally_created] ("InterfaceError('Error binding parameter 0 - probably unsupported type.',)") for StateRow[4567](Local: u'/TEST2USER user2/newsetfiles/TestFile1503.txt', Remote: None, Local state: created, Remote state: unknown, State: locally_created)
      

      A correctly synchronized file has:

      Local state: synchronized, Remote state: modified, State: synchronized
      

      After checking with engineering, InterfaceError is related to SQLite and because of this the client cannot write the synchronized status. Thus it is twice synchronized when attempting for the second time.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 2 days
                2d