Closed Bug 1086434 Opened 10 years ago Closed 10 years ago

Having open multiple outgoing call windows in the retry/cancel state makes the user unable to make/receive another call

Categories

(Hello (Loop) :: Client, defect, P1)

x86_64
Windows 7
defect
Points:
1

Tracking

(firefox34+ verified, firefox35+ verified, firefox36+ verified)

VERIFIED FIXED
mozilla36
Iteration:
36.2
Tracking Status
firefox34 + verified
firefox35 + verified
firefox36 + verified
backlog Fx34+

People

(Reporter: pauly, Assigned: standard8)

References

Details

Attachments

(1 file)

STR:
1. Start 2 FF profiles and login with 2 FxA accounts on each
2. From the 1st account call the second one
3. Press 'Cancel' in the incoming call window on the second account so that the retry/cancel is displayed in the outgoing call window on the first account 
4. Repeat steps 2-3 until you got 4 retry/cancel windows
5. Try to make another call

Actual results:
Unable to make another call from the 1st account. Nothing happens when clicking on the green call button. The 1st account is also no longer able to receive calls.
backlog: --- → Fx35+
Priority: -- → P1
I've dug into this a bit. The root cause is that for outgoing calls we're generating a url to open the window where the url is:

about:loop:conversation#outgoing/<id>

The <id> is a random number from 1 to 10. The code that opens the conversation window will switch to an existing window if the url is the same.

Hence, once you get about 3-5 windows open you're highly likely to get the same random number and the window "fails" to open.

Additionally, in this case, you the "user busy" code is also stuck in the busy state, so you can't open any more windows until you close the one with the original number.

Really, we should do a wider upgrade of how we fix our urls in the conversation window - so setting this dependent on bug 1090209.
Depends on: 1090209
Bug 1090209 will fix this properly by completely rewriting the id code that we use for windows.

This fix is mainly intended beta-only as I'm currently working on bug 1090209 - though we'll land it everywhere for testing & sanity purposes whilst we get bug 1090209 out.
Attachment #8512797 - Flags: review?(dmose)
Assignee: nobody → standard8
Iteration: --- → 36.2
Points: --- → 1
Comment on attachment 8512797 [details] [diff] [review]
Temporarily make the random number a big number whilst we fix the issue elsewhere.

r=dmose
Attachment #8512797 - Flags: review?(dmose) → review+
[Tracking Requested - why for this release]: This could cause a user to have not closed an existing conversation window, but then not be able to open another one. There's approx a 1 in 10 chance of this happening.
Comment on attachment 8512797 [details] [diff] [review]
Temporarily make the random number a big number whilst we fix the issue elsewhere.

I'll land this on fx-team as soon as it re-opens, getting on the radar for now.

Approval Request Comment
[Feature/regressing bug #]: Direct Calling implementation for Loop
[User impact if declined]: There's a 1 in 10 chance that the user might try to open a second conversation window and not be able to, with no indication as to why. The user would have to close the other window(s) first, which they might not realise to do.
[Describe test coverage new/current, TBPL]: This is changing an integer that is randomly generated and inserted into a url and I hadn't realised that it needed to be a different url for each window. Hence no easy test coverage as we're dealing with random numbers. We can obviously test on landing.
[Risks and why]: Low. Simple change to increase the randomness and reduce the likelyhood of this happening to approx 1 in 100 million. Bug 1090209 will implement the longer term fix probably from 35 onwards.
[String/UUID change made/needed]: None.
Attachment #8512797 - Flags: approval-mozilla-beta?
Attachment #8512797 - Flags: approval-mozilla-aurora?
backlog: Fx35+ → Fx34+
https://hg.mozilla.org/integration/fx-team/rev/160e9f511375
Target Milestone: --- → mozilla36
Hi Pauly, Can you test/verify this today with today's Nightly?  Thanks!
Flags: needinfo?(paul.silaghi)
Works fine with more than 20 retry/cancel windows open.
36.0a1 (2014-10-29) Win 7
Status: RESOLVED → VERIFIED
Flags: needinfo?(paul.silaghi)
Comment on attachment 8512797 [details] [diff] [review]
Temporarily make the random number a big number whilst we fix the issue elsewhere.

Beta+
Aurora+
Attachment #8512797 - Flags: approval-mozilla-beta?
Attachment #8512797 - Flags: approval-mozilla-beta+
Attachment #8512797 - Flags: approval-mozilla-aurora?
Attachment #8512797 - Flags: approval-mozilla-aurora+
Flags: qe-verify+
QA Contact: anthony.s.hughes → paul.silaghi
Verified on aurora and beta from tbpl builds, Linux.
Verified fixed FF 34b9, 35.0a2 (2014-11-14) Win 7
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: