{"push_id":999096930,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"c130a40023980d6ac0bf1e8e5832fe8c3bce5eb5","before":"6cd55c7be65952098b2f838f1cd060b83b1e0de7","commits":[{"sha":"c130a40023980d6ac0bf1e8e5832fe8c3bce5eb5","author":{"email":"3fb961a90e5f3afc9c69bc293a77eca2cf7682a0@google.com","name":"Bogdan Caprita"},"message":"services/device/deviced/internal/impl: simplify reaper and remove flakiness\n\nThe reaper initialization logic was too complicated and race-prone (apps\nfound to be dead when the reaper came up had two paths by which they\ncould be restarted --\nhttps://github.com/vanadium/issues/issues/1018). This CL removes the\nexplicit restarts that were happening at the end of newReaper(), and\nrelies exclusively on the polling loop in processStatusPolling() to\ndiscover restart candidates and restart them.\n\nAnother unrelated fix is to make the shutdown of the\nprocessStatusPolling loop thread-safe w.r.t. reaper commands (the old\ncode could result in sending on a closed channel, which panics).\n\nWhile at it, simplify the code by removing the code path that does\nreconciliation via the app cycle manager, since it's not used.\n\nUnrelated to the above, apply the sample fix to\nTestReapRestartsDaemonMode as in\nhttps://vanadium-review.googlesource.com/#/c/20162/ and re-enable it.\n\nChange-Id: I1b15b13fd6c13c67e90890039d3cfb2883e79708","distinct":true,"url":"https://api.github.com/repos/vanadium/go.ref/commits/c130a40023980d6ac0bf1e8e5832fe8c3bce5eb5"}]}