[B2G][Email]Activesync: Emails deleted on the web client do not sync to the device

VERIFIED FIXED in B2G C4 (2jan on)

Status

Firefox OS
Gaia::E-Mail
P3
normal
VERIFIED FIXED
6 years ago
6 years ago

People

(Reporter: Mila Davydova, Assigned: squib)

Tracking

unspecified
B2G C4 (2jan on)
x86_64
Windows 7

Firefox Tracking Flags

(blocking-basecamp:+)

Details

(Reporter)

Description

6 years ago
Unagi device, build #20121217070202

After deleting emails on the account through the web client, the deleted emails remain present on the device.

Repro Steps:
1. Install build # 20121217070202
2. Set up an ActiveSync account set up in the email app
3. Open the email account using a web client on a desktop
4. Delete a few emails from the Inbox folder
5. View the account Inbox in the Email List View
6. Sync the account

Actual result: 
Emails deleted on the web client are not deleted on the device after sync

Expected result: 
Emails deleted on the web client are also deleted on the device after sync

Notes:
Repro'd 3 times on multiple devices
Would not repro with a non ActiveSync account 
The issue occur in all folders
(Reporter)

Updated

6 years ago
Summary: [B2G][Email]Activesync: Emails deleted web client do not sync to the device → [B2G][Email]Activesync: Emails deleted on the web client do not sync to the device

Updated

6 years ago
Status: UNCONFIRMED → NEW
Ever confirmed: true

Updated

6 years ago
Component: Gaia → Gaia::E-Mail
QA Contact: nhirata.bugzilla
For future reference, please see: https://wiki.mozilla.org/Gaia/Email/RequiredBugInfo.  Knowing the domain in use and being able to see the logcat for the syncs can be very helpful in quickly ruling out specific problems.

I am able to reproduce on my hotmail account.  There do not appear to be any latency issues, as flag changes via the webmail interface propagate immediately.

We're going to need to build out the activesync fake-server and unit tests a fair bit to make sure this does not regress.
blocking-basecamp: --- → ?
Oh, and hitting 'empty folder' for the trash does not have any impact either, so it's not some weird deletion semantics issue.
(Assignee)

Comment 3

6 years ago
It's a typo in the code. The fix is easy (add two characters in the right spot), but the tests will take a bit longer.
I've given r=asuth for https://github.com/mozilla-b2g/gaia-email-libs-and-more/pull/105

The gameplan, from IRC, is to land the fix as soon as we are allowed, and then follow-up with unit test coverage as a high priority so we can be sure that this doesn't regress.  Since :squib has a branch with much of the unit test groundwork done already, we do not expect this to be to be a huge undertaking.
Assignee: nobody → squibblyflabbetydoo
Status: NEW → ASSIGNED
blocking-basecamp: ? → +
Priority: -- → P3
Target Milestone: --- → B2G C4 (2jan on)
in one of my testing profiles, I'm seeing:
ERR: onerror reporting: TypeError: blockInfo is null @ http://email.gaiamobile.org:8080/js/ext/gaia-email-opt.js : 25387

which maps to a call to _loadBlock, likely due to _findBlockInfoFromBlockId returning null when trying to map the block id back to a block in deleteMessageByServerId.  While I assume the ActiveSync deletion unit test will help with this, I'm going to add some coverage to test_folder_storage.js now since it should have coverage.
I added some unit tests on
https://github.com/mozilla-b2g/gaia-email-libs-and-more/pull/108

I think my problems were actually caused by my messing with device id's on bug 825538, so I don't think further follow-up is needed by that problem.  I also don't think we want to add a try guard or otherwise change the failure to a soft-fail at this point because I think we unfortunately do want accounts to wedge if the invariant gets violated.
(In reply to Andrew Sutherland (:asuth) from comment #7)
> I added some unit tests on
> https://github.com/mozilla-b2g/gaia-email-libs-and-more/pull/108

So can we close this bug?
(In reply to Vivien Nicolas (:vingtetun) from comment #8)
> So can we close this bug?

No, that pull request is just for some low level unit tests (and it's not yet r+).  We still *really* need the higher level ActiveSync tests so we can notice regressions in deletion behaviour.
landed the low level unit test coverage ONLY (high level tests landing soon, though):
https://github.com/mozilla-b2g/gaia-email-libs-and-more/pull/108
(Assignee)

Updated

6 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED

Comment 12

6 years ago
Verified fixed on Unagi build 20130112070202
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.