Ticket #997 (closed defect: fixed)

Opened 6 years ago

Last modified 6 years ago

[REGRESSION-TESTCASE] Initial slow-sync implementation missing

Reported by: henrik Owned by: dgollub
Priority: highest Milestone: OpenSync 0.39
Component: OpenSync: Engine Version: 0.38
Severity: blocker Keywords:
Cc: henrik@…

Description (last modified by felixmoeller) (diff)

As reported in bug #901, slow-sync sometimes fails.

As #901 is primarily about "late" slow-sync, a new ticket is hereby created for "initial" slow sync, as requested by dgollub.

Ticket 901 stated, that things where working for file-sync vs mozilla-sync and file-sync vs syncml, but failing for mozilla-sync vs syncml.

However, I have made several tests, and it seems that even without mozilla-sync, the bug is reproducible.

However, it does not seem to fail consistently.

Attached are three traces. (group creation and discovery is not covered in the traces)

To the best of my knowledge, all three have been created in the same way:

  • factory reset phone
  • create new group
  • discover
  • sync

In all three cases, we sync file-sync to syncml-obex-client.

One fails, two are working.

Again, to the best of my knowledge, all three have been created the same way.

/Henrik

Attachments

1_g1_fail.zip (38.9 KB) - added by henrik 6 years ago.
1_g4x_ok.zip (592.8 KB) - added by henrik 6 years ago.
2_g1_fail.zip (36.8 KB) - added by henrik 6 years ago.
2_g2_fail.zip (36.9 KB) - added by henrik 6 years ago.
3_g3_contact_fail.zip (35.8 KB) - added by henrik 6 years ago.
slowsync_on_firstsync.diff (2.0 KB) - added by dgollub 6 years ago.
Missing implementation to trigger a Slow-Sync on the first sync.
slowsync_on_firstsync_v2.diff (2.3 KB) - added by dgollub 6 years ago.
v1 was not complete. Timestamp didn't got stored - this would endup in triggering slow-syncs all the time

Change History

Changed 6 years ago by henrik

Changed 6 years ago by henrik

Changed 6 years ago by henrik

Changed 6 years ago by henrik

comment:1 Changed 6 years ago by dgollub

  • Status changed from new to assigned

comment:2 Changed 6 years ago by dgollub

  • Summary changed from Initial slow-sync sometimes fails to [NEEDINFO] Initial slow-sync sometimes fails

Without knowing the file-sync configuration - could you check if the file-sync is configured with a <Resource> containing <ObjType>data</ObjType?>? If so please reconfigure to <ObjType>contact</ObjType?> and try to reproduce the issue... Mixing ObjType contact and data can cause various undefined behavior which you might experience here... For more details see #992

comment:3 Changed 6 years ago by henrik

All four cases where done with the default file-sync config: <ObjType?>data</ObjType?> Please find attached a trace for <ObjType?>contact</ObjType?>

Memeber 1:

<config version="1.0">
  <Resources>
    <Resource>
      <Enabled>1</Enabled>
      <Formats>
        <Format>
          <Name>file</Name>
        </Format>
      </Formats>
      <ObjType>contact</ObjType>
      <Path>/home/Henrik/VCARD3</Path>
    </Resource>
  </Resources>
</config>

Member 2:

<config version="1.0">
  <AdvancedOptions>
      ...
  </AdvancedOptions>
  <Connection>
    <ActiveConnection>Bluetooth</ActiveConnection>
    <Bluetooth>
      <MAC>00:1C:D4:45:4F:6A</MAC>
      <RFCommChannel>10</RFCommChannel>
      <SDPUUID>00000002-0000-1000-8000-0002ee000002</SDPUUID>
    </Bluetooth>
    <USB>
      <VendorID>1234</VendorID>
      <ProductID>5678</ProductID>
      <Interface>2</Interface>
    </USB>
  </Connection>
  <Resources>
    <Resource>
      <Enabled>1</Enabled>
      <Formats>
        <Format>
          <Name>vcard21</Name>
        </Format>
      </Formats>
      <Name>Contacts</Name>
      <MIME></MIME>
      <ObjType>contact</ObjType>
      <Path></Path>
      <Url></Url>
    </Resource>
  </Resources>
</config>

Unfortunatly, the problem is still there...

Changed 6 years ago by henrik

comment:4 Changed 6 years ago by felixmoeller

  • Description modified (diff)

Changed 6 years ago by dgollub

Missing implementation to trigger a Slow-Sync on the first sync.

comment:5 Changed 6 years ago by dgollub

  • Priority changed from normal to highest
  • Severity changed from normal to blocker
  • Summary changed from [NEEDINFO] Initial slow-sync sometimes fails to Initial slow-sync implementation missing

For some reason the implementation to trigger a Slow-Sync on the first sync was missing in 0.3x ................ sorry - it really looks like we have only few plugins (only SyncML?) which doesn't need a hashtable?! Really crazy.

Changed 6 years ago by dgollub

v1 was not complete. Timestamp didn't got stored - this would endup in triggering slow-syncs all the time

comment:6 Changed 6 years ago by dgollub

  • Summary changed from Initial slow-sync implementation missing to [REGRESSION-TESTCASE] Initial slow-sync implementation missing

Fixed with r4496. I keep the ticket open until a regression testcase got written and committed.

comment:7 Changed 6 years ago by dgollub

  • Status changed from assigned to closed
  • Resolution set to fixed

Regression testcase got implemented and tested. r4471

comment:8 Changed 6 years ago by henrik

I confirm that this now works against my Nokia N95.

THANKS A LOT FOR THE FIX'''

(But see also #1003, which may or may not be related)

/H

comment:9 Changed 6 years ago by dgollub

  • Component changed from OpenSync to OpenSync: Engine
Note: See TracTickets for help on using tickets.