)]}'
{"oslo/messaging/_executors/impl_eventlet.py":[{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"1baa51f7eeffc6e85191842bdfba291d2c0f0d67","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"_eventlet_opts \u003d ["},{"line_number":27,"context_line":"    cfg.IntOpt(\u0027rpc_thread_pool_size\u0027,"},{"line_number":28,"context_line":"               default\u003d256,"},{"line_number":29,"context_line":"               help\u003d\u0027Size of RPC greenthread pool.\u0027),"},{"line_number":30,"context_line":"]"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9aa7fdbe_b896544a","line":28,"updated":"2014-10-24 16:40:55.000000000","message":"Hmmm, it\u0027d be really nice to have a much smarter pool_size that can adjust itself in a smarter fashion (instead of just being a hardcoded value, a smarter pool could expand/contract based on requests, system resources avaiable...)","commit_id":"70abe854208681b671468ad9ed0770b395cb6a10"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"8f06a9e788689b451cab2ee4c697c6f9e101498d","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"_eventlet_opts \u003d ["},{"line_number":27,"context_line":"    cfg.IntOpt(\u0027rpc_thread_pool_size\u0027,"},{"line_number":28,"context_line":"               default\u003d256,"},{"line_number":29,"context_line":"               help\u003d\u0027Size of RPC greenthread pool.\u0027),"},{"line_number":30,"context_line":"]"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9aa7fdbe_8ea22a49","line":28,"in_reply_to":"9aa7fdbe_6e8186c2","updated":"2014-10-24 18:04:16.000000000","message":"For example this could be the object/interface.\n\n  class RPCSizeCalculator(object):\n      def calculate(self):\n          return 256\n  \n      def predict(self, calculated_when, current):\n          return 128","commit_id":"70abe854208681b671468ad9ed0770b395cb6a10"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"5988c2148f853c3254d57aead38a11594ae66cac","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"_eventlet_opts \u003d ["},{"line_number":27,"context_line":"    cfg.IntOpt(\u0027rpc_thread_pool_size\u0027,"},{"line_number":28,"context_line":"               default\u003d256,"},{"line_number":29,"context_line":"               help\u003d\u0027Size of RPC greenthread pool.\u0027),"},{"line_number":30,"context_line":"]"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9aa7fdbe_6e8186c2","line":28,"in_reply_to":"9aa7fdbe_9886f0d9","updated":"2014-10-24 18:02:46.000000000","message":"Have the application that uses this provide an object that provides that information? Since this is application specific knowledge I would expect the application that uses these executors to know how to calculate that information. Maybe oslo.messaging should provide some \u0027estimation\u0027 classes that the application can use to help figure out this information so that it doesn\u0027t blow up the operating system it runs on....","commit_id":"70abe854208681b671468ad9ed0770b395cb6a10"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"f29bea34964716dc9407c40d359fd9684bbf835b","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"_eventlet_opts \u003d ["},{"line_number":27,"context_line":"    cfg.IntOpt(\u0027rpc_thread_pool_size\u0027,"},{"line_number":28,"context_line":"               default\u003d256,"},{"line_number":29,"context_line":"               help\u003d\u0027Size of RPC greenthread pool.\u0027),"},{"line_number":30,"context_line":"]"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9aa7fdbe_d8cf9854","line":28,"in_reply_to":"9aa7fdbe_b896544a","updated":"2014-10-24 16:44:05.000000000","message":"For example, in your commit u determined \u0027can end up hitting\nprocess limit on opened fds, which is 1024 by default on Linux\u0027 and this should be around 341 size pool, why could this code do that same calculation and adapt dynamically :)","commit_id":"70abe854208681b671468ad9ed0770b395cb6a10"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"f477a56086d6ee12c2cf0b4774e52afb3cc137e1","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"_eventlet_opts \u003d ["},{"line_number":27,"context_line":"    cfg.IntOpt(\u0027rpc_thread_pool_size\u0027,"},{"line_number":28,"context_line":"               default\u003d256,"},{"line_number":29,"context_line":"               help\u003d\u0027Size of RPC greenthread pool.\u0027),"},{"line_number":30,"context_line":"]"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9aa7fdbe_9886f0d9","line":28,"in_reply_to":"9aa7fdbe_d8cf9854","updated":"2014-10-24 16:47:38.000000000","message":"To make proper estimation, you would need to know in advance which resources will be needed for the thread requested to spawn on its peak. One thread can use no external resources, another one can hog half of open fd limit. So it\u0027s hard to make it smart enough to avoid manual setting of the value.","commit_id":"70abe854208681b671468ad9ed0770b395cb6a10"}]}
