Activity log for bug #1309231

Date Who What changed Old value New value Message
2014-04-17 22:13:01 John Lenton bug added bug
2014-04-18 11:24:42 Launchpad Janitor branch linked lp:~chipaca/ubuntu-push/backoff-reautodial
2014-04-18 14:46:24 Launchpad Janitor branch linked lp:~chipaca/ubuntu-push/session-should-delay-flag
2014-04-18 21:16:36 Samuele Pedroni branch unlinked lp:~chipaca/ubuntu-push/backoff-reautodial
2014-04-21 13:15:10 John Lenton ubuntu-push: status Confirmed Fix Committed
2014-04-21 13:18:52 John Lenton bug task added ubuntu
2014-04-21 13:19:05 John Lenton affects ubuntu ubuntu-push (Ubuntu)
2014-04-21 13:19:59 John Lenton ubuntu-push (Ubuntu): status New In Progress
2014-04-21 13:20:02 John Lenton ubuntu-push (Ubuntu): assignee John Lenton (chipaca)
2014-04-21 13:20:05 John Lenton ubuntu-push (Ubuntu): importance Undecided High
2014-04-23 09:13:54 John Lenton description Client should exp backoff reconnect even when connect was successful. This would protect us from some situations (already arisen: a server bug that disconnects us hard, after accepting the connection). Client should exp backoff reconnect even when connect was successful. This would protect us from some situations (already arisen: a server bug that disconnects us hard, after accepting the connection). [Impact] ubuntu-push-client reattempts connection in a loop, driving load up, as well as disk usage (through the logs) and draining the battery. [Test Case] This test case demonstrates the problem by reproducing lp:1309237. You need: * a computer capable of running the ubuntu push server. * at least two devices using the stable image and that can talk to the computer over the network on a computer reachable from the devices, do: mkdir -p test-case-1309231/src/launchpad.net cd !$ bzr branch lp:ubuntu-push cd ubuntu-push make bootstrap sed -i~ -e 's/127.0.0.1//g' sampleconfigs/dev.json make run-server-dev on the devices, edit /etc/xdg/ubuntu-push-client/config.json (or copy it to ~phablet/.config/ubuntu-push-client/config.json and edit it there) so that "addr" points to the IP address of the computer, and port 9090; something like "addr": "192.168.1.1:9090" (note there is no https:// as the hosts discovery step is being skipped). Reboot the devices. Tailing ~phablet/.cache/upstart/ubuntu-push-client.log will show a series of rapid disconnects and reconnects; the output of the server will show a series of empty "registered" (as opposed to "registered" followed by a 256-byte hash). Look at the load on the devices. Be amazed. [Regression potential] If a device hits the connects-ok-but-is-then-disconnected-early situation and then enters deep sleep (or is otherwise unable to deliver a timely multi-second timeout), the client might see significant delays in reconnecting successfully, and that might mean they miss a notification that they would've otherwise received. It's rather far fetched, really, and a similar backoff is already in place for other less pathological paths.
2014-04-23 10:16:21 Dimitri John Ledkov nominated for series Ubuntu Trusty
2014-04-23 10:16:21 Dimitri John Ledkov bug task added ubuntu-push (Ubuntu Trusty)
2014-04-23 10:23:09 John Lenton bug added subscriber Ubuntu Stable Release Updates Team
2014-04-24 07:23:23 Chris Halse Rogers ubuntu-push (Ubuntu Trusty): status In Progress Fix Committed
2014-04-24 07:23:29 Chris Halse Rogers bug added subscriber SRU Verification
2014-04-24 07:23:32 Chris Halse Rogers tags verification-needed
2014-04-24 16:57:27 John Lenton tags verification-needed verification-done
2014-04-30 05:07:59 Launchpad Janitor branch linked lp:ubuntu/trusty-proposed/ubuntu-push
2014-05-01 15:33:24 Launchpad Janitor ubuntu-push (Ubuntu Trusty): status Fix Committed Fix Released
2014-05-01 15:33:43 Colin Watson removed subscriber Ubuntu Stable Release Updates Team
2014-05-05 13:26:05 Launchpad Janitor ubuntu-push (Ubuntu): status In Progress Fix Released
2014-05-06 12:41:20 John Lenton ubuntu-push: status Fix Committed Fix Released