)]}'
{"nova/network/security_group/neutron_driver.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5488a88d796d8770c655bb970bca5c342e899ca6","unresolved":false,"context_lines":[{"line_number":403,"context_line":"    def add_to_instance(self, context, instance, security_group_name):"},{"line_number":404,"context_line":"        \"\"\"Add security group to the instance.\"\"\""},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"        @utils.synchronized(instance.uuid, external\u003dTrue)"},{"line_number":407,"context_line":"        def _add_to_instance():"},{"line_number":408,"context_line":"            return self._do_add_to_instance(context, instance,"},{"line_number":409,"context_line":"                                            security_group_name)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_44c1e42d","line":406,"updated":"2015-08-03 14:27:39.000000000","message":"This blocks the API on a lock, which could cause it to wait for many other threads that are blocking on the same instance. We try to avoid that for API at all costs for performance.\n\nAlso note that external\u003dTrue doesn\u0027t mean that this lock exists across API workers in processes across machines. Anyone with multiple API nodes (which is almost everyone) won\u0027t benefit from this lock.","commit_id":"91e84315215a7a368b38ba8043fd8af787b368b3"}]}
