{"ref":"refs/heads/master","commits":[{"author":{"name":"Roland","email":"6265a4a07968a7c1df16a61004fb7191177cafd4@rkuhn.info"},"sha":"05461cd53170d7e0fffb5848c40beeeb4b3cd938","message":"fix log statement in ActorModelSpec","url":"https://api.github.com/repos/jboner/akka/commits/05461cd53170d7e0fffb5848c40beeeb4b3cd938"},{"author":{"name":"Roland","email":"6265a4a07968a7c1df16a61004fb7191177cafd4@rkuhn.info"},"sha":"1ef5145dc9b46bada744e915435d937310b02c3b","message":"fix hideous and well-hidden oversight\n\nThank you, Jenkins and CallingThreadDispatcher, for without you both I\nwould probably not have found this bug before the milestone release. So,\nwhat happened? Well, ActorModelSpec for the CallingThreadDispatcher\ntries to have an actor kill itself twice with InterruptedException (of\nall things!) and wants to verify that everything still works. Given the\nright timing (which was rare) the semantics of the\nCallingThreadDispatcher would mean that the actor would suspend itself\n(first failure), inform its supervisor (“/user”, not on CTD) and return\nto the spec. If the supervisor was too slow to finish the restart which\nincludes a resume which will process all messages enqueued meanwhile\nfrom the test BEFORE the test enqueued the second failure, the failure\nwould actually happen on the supervisor’s thread. Now\nInterruptedException is the ONLY exception which always gets passed up,\nand thus it is the only Exception which can ever occur genuinely within\na top-level supervisor which will trigger its restart: if it’s an\nunhandled one, the actor system will stop, and if it’s a handled one\nfrom a child there will be no problem.\n\nSo, having these very special circumstances combined just so, the\n“guardian” would restart, and after today’s changes that meant killing\nall its children. Boom.\n\nThe fix is of course trivial, as always. And the bug is extremely\nobvious, once found. Cost me five hours.","url":"https://api.github.com/repos/jboner/akka/commits/1ef5145dc9b46bada744e915435d937310b02c3b"}],"head":"1ef5145dc9b46bada744e915435d937310b02c3b","push_id":54006579,"size":2}