)]}'
{"nova/virt/powervm/exception.py":[{"author":{"_account_id":4601,"name":"Tiago Mello","email":"tmello@linux.vnet.ibm.com","username":"tmello"},"change_message_id":"cd70bf94a239fab8094f37743ccbfcf9e73d1793","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    pass"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"class PowerVMLPARStopTimeout(exception.NovaException):"},{"line_number":45,"context_line":"    message \u003d _(\"Operation timed out waiting for \""},{"line_number":46,"context_line":"                \"LPAR \u0027%(instance_name)s\u0027 to stop\")"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FN8U%3D","line":44,"updated":"2012-10-03 21:13:26.000000000","message":"Couldn\u0027t it be a generic timeout exception to be used also in other tasks other than \u0027stop\u0027. Also, we can \u0027power off\u0027\u0027 instead of \u0027stop\u0027. Maybe rename it to PowerVMLPARTimeout and them pass a %(task)s variable.","commit_id":"11dd41c199ed479f4d474b685cbf90ec11e768f2"},{"author":{"_account_id":4601,"name":"Tiago Mello","email":"tmello@linux.vnet.ibm.com","username":"tmello"},"change_message_id":"c0fc44242d25d6972033213d98271df1cd68e8fc","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    pass"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"class PowerVMLPARStopTimeout(exception.NovaException):"},{"line_number":45,"context_line":"    message \u003d _(\"Operation timed out waiting for \""},{"line_number":46,"context_line":"                \"LPAR \u0027%(instance_name)s\u0027 to stop\")"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FN78%3D","line":44,"in_reply_to":"AAAALH%2F%2FN8U%3D","updated":"2012-10-03 21:16:44.000000000","message":"we \u0027call\u0027 I meant.","commit_id":"11dd41c199ed479f4d474b685cbf90ec11e768f2"}],"nova/virt/powervm/operator.py":[{"author":{"_account_id":4601,"name":"Tiago Mello","email":"tmello@linux.vnet.ibm.com","username":"tmello"},"change_message_id":"cd70bf94a239fab8094f37743ccbfcf9e73d1793","unresolved":false,"context_lines":[{"line_number":380,"context_line":"        lpar_obj \u003d self.get_lpar(instance_name)"},{"line_number":381,"context_line":"        wait_inc \u003d 1  # seconds to wait between status polling"},{"line_number":382,"context_line":"        wait_time \u003d 0"},{"line_number":383,"context_line":"        while (lpar_obj[\u0027state\u0027] !\u003d \u0027Not Activated\u0027):"},{"line_number":384,"context_line":"            # wait up to (timeout) seconds for shutdown"},{"line_number":385,"context_line":"            if (wait_time \u003e timeout):"},{"line_number":386,"context_line":"                raise exception.PowerVMLPARStopTimeout("}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FN8s%3D","line":383,"updated":"2012-10-03 21:13:26.000000000","message":"Nit: parentheses are not required.","commit_id":"11dd41c199ed479f4d474b685cbf90ec11e768f2"},{"author":{"_account_id":4601,"name":"Tiago Mello","email":"tmello@linux.vnet.ibm.com","username":"tmello"},"change_message_id":"cd70bf94a239fab8094f37743ccbfcf9e73d1793","unresolved":false,"context_lines":[{"line_number":382,"context_line":"        wait_time \u003d 0"},{"line_number":383,"context_line":"        while (lpar_obj[\u0027state\u0027] !\u003d \u0027Not Activated\u0027):"},{"line_number":384,"context_line":"            # wait up to (timeout) seconds for shutdown"},{"line_number":385,"context_line":"            if (wait_time \u003e timeout):"},{"line_number":386,"context_line":"                raise exception.PowerVMLPARStopTimeout("},{"line_number":387,"context_line":"                        instance_name\u003dinstance_name)"},{"line_number":388,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FN8o%3D","line":385,"updated":"2012-10-03 21:13:26.000000000","message":"Same here.","commit_id":"11dd41c199ed479f4d474b685cbf90ec11e768f2"},{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"26fa7f6959e98fd64ab1df82599ce05ac29ad509","unresolved":false,"context_lines":[{"line_number":389,"context_line":""},{"line_number":390,"context_line":"            time.sleep(wait_inc)"},{"line_number":391,"context_line":"            wait_time +\u003d wait_inc"},{"line_number":392,"context_line":"            lpar_obj \u003d self.get_lpar(instance_name)"},{"line_number":393,"context_line":""},{"line_number":394,"context_line":"    def remove_lpar(self, instance_name):"},{"line_number":395,"context_line":"        \"\"\"Removes a LPAR."}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALH%2F%2FLs0%3D","line":392,"updated":"2012-10-08 17:56:32.000000000","message":"The way this loop is written it is going to end up waiting longer than timeout seconds.  I\u0027m not sure exactly how much longer ... but it\u0027s going to be (timeout seconds + however long it takes this loop to run timeout times) or so.  A simple fix is to make the comparison be between the current time and the start time until that\u0027s greater than the timeout.","commit_id":"1b6ac13572b35374ce4d8610270bbef844573534"},{"author":{"_account_id":5371,"name":"Mathew Odden","email":"locke105@gmail.com","username":"locke105"},"change_message_id":"c1bf0c8d2b6825477325f3615a934b86558effb3","unresolved":false,"context_lines":[{"line_number":389,"context_line":""},{"line_number":390,"context_line":"            time.sleep(wait_inc)"},{"line_number":391,"context_line":"            wait_time +\u003d wait_inc"},{"line_number":392,"context_line":"            lpar_obj \u003d self.get_lpar(instance_name)"},{"line_number":393,"context_line":""},{"line_number":394,"context_line":"    def remove_lpar(self, instance_name):"},{"line_number":395,"context_line":"        \"\"\"Removes a LPAR."}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALH%2F%2FLmw%3D","line":392,"in_reply_to":"AAAALH%2F%2FLs0%3D","updated":"2012-10-08 20:23:37.000000000","message":"Good catch. Working on it now.","commit_id":"1b6ac13572b35374ce4d8610270bbef844573534"}]}
