{"push_id":756927186,"size":3,"distinct_size":3,"ref":"refs/heads/fix_unbounded_parallelism","head":"b6f0f9b15073b9c09ca2b6df9abf3d84f4b965f9","before":"5ffea98d16c34b39695bb09a8a8df53cd1e1332d","commits":[{"sha":"6a48ab783c191e52fcb8d0fca502842f302e7df6","author":{"email":"0075a9f8a7f957b86f8cfb048a0269ab35a41c3a@gmail.com","name":"urmastalimaa"},"message":"Fix unbounded parallelism\n\nCreating new threads forces all thread-local state to be reinitialized.\nThis means creating new PG connections and AR pools and so on.\nMoreover, some requests timing out can lead to an explosion\nof parallelism which creates very many threads and as a result of this\nalso very many file handlers for amqp pipes and user connections (e.g PG).\n\nTherefore it is necessary to bound parallelism while still allowing\nunlimited reqres inside a responder.\n\nThis can be done by listening for RPC responses on a dedicated thread\nand moving consumer threads into a thread pool.","distinct":true,"url":"https://api.github.com/repos/salemove/freddy/commits/6a48ab783c191e52fcb8d0fca502842f302e7df6"},{"sha":"bd983f1eb6aac8ab3036ec3e775329b3c3f357f1","author":{"email":"0075a9f8a7f957b86f8cfb048a0269ab35a41c3a@gmail.com","name":"urmastalimaa"},"message":"Update readme","distinct":true,"url":"https://api.github.com/repos/salemove/freddy/commits/bd983f1eb6aac8ab3036ec3e775329b3c3f357f1"},{"sha":"b6f0f9b15073b9c09ca2b6df9abf3d84f4b965f9","author":{"email":"0075a9f8a7f957b86f8cfb048a0269ab35a41c3a@gmail.com","name":"urmastalimaa"},"message":"Bump version","distinct":true,"url":"https://api.github.com/repos/salemove/freddy/commits/b6f0f9b15073b9c09ca2b6df9abf3d84f4b965f9"}]}