)]}'
{"oslo/messaging/_drivers/impl_qpid.py":[{"author":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"change_message_id":"052d320e97de98b06ba4aa93efdbfcc198452a39","unresolved":false,"context_lines":[{"line_number":301,"context_line":"                \u0027callback\u0027: self.callback,"},{"line_number":302,"context_line":"            }"},{"line_number":303,"context_line":"            # this will call connect():"},{"line_number":304,"context_line":"            self.__init__(conf\u003dself.conf, **params)"},{"line_number":305,"context_line":"        else:"},{"line_number":306,"context_line":"            super(FanoutConsumer, self).reconnect(session)"},{"line_number":307,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2BMXc%3D","line":304,"updated":"2013-11-29 11:52:35.000000000","message":"God, I shudder every time I see this chaining up to __init__ here\n\nThe fundamental difference between the two topology versions here is that we need a new UUID on reconnect for v1 right ?\n\nMaybe the comment should be:\n\n  # Generate a new UUID and call connect()\n  self.__init__(...)\n\nLonger term, I wonder would it be good to split the class into V1FanoutConsumer and V2FanoutConsumer and the latter wouldn\u0027t override connect() at all","commit_id":"3805ec6dc12891a16aa9e07f463f1c5a76a93514"},{"author":{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},"change_message_id":"5bc8289a75c58be08d9f9a061c41fb2866ad78b1","unresolved":false,"context_lines":[{"line_number":301,"context_line":"                \u0027callback\u0027: self.callback,"},{"line_number":302,"context_line":"            }"},{"line_number":303,"context_line":"            # this will call connect():"},{"line_number":304,"context_line":"            self.__init__(conf\u003dself.conf, **params)"},{"line_number":305,"context_line":"        else:"},{"line_number":306,"context_line":"            super(FanoutConsumer, self).reconnect(session)"},{"line_number":307,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2BENg%3D","line":304,"in_reply_to":"AAAATn%2F%2BFQE%3D","updated":"2013-12-02 22:02:01.000000000","message":"+1 Agree completely - will re-submit new patch with that fix.","commit_id":"3805ec6dc12891a16aa9e07f463f1c5a76a93514"},{"author":{"_account_id":8784,"name":"Gordon Sim","email":"gsim@redhat.com","username":"gordonsim"},"change_message_id":"e9487e4d39ce10b26313fdbc8c4b5edb17477232","unresolved":false,"context_lines":[{"line_number":301,"context_line":"                \u0027callback\u0027: self.callback,"},{"line_number":302,"context_line":"            }"},{"line_number":303,"context_line":"            # this will call connect():"},{"line_number":304,"context_line":"            self.__init__(conf\u003dself.conf, **params)"},{"line_number":305,"context_line":"        else:"},{"line_number":306,"context_line":"            super(FanoutConsumer, self).reconnect(session)"},{"line_number":307,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2BFQE%3D","line":304,"in_reply_to":"AAAATn%2F%2BMXc%3D","updated":"2013-12-02 18:40:38.000000000","message":"In my view a cleaner fix to the original problem (https://bugs.launchpad.net/oslo/+bug/1180166) would be to avoid specifying the link name at all for FanoutConsumer and then remove the  FanoutConsumer.reconnect() override entirely. I.e. in Consumer__init__() if link_name is None, don\u0027t add the name entry within the links nested map (or phrasing the other way, only add a link name if one is actually given).","commit_id":"3805ec6dc12891a16aa9e07f463f1c5a76a93514"},{"author":{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},"change_message_id":"5bc8289a75c58be08d9f9a061c41fb2866ad78b1","unresolved":false,"context_lines":[{"line_number":301,"context_line":"                \u0027callback\u0027: self.callback,"},{"line_number":302,"context_line":"            }"},{"line_number":303,"context_line":"            # this will call connect():"},{"line_number":304,"context_line":"            self.__init__(conf\u003dself.conf, **params)"},{"line_number":305,"context_line":"        else:"},{"line_number":306,"context_line":"            super(FanoutConsumer, self).reconnect(session)"},{"line_number":307,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATn%2F%2BEN4%3D","line":304,"in_reply_to":"AAAATn%2F%2BMXc%3D","updated":"2013-12-02 22:02:01.000000000","message":"It is broken for both V1 and V2: V1 due to the attempt to reconnect to an existing queue with the same name (that UUID) before it can be pulled down, and V2 because the address format has changed and reconnect() wasn\u0027t updated to deal with it.\n\nBUT:\nGordon\u0027s suggestion (see below) is a much cleaner approach to fixing this.   It will do away with the whole reconnect() overloading and the need for UUID-based names (the broker actually does this for you \u0027under the covers\u0027).\n\nI\u0027m going to amend this patch to use Gordon\u0027s approach - I think it will result in a cleaner fix.","commit_id":"3805ec6dc12891a16aa9e07f463f1c5a76a93514"}]}
