{"push_id":2964866930,"size":2,"distinct_size":1,"ref":"refs/heads/selina","head":"808717871804e39e8e3bc8dbd8af0e898d84354f","before":"7a0ff253019004c8e540591e00677dfe819cb364","commits":[{"sha":"ee5c4a12b3b59cf41f3f9d38a659679fbd1adbc6","author":{"name":"jungkumseok","email":"7a48a82b57810028a046767e0537984fe63f4600@gmail.com"},"message":"updated .kill method in CodeEngine to broadcast exit message\nand kill its Code objects concurrently. There is a concurrency\nproblem with the .kill call and each of CodeEngine's\nreportStatus interval, which uses the pubsub.\n\nThe issue happens when the following happens:\n- reportStatus interval timer is cleared (by the .kill call)\n- pubsub is closed (by the .kill call)\n- the pending callback for reportStatus (that was already in\n  the event queue) fires, but since pubsub is closed it throws.\n\nWhile we can safely ignore this error (in this case),\nwe should still throw because there would be other cases\nwhere we want to be notified about the failure of a publish call.\n\nPutting an extra check in the publish call (to see if pubsub is open)\nwould be too expensive, as the check would happen for every\ninvocation of .publish(). It's probably better to just throw\nand handle the exception.\n\nIf we were to eliminate this concurrency issue, we need to\nredesign the Pubsub API - the current implementation does not take\ninto account multiple objects adding event handlers (subscriptions)\nto the Pubsub object; it assumes there is always a single object\naccessing the Pubsub. This is the reason CodeEngine and Code\nobjects also have to do bookkeeping and track their own subscription\nhandlers (and unsubscribe accordingly when it is going down)","distinct":false,"url":"https://api.github.com/repos/DependableSystemsLab/ThingsJS/commits/ee5c4a12b3b59cf41f3f9d38a659679fbd1adbc6"},{"sha":"808717871804e39e8e3bc8dbd8af0e898d84354f","author":{"name":"unknown","email":"ba3e4bbf54ee5241a7166040a637eabad4d04798@gmail.com"},"message":"Merge branch 'dev' into selina","distinct":true,"url":"https://api.github.com/repos/DependableSystemsLab/ThingsJS/commits/808717871804e39e8e3bc8dbd8af0e898d84354f"}]}
{"actor":{"display_login":"marusshi"}}