)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"6ff225d0c0792544b8965f13059e7f6291938f1a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Komei Shimamura \u003ckomei.t.f@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-04-08 16:55:36 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix a variable name mistake"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Fix the issues and modify unit tests for corresponding issues"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"9aa53dc9_6f1a217f","line":7,"updated":"2015-04-09 01:45:21.000000000","message":"not a good name for commit title, be specific","commit_id":"c3bc062c87abb2230c5e53973c0b0b88e8929138"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"6ff225d0c0792544b8965f13059e7f6291938f1a","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix a variable name mistake"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Fix the issues and modify unit tests for corresponding issues"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Closes-Bug: 1441258"},{"line_number":12,"context_line":"Change-Id: I306db443a866860ee45b2362b8a0cd2a59d8c3a2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"9aa53dc9_2f109958","line":9,"updated":"2015-04-09 01:45:21.000000000","message":"we need more detail","commit_id":"c3bc062c87abb2230c5e53973c0b0b88e8929138"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"6ff225d0c0792544b8965f13059e7f6291938f1a","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Fix the issues and modify unit tests for corresponding issues"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Closes-Bug: 1441258"},{"line_number":12,"context_line":"Change-Id: I306db443a866860ee45b2362b8a0cd2a59d8c3a2"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"9aa53dc9_cf248dc6","line":11,"updated":"2015-04-09 01:45:21.000000000","message":"This patch is eating my patch: https://review.openstack.org/#/c/171196/  \nmy patch includes your because without it I cannot pass the py27 gate\n\nadd Closes-Bug: #1441175 since you\u0027are fixing it too, and I will abandon mine","commit_id":"c3bc062c87abb2230c5e53973c0b0b88e8929138"}],"ceilometer/publisher/kafka_broker.py":[{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"4ac321ff7fd64446f985a89c2ad213c5fc61d279","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        params \u003d urlparse.parse_qs(parsed_url.query)"},{"line_number":79,"context_line":"        self.topic \u003d params.get(\u0027topic\u0027, [\u0027ceilometer\u0027])[-1]"},{"line_number":80,"context_line":"        self.policy \u003d params.get(\u0027policy\u0027, [\u0027queue\u0027])[-1]"},{"line_number":81,"context_line":"        self.max_queue_length \u003d int(params.get("},{"line_number":82,"context_line":"            \u0027max_queue_length\u0027, [1024])[-1])"},{"line_number":83,"context_line":"        self.max_retry \u003d int(params.get(\u0027max_retry\u0027, [100])[-1])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa53dc9_fcee09b3","line":80,"updated":"2015-04-08 13:09:55.000000000","message":"Was it an intention to change the default policy from \u0027retry\u0027 to \u0027queue\u0027? Also is the default policy documented somewhere?","commit_id":"a17323d17d4c89eaa876e4003bbaacea4aa0f0c2"},{"author":{"_account_id":12850,"name":"Komei Shimamura","email":"komei.t.f@gmail.com","username":"kshimamu"},"change_message_id":"3e84262726e3ab7688235b6a2ed00bc91e69df84","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        params \u003d urlparse.parse_qs(parsed_url.query)"},{"line_number":79,"context_line":"        self.topic \u003d params.get(\u0027topic\u0027, [\u0027ceilometer\u0027])[-1]"},{"line_number":80,"context_line":"        self.policy \u003d params.get(\u0027policy\u0027, [\u0027queue\u0027])[-1]"},{"line_number":81,"context_line":"        self.max_queue_length \u003d int(params.get("},{"line_number":82,"context_line":"            \u0027max_queue_length\u0027, [1024])[-1])"},{"line_number":83,"context_line":"        self.max_retry \u003d int(params.get(\u0027max_retry\u0027, [100])[-1])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa53dc9_5af4c3f0","line":80,"in_reply_to":"9aa53dc9_547dbc6c","updated":"2015-04-08 19:32:08.000000000","message":"Thank you for comment. I think you are completely right. For next patch, it will keep the code before. really thank you!","commit_id":"a17323d17d4c89eaa876e4003bbaacea4aa0f0c2"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"ae4d133831ecbe1988cd7d7431a59d7d9880b6bf","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        params \u003d urlparse.parse_qs(parsed_url.query)"},{"line_number":79,"context_line":"        self.topic \u003d params.get(\u0027topic\u0027, [\u0027ceilometer\u0027])[-1]"},{"line_number":80,"context_line":"        self.policy \u003d params.get(\u0027policy\u0027, [\u0027queue\u0027])[-1]"},{"line_number":81,"context_line":"        self.max_queue_length \u003d int(params.get("},{"line_number":82,"context_line":"            \u0027max_queue_length\u0027, [1024])[-1])"},{"line_number":83,"context_line":"        self.max_retry \u003d int(params.get(\u0027max_retry\u0027, [100])[-1])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa53dc9_547dbc6c","line":80,"in_reply_to":"9aa53dc9_6e135167","updated":"2015-04-08 18:37:05.000000000","message":"I\u0027ve just checked the docs, which contains information regarding to messaging: http://docs.openstack.org/admin-guide-cloud/content/section_telemetry-publishers.html . I think to keep the code and behaviour consistent it would be better to keep the original setup. What is your opinion?","commit_id":"a17323d17d4c89eaa876e4003bbaacea4aa0f0c2"},{"author":{"_account_id":12850,"name":"Komei Shimamura","email":"komei.t.f@gmail.com","username":"kshimamu"},"change_message_id":"83f103af04387062d1fbc03393e0a8b42cf10d32","unresolved":false,"context_lines":[{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        params \u003d urlparse.parse_qs(parsed_url.query)"},{"line_number":79,"context_line":"        self.topic \u003d params.get(\u0027topic\u0027, [\u0027ceilometer\u0027])[-1]"},{"line_number":80,"context_line":"        self.policy \u003d params.get(\u0027policy\u0027, [\u0027queue\u0027])[-1]"},{"line_number":81,"context_line":"        self.max_queue_length \u003d int(params.get("},{"line_number":82,"context_line":"            \u0027max_queue_length\u0027, [1024])[-1])"},{"line_number":83,"context_line":"        self.max_retry \u003d int(params.get(\u0027max_retry\u0027, [100])[-1])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa53dc9_6e135167","line":80,"in_reply_to":"9aa53dc9_fcee09b3","updated":"2015-04-08 18:02:20.000000000","message":"Actually the behavior of default policy is the same with retry policy, so remove the name \u0027dafault\u0027 to reduce the confusion. (in the explanation from L.55 to L68 of this code, the policy names are \u0027queue\u0027, \u0027retry\u0027, \u0027drop\u0027)\n\nI think the default behavior is not documented if it\u0027s not written somewhere external to BP documentation.\n\nAnd It seems better to use queue policy as a default policy, but when we refer to ceilometer/publisher/messaging.py, default policy seems to be retry.","commit_id":"a17323d17d4c89eaa876e4003bbaacea4aa0f0c2"}],"ceilometer/tests/publisher/test_kafka_broker_publisher.py":[{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"4ac321ff7fd64446f985a89c2ad213c5fc61d279","unresolved":false,"context_lines":[{"line_number":118,"context_line":"            fake_send.side_effect \u003d mock.Mock()"},{"line_number":119,"context_line":"            publisher.publish_samples(mock.MagicMock(), self.test_data)"},{"line_number":120,"context_line":"            self.assertEqual(1, len(fake_send.mock_calls))"},{"line_number":121,"context_line":"            self.assertEqual(0, len(publisher.local_queue))"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    @mock.patch.object(kafka_publisher.KafkaBrokerPublisher, \u0027_get_client\u0027)"},{"line_number":124,"context_line":"    def test_publish_to_host_with_retry_policy(self, mock_method):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa53dc9_a7218ea1","line":121,"updated":"2015-04-08 13:09:55.000000000","message":"Please add negative test with no policy set too.","commit_id":"a17323d17d4c89eaa876e4003bbaacea4aa0f0c2"},{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"eca637f297ec819782eebdcd81b54aaaf5999aaf","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from oslo_utils import netutils"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from ceilometer.event.storage import models as event"},{"line_number":24,"context_line":"from ceilometer.publisher.kafka_broker import KafkaBrokerPublisher"},{"line_number":25,"context_line":"from ceilometer import sample"},{"line_number":26,"context_line":"from ceilometer.tests import base as tests_base"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9aa53dc9_2f81b9c3","line":24,"updated":"2015-04-09 01:22:24.000000000","message":"I don\u0027t know why pep8 doesn\u0027t report H301 error. Please see http://docs.openstack.org/developer/hacking/#imports for the hacking guide","commit_id":"c3bc062c87abb2230c5e53973c0b0b88e8929138"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"b7cbf157fd93d01ad0d3de55ba204e4e257e0a22","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from oslo_utils import netutils"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from ceilometer.event.storage import models as event"},{"line_number":24,"context_line":"from ceilometer.publisher.kafka_broker import KafkaBrokerPublisher"},{"line_number":25,"context_line":"from ceilometer import sample"},{"line_number":26,"context_line":"from ceilometer.tests import base as tests_base"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9aa53dc9_5d76c5a4","line":24,"in_reply_to":"9aa53dc9_2f81b9c3","updated":"2015-04-10 03:12:03.000000000","message":"@Lianhao Lu\n\nthe guideline remains the rule but code doesn\u0027t force it, see Jeo Gordon\u0027s comment, quoted:\n\nJoe Gordon\t\t1:19 AM\nThis was left on purpose (https://review.openstack.org/#/c/142586/1/HACKING.rst,cm) We are still recommending this, but we cannot easily enforce it.\n\nsee: https://review.openstack.org/#/c/171910/","commit_id":"c3bc062c87abb2230c5e53973c0b0b88e8929138"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"24b5ece343a5938b58da602c150330bf5776b616","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from oslo_utils import netutils"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from ceilometer.event.storage import models as event"},{"line_number":24,"context_line":"from ceilometer.publisher.kafka_broker import KafkaBrokerPublisher"},{"line_number":25,"context_line":"from ceilometer import sample"},{"line_number":26,"context_line":"from ceilometer.tests import base as tests_base"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9aa53dc9_d2cd5286","line":24,"in_reply_to":"9aa53dc9_2f81b9c3","updated":"2015-04-09 02:06:16.000000000","message":"this is rule H302, and it is removed by I43862a0d73706ee4b28951d5c8de6938c0cf5f27 which is included in 0.10.0\n\ngood or bad news?","commit_id":"c3bc062c87abb2230c5e53973c0b0b88e8929138"},{"author":{"_account_id":12850,"name":"Komei Shimamura","email":"komei.t.f@gmail.com","username":"kshimamu"},"change_message_id":"600214345b53d970b69f021a882e45eba447f0b5","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from oslo_utils import netutils"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from ceilometer.event.storage import models as event"},{"line_number":24,"context_line":"from ceilometer.publisher.kafka_broker import KafkaBrokerPublisher"},{"line_number":25,"context_line":"from ceilometer import sample"},{"line_number":26,"context_line":"from ceilometer.tests import base as tests_base"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9aa53dc9_b2476ebb","line":24,"in_reply_to":"9aa53dc9_d2cd5286","updated":"2015-04-09 02:22:16.000000000","message":"It\u0027s good news, I will do current way again. \nThank you for reviewing!","commit_id":"c3bc062c87abb2230c5e53973c0b0b88e8929138"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"4fb53fe3bf68c61cff9a877c8fc16d261517bd14","unresolved":false,"context_lines":[{"line_number":214,"context_line":"        with mock.patch.object(KafkaBrokerPublisher, \u0027_send\u0027) as fake_send:"},{"line_number":215,"context_line":"            fake_send.side_effect \u003d TypeError"},{"line_number":216,"context_line":"            self.assertRaises(TypeError, publisher.publish_events,"},{"line_number":217,"context_line":"                              mock.MagicMock(), self.test_event_data)"}],"source_content_type":"text/x-python","patch_set":7,"id":"9aa53dc9_04cdb465","line":217,"updated":"2015-04-09 07:50:11.000000000","message":"I would prefer to add the assert checks here too to see whether the default retry mechanism is working in this case too, like how it is checked in L140, 141:\n\nself.assertEqual(100, len(fake_send.mock_calls))\nself.assertEqual(0, len(publisher.local_queue))","commit_id":"4788ba6d3c204a86e962be8994ab945c1b71b34e"}]}
