{"push_id":1042545677,"size":9,"distinct_size":5,"ref":"refs/heads/close_test","head":"6e37d2f99bf2fece3172b4fdd2ec70b65f20609f","before":"be75627a65a5863cba31ca7522bf350d97612e85","commits":[{"sha":"9001411ad6214773bca8e04ad5a866c9e6f095ed","author":{"email":"09aa524fb1e1ba6416355a63919894a109767f81@uber.com","name":"Prashant Varanasi"},"message":"Verify no state leaks (e.g. connections) in TestServer","distinct":false,"url":"https://api.github.com/repos/uber/tchannel-go/commits/9001411ad6214773bca8e04ad5a866c9e6f095ed"},{"sha":"65cbb452c61a7d40bcac152b4fe2424544560836","author":{"email":"09aa524fb1e1ba6416355a63919894a109767f81@uber.com","name":"Prashant Varanasi"},"message":"Print stacks if frame pool has leaked frames","distinct":false,"url":"https://api.github.com/repos/uber/tchannel-go/commits/65cbb452c61a7d40bcac152b4fe2424544560836"},{"sha":"adb9484b52c49da3fdffd5f08d651f045d2f79b6","author":{"email":"64b2b6d12bfe4baae7dad3d018f8cbf6b0e7a044@prashantv.com","name":"Prashant Varanasi"},"message":"Merge pull request #290 from uber/no_leak_test\n\nVerify no state leaks (e.g. connections) in TestServer","distinct":false,"url":"https://api.github.com/repos/uber/tchannel-go/commits/adb9484b52c49da3fdffd5f08d651f045d2f79b6"},{"sha":"39d4acc4a2ebf1ea43b6538733e0b335033fb17b","author":{"email":"64b2b6d12bfe4baae7dad3d018f8cbf6b0e7a044@prashantv.com","name":"Prashant Varanasi"},"message":"Merge pull request #287 from uber/frame_pool\n\nPrint stacks if frame pool has leaked frames","distinct":false,"url":"https://api.github.com/repos/uber/tchannel-go/commits/39d4acc4a2ebf1ea43b6538733e0b335033fb17b"},{"sha":"2452b4c59e3ccb2f503bb4cc7e75a270ede11c1b","author":{"email":"09aa524fb1e1ba6416355a63919894a109767f81@uber.com","name":"Prashant Varanasi"},"message":"Add test to trigger races between incoming calls and Close","distinct":true,"url":"https://api.github.com/repos/uber/tchannel-go/commits/2452b4c59e3ccb2f503bb4cc7e75a270ede11c1b"},{"sha":"4971e19dbe019bb6365bf6429ad1228efa8b8846","author":{"email":"09aa524fb1e1ba6416355a63919894a109767f81@uber.com","name":"Prashant Varanasi"},"message":"Fix data race on incoming calls/pings and Close\n\nIf we receive an incoming call while the connection is active,\nbut the connection starts closing before we've added the exchange\nthen we trigger a race between the sendChRef.Add and Wait.\n\nSee https://github.com/uber/tchannel-go/issues/262 for more info.\n\nWe fix this race by ensuring that anything that may trigger a new\nexchange or use sendCh will increment an atomic int, and if the atomic\nint is negative, stops processing. We defer a decrement to the atomic\nint once the method is complete.\n\nIn the Close path, we ensure that we only close the channel after\nensuring that there are no pending methods that may use sendCh.","distinct":true,"url":"https://api.github.com/repos/uber/tchannel-go/commits/4971e19dbe019bb6365bf6429ad1228efa8b8846"},{"sha":"0b2d5a74bfb151744b3b068e95e492086db39e00","author":{"email":"09aa524fb1e1ba6416355a63919894a109767f81@uber.com","name":"Prashant Varanasi"},"message":"Fix race on RemotePeerInfo\n\nSee issue for more info:\nhttps://github.com/uber/tchannel-go/issues/273","distinct":true,"url":"https://api.github.com/repos/uber/tchannel-go/commits/0b2d5a74bfb151744b3b068e95e492086db39e00"},{"sha":"2ac035281ac71726e2c12121234b8043a3ee5664","author":{"email":"09aa524fb1e1ba6416355a63919894a109767f81@uber.com","name":"Prashant Varanasi"},"message":"Increase CallEcho timeout to see if it fixes flakes","distinct":true,"url":"https://api.github.com/repos/uber/tchannel-go/commits/2ac035281ac71726e2c12121234b8043a3ee5664"},{"sha":"6e37d2f99bf2fece3172b4fdd2ec70b65f20609f","author":{"email":"09aa524fb1e1ba6416355a63919894a109767f81@uber.com","name":"Prashant Varanasi"},"message":"Update TestRaceExchangesWithClose to use testutils.TestServer","distinct":true,"url":"https://api.github.com/repos/uber/tchannel-go/commits/6e37d2f99bf2fece3172b4fdd2ec70b65f20609f"}]}