)]}'
{"keystone/common/environment/eventlet_server.py":[{"author":{"_account_id":13055,"name":"Alexander Makarov","email":"ajiekcahdp.makapob@gmail.com","username":"amakarov"},"change_message_id":"837bf94ea16aa7d0927c27d56a131485149abc4c","unresolved":false,"context_lines":[{"line_number":58,"context_line":"class Server(object):"},{"line_number":59,"context_line":"    \"\"\"Server class to manage multiple WSGI sockets and applications.\"\"\""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def __init__(self, application, host\u003dNone, port\u003dNone, num_threads\u003d1000,"},{"line_number":62,"context_line":"                 keepalive\u003dFalse, keepidle\u003dNone):"},{"line_number":63,"context_line":"        self.application \u003d application"},{"line_number":64,"context_line":"        self.host \u003d host or \u00270.0.0.0\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_8fadd29d","line":61,"updated":"2015-03-03 15:17:12.000000000","message":"Please revert this parameter rename.","commit_id":"4b1333c073017687216db12ba8fdba4fe79cf86d"},{"author":{"_account_id":7293,"name":"Elena Ezhova","email":"ezhovaelena19@gmail.com","username":"elena"},"change_message_id":"318b2c1af5ffaac504f51003e5c18b64b6adcb76","unresolved":false,"context_lines":[{"line_number":58,"context_line":"class Server(object):"},{"line_number":59,"context_line":"    \"\"\"Server class to manage multiple WSGI sockets and applications.\"\"\""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def __init__(self, application, host\u003dNone, port\u003dNone, num_threads\u003d1000,"},{"line_number":62,"context_line":"                 keepalive\u003dFalse, keepidle\u003dNone):"},{"line_number":63,"context_line":"        self.application \u003d application"},{"line_number":64,"context_line":"        self.host \u003d host or \u00270.0.0.0\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_60da6b4c","line":61,"in_reply_to":"ba7be1f8_8a0b0023","updated":"2015-03-03 15:56:26.000000000","message":"Done","commit_id":"4b1333c073017687216db12ba8fdba4fe79cf86d"},{"author":{"_account_id":7293,"name":"Elena Ezhova","email":"ezhovaelena19@gmail.com","username":"elena"},"change_message_id":"7f1235a2ad074257bbe370ec8b12eae34d92caf0","unresolved":false,"context_lines":[{"line_number":58,"context_line":"class Server(object):"},{"line_number":59,"context_line":"    \"\"\"Server class to manage multiple WSGI sockets and applications.\"\"\""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def __init__(self, application, host\u003dNone, port\u003dNone, num_threads\u003d1000,"},{"line_number":62,"context_line":"                 keepalive\u003dFalse, keepidle\u003dNone):"},{"line_number":63,"context_line":"        self.application \u003d application"},{"line_number":64,"context_line":"        self.host \u003d host or \u00270.0.0.0\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_8a0b0023","line":61,"in_reply_to":"ba7be1f8_8fadd29d","updated":"2015-03-03 15:46:28.000000000","message":"I thought that \"threads\" doesn\u0027t really reflect the parameter\u0027s semantics, as it actually stores the number of threads. But, if that is considered an unrelated change, I\u0027ll revert it.","commit_id":"4b1333c073017687216db12ba8fdba4fe79cf86d"},{"author":{"_account_id":13055,"name":"Alexander Makarov","email":"ajiekcahdp.makapob@gmail.com","username":"amakarov"},"change_message_id":"837bf94ea16aa7d0927c27d56a131485149abc4c","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        self.port \u003d port or 0"},{"line_number":66,"context_line":"        self.num_threads \u003d num_threads"},{"line_number":67,"context_line":"        # Pool for a green thread in which wsgi server will be running"},{"line_number":68,"context_line":"        self.pool \u003d eventlet.GreenPool(10)"},{"line_number":69,"context_line":"        self.socket_info \u003d {}"},{"line_number":70,"context_line":"        self.greenthread \u003d None"},{"line_number":71,"context_line":"        self.do_ssl \u003d False"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_afca964c","line":68,"updated":"2015-03-03 15:17:12.000000000","message":"This value is better be extracted to a constant","commit_id":"4b1333c073017687216db12ba8fdba4fe79cf86d"},{"author":{"_account_id":7293,"name":"Elena Ezhova","email":"ezhovaelena19@gmail.com","username":"elena"},"change_message_id":"7f1235a2ad074257bbe370ec8b12eae34d92caf0","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        self.port \u003d port or 0"},{"line_number":66,"context_line":"        self.num_threads \u003d num_threads"},{"line_number":67,"context_line":"        # Pool for a green thread in which wsgi server will be running"},{"line_number":68,"context_line":"        self.pool \u003d eventlet.GreenPool(10)"},{"line_number":69,"context_line":"        self.socket_info \u003d {}"},{"line_number":70,"context_line":"        self.greenthread \u003d None"},{"line_number":71,"context_line":"        self.do_ssl \u003d False"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_ca37b8e1","line":68,"in_reply_to":"ba7be1f8_afca964c","updated":"2015-03-03 15:46:28.000000000","message":"OK, I\u0027ll make it a constant.","commit_id":"4b1333c073017687216db12ba8fdba4fe79cf86d"},{"author":{"_account_id":7293,"name":"Elena Ezhova","email":"ezhovaelena19@gmail.com","username":"elena"},"change_message_id":"318b2c1af5ffaac504f51003e5c18b64b6adcb76","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        self.port \u003d port or 0"},{"line_number":66,"context_line":"        self.num_threads \u003d num_threads"},{"line_number":67,"context_line":"        # Pool for a green thread in which wsgi server will be running"},{"line_number":68,"context_line":"        self.pool \u003d eventlet.GreenPool(10)"},{"line_number":69,"context_line":"        self.socket_info \u003d {}"},{"line_number":70,"context_line":"        self.greenthread \u003d None"},{"line_number":71,"context_line":"        self.do_ssl \u003d False"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba7be1f8_a0e70311","line":68,"in_reply_to":"ba7be1f8_ca37b8e1","updated":"2015-03-03 15:56:26.000000000","message":"Done","commit_id":"4b1333c073017687216db12ba8fdba4fe79cf86d"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"e2313758f8119a881686c12d98a61bb29860b053","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"POOL_SIZE \u003d 10"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"class EventletFilteringLogger(loggers.WritableLogger):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_54460450","line":36,"updated":"2015-03-08 15:35:16.000000000","message":"Why 10? add a comment.","commit_id":"fd2e6c300529ae4431abb4f10d8895fcf63299d4"},{"author":{"_account_id":7293,"name":"Elena Ezhova","email":"ezhovaelena19@gmail.com","username":"elena"},"change_message_id":"8a1c58a01bce89e41fc5d86b7a6f0f25cbcb772e","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"POOL_SIZE \u003d 10"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"class EventletFilteringLogger(loggers.WritableLogger):"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_506174a7","line":36,"in_reply_to":"9a80dd14_54460450","updated":"2015-03-10 09:17:27.000000000","message":"Well, the size of 10 is not obligatory and can be reduced even to 1. The reason is that now this pool is used only to spawn a single green thread in which a wsgi server is running. \n\nIn case we have more than one worker, then the parent process would fork and each process would have its own copy of a pool. And this copy should not include any greenthread object as the spawn is done after the fork.\n\nSo, we can go with the size of 1 as I\u0027ve said. I\u0027ll make a change and add a comment.","commit_id":"fd2e6c300529ae4431abb4f10d8895fcf63299d4"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"c581d0f39bbc8547e3324173aafd318efc6eed34","unresolved":false,"context_lines":[{"line_number":180,"context_line":"        logger \u003d log.getLogger(\u0027eventlet.wsgi.server\u0027)"},{"line_number":181,"context_line":"        try:"},{"line_number":182,"context_line":"            eventlet.wsgi.server(socket, application,"},{"line_number":183,"context_line":"                                 max_size\u003dself.threads,"},{"line_number":184,"context_line":"                                 log\u003dEventletFilteringLogger(logger),"},{"line_number":185,"context_line":"                                 debug\u003dFalse)"},{"line_number":186,"context_line":"        except greenlet.GreenletExit:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_b41e605d","line":183,"updated":"2015-03-08 15:18:22.000000000","message":"is max_size (Maximum number of client connections opened at any time by this server.) the same as thread pool size?","commit_id":"fd2e6c300529ae4431abb4f10d8895fcf63299d4"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"e2313758f8119a881686c12d98a61bb29860b053","unresolved":false,"context_lines":[{"line_number":180,"context_line":"        logger \u003d log.getLogger(\u0027eventlet.wsgi.server\u0027)"},{"line_number":181,"context_line":"        try:"},{"line_number":182,"context_line":"            eventlet.wsgi.server(socket, application,"},{"line_number":183,"context_line":"                                 max_size\u003dself.threads,"},{"line_number":184,"context_line":"                                 log\u003dEventletFilteringLogger(logger),"},{"line_number":185,"context_line":"                                 debug\u003dFalse)"},{"line_number":186,"context_line":"        except greenlet.GreenletExit:"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a80dd14_f442983c","line":183,"in_reply_to":"9a80dd14_b41e605d","updated":"2015-03-08 15:35:16.000000000","message":"I checked, and eventlet creates a GreenPool(max_size), so should be the same. Also, the default is 1024.","commit_id":"fd2e6c300529ae4431abb4f10d8895fcf63299d4"}]}
