)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6924,"name":"Pradeep Kilambi","email":"pkilambi@redhat.com","username":"pkilambi"},"change_message_id":"da6db7ffcf278c2a28f999149a4656f76502c930","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Remove (source code) clone."},{"line_number":8,"context_line":"Clone metrics calculate with SourceMeter and the results in the SonarQube: http://openqa.inf.u-szeged.hu/dashboard/index?did\u003d4\u0026id\u003dOpenStack%3Aceilometer"},{"line_number":9,"context_line":"(Start \u0027version-date\u0027: Sep 22 2015)"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I5ff5ded3c7d2afd028b658aa05579f2a87be420f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7a2fa921_6c45786e","line":9,"updated":"2015-10-07 14:39:55.000000000","message":"The commit message is not informative at all. Can you please explain what the purpose of this change is.\n\nAlso please follow the message format:\n\nhttps://wiki.openstack.org/wiki/GitCommitMessages","commit_id":"c8c7da00669e9d27e93aa191702d643daa865ed6"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"727f6ca3042ccb45909568ece26a6a7975324ac4","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Gábor Antal \u003cantal@inf.u-szeged.hu\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-11-04 10:14:05 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Reducing source code lines by extracting duplicated code. The clone metrics before and after the refactoring can be checked here: http://openqa.inf.u-szeged.hu/dashboard/index?did\u003d4\u0026id\u003dOpenStack%3Aceilometer"},{"line_number":8,"context_line":"The clone coverage is decreased by 20% (from 4.6% to 3.7%)."},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Change-Id: I5ff5ded3c7d2afd028b658aa05579f2a87be420f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"fa80f949_11d9b421","line":7,"updated":"2015-11-04 12:42:21.000000000","message":"the first line should be a short title line. also, i\u0027m not sure what that link is. something like this should be fine:\n\n\"\"\"\n   Reducing source code lines by extracting duplicated code.\n\n   this patch refactors polling code to reduce copied code.\n\n\"\"\"","commit_id":"716ae5fbd38f17675bfdaedc98e4a10af3e7308a"}],"ceilometer/compute/pollsters/disk.py":[{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"997521c4da6449336ddd2649778e9cebef616e4d","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        )]"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"    @staticmethod"},{"line_number":132,"context_line":"    def _get_samples_per_device(instance, c_data, _attr, _name, _unit):"},{"line_number":133,"context_line":"        samples \u003d []"},{"line_number":134,"context_line":"        for disk, value in six.iteritems(c_data.per_disk_requests[_attr]):"},{"line_number":135,"context_line":"            samples.append(util.make_sample_from_instance("}],"source_content_type":"text/x-python","patch_set":1,"id":"7a2fa921_13697f8b","line":132,"updated":"2015-10-07 16:00:35.000000000","message":"would be good to keep param ordering the same when possible.","commit_id":"c8c7da00669e9d27e93aa191702d643daa865ed6"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"997521c4da6449336ddd2649778e9cebef616e4d","unresolved":false,"context_lines":[{"line_number":343,"context_line":"        return samples"},{"line_number":344,"context_line":""},{"line_number":345,"context_line":"    def _get_samples_read_and_write(self, instance, _element, _name, _unit,"},{"line_number":346,"context_line":"                                    _attr1, _attr2):"},{"line_number":347,"context_line":"        return [util.make_sample_from_instance("},{"line_number":348,"context_line":"            instance,"},{"line_number":349,"context_line":"            name\u003d_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a2fa921_533cd72e","line":346,"updated":"2015-10-07 16:00:35.000000000","message":"to be honest, _element, _attr1, _attr2 are really ambiguous param names.","commit_id":"c8c7da00669e9d27e93aa191702d643daa865ed6"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"997521c4da6449336ddd2649778e9cebef616e4d","unresolved":false,"context_lines":[{"line_number":639,"context_line":"    def _get_samples(self, instance, disk_info):"},{"line_number":640,"context_line":"        \"\"\"Return one or more Sample.\"\"\""},{"line_number":641,"context_line":""},{"line_number":642,"context_line":"    def _get_samples_per_device(self, instance, disk_info, _attr, _name):"},{"line_number":643,"context_line":"        samples \u003d []"},{"line_number":644,"context_line":"        for disk, value in six.iteritems(disk_info.per_disk_info[_attr]):"},{"line_number":645,"context_line":"            samples.append(util.make_sample_from_instance("}],"source_content_type":"text/x-python","patch_set":1,"id":"7a2fa921_f31e4362","line":642,"updated":"2015-10-07 16:00:35.000000000","message":"it\u0027d be good to keep param ordering similar.","commit_id":"c8c7da00669e9d27e93aa191702d643daa865ed6"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"997521c4da6449336ddd2649778e9cebef616e4d","unresolved":false,"context_lines":[{"line_number":701,"context_line":""},{"line_number":702,"context_line":"    def _get_samples(self, instance, disk_info):"},{"line_number":703,"context_line":"        return super(CapacityPollster,"},{"line_number":704,"context_line":"                     CapacityPollster)._get_samples_task("},{"line_number":705,"context_line":"            self, instance, disk_info,"},{"line_number":706,"context_line":"            \u0027disk.capacity\u0027, \u0027capacity\u0027, \u0027capacity\u0027)"},{"line_number":707,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a2fa921_3397db49","line":704,"updated":"2015-10-07 16:00:35.000000000","message":"you shouldn\u0027t need to use super if you\u0027re just calling an inherited staticmethod.","commit_id":"c8c7da00669e9d27e93aa191702d643daa865ed6"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"727f6ca3042ccb45909568ece26a6a7975324ac4","unresolved":false,"context_lines":[{"line_number":699,"context_line":""},{"line_number":700,"context_line":"    def _get_samples(self, instance, disk_info):"},{"line_number":701,"context_line":"        return super(CapacityPollster,"},{"line_number":702,"context_line":"                     CapacityPollster)._get_samples_task("},{"line_number":703,"context_line":"            self, instance, \u0027disk.capacity\u0027, disk_info,"},{"line_number":704,"context_line":"            \u0027capacity\u0027, \u0027capacity\u0027)"},{"line_number":705,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"fa80f949_11abf475","line":702,"updated":"2015-11-04 12:42:21.000000000","message":"same comment as before. you aren\u0027t using super correctly. this should just be:\n\nreturn self._get_samples_task(...) rather than return super()._get_samples_task(...)","commit_id":"716ae5fbd38f17675bfdaedc98e4a10af3e7308a"},{"author":{"_account_id":18137,"name":"Xia Linjuan","email":"ljxiash@cn.ibm.com","username":"xialinjuan"},"change_message_id":"d3902a008e610dfa5e16c3e220e53d3d6c84391f","unresolved":false,"context_lines":[{"line_number":116,"context_line":"        \"\"\"Return one or more Sample.\"\"\""},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    @staticmethod"},{"line_number":119,"context_line":"    def _get_samples_read_and_write(instance, _name, _unit, c_data,"},{"line_number":120,"context_line":"                                    _volume, _metadata):"},{"line_number":121,"context_line":"        return [util.make_sample_from_instance("},{"line_number":122,"context_line":"            instance,"}],"source_content_type":"text/x-python","patch_set":4,"id":"da85f559_51d1b521","line":119,"updated":"2015-11-12 19:11:54.000000000","message":"Could you please add simple comment about this function?","commit_id":"a81e81c422bbce78fe797f545454f31b1694b5eb"},{"author":{"_account_id":18137,"name":"Xia Linjuan","email":"ljxiash@cn.ibm.com","username":"xialinjuan"},"change_message_id":"d3902a008e610dfa5e16c3e220e53d3d6c84391f","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        )]"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"    @staticmethod"},{"line_number":132,"context_line":"    def _get_samples_per_device(c_data, request, instance, _name, _unit):"},{"line_number":133,"context_line":"        samples \u003d []"},{"line_number":134,"context_line":"        for disk, value in six.iteritems(c_data.per_disk_requests[request]):"},{"line_number":135,"context_line":"            samples.append(util.make_sample_from_instance("}],"source_content_type":"text/x-python","patch_set":4,"id":"da85f559_1176cd05","line":132,"updated":"2015-11-12 19:11:54.000000000","message":"Could you please add simple comment about this function? like \"Return one or more Samples for meter \u0027disk.device.*\u0027 \"","commit_id":"a81e81c422bbce78fe797f545454f31b1694b5eb"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"80754ee9d4036e6adf4f9dfb4d2051cb4ea7d7a8","unresolved":false,"context_lines":[{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    @staticmethod"},{"line_number":181,"context_line":"    def _get_samples(instance, c_data):"},{"line_number":182,"context_line":"        return super(ReadRequestsPollster,"},{"line_number":183,"context_line":"                     ReadRequestsPollster)._get_samples_read_and_write("},{"line_number":184,"context_line":"            instance, c_data, \u0027disk.read.requests\u0027,"},{"line_number":185,"context_line":"            \u0027request\u0027, \u0027r_requests\u0027, \u0027read_requests\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba8a016a_e88ffe27","line":182,"updated":"2015-11-18 18:09:42.000000000","message":"again, same comment as before. i don\u0027t see why super is being used. this should just be:\n\u0027return self._get_samples_read_and_write(...)\u0027 rather than \u0027return super()._get_samples_task(...)\u0027","commit_id":"9e8df074250dd2adb01daed22e01f0095c27bd9d"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"7de6cc7414b12befe65ec474bbf7c2d10bcd6739","unresolved":false,"context_lines":[{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    @staticmethod"},{"line_number":181,"context_line":"    def _get_samples(instance, c_data):"},{"line_number":182,"context_line":"        return super(ReadRequestsPollster,"},{"line_number":183,"context_line":"                     ReadRequestsPollster)._get_samples_read_and_write("},{"line_number":184,"context_line":"            instance, c_data, \u0027disk.read.requests\u0027,"},{"line_number":185,"context_line":"            \u0027request\u0027, \u0027r_requests\u0027, \u0027read_requests\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba8a016a_981b04ca","line":182,"in_reply_to":"ba8a016a_039c990d","updated":"2015-11-19 09:02:47.000000000","message":"I missed that. So yeah calling a super() of another class actually works but it\u0027s really confusing.\n\nThe _get_samples() in _Base is also badly declared currently, it misses self FWIW.\n\nGordon\u0027s right about the solution.","commit_id":"9e8df074250dd2adb01daed22e01f0095c27bd9d"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c2259ff119b3f9dc0d4269e1f86731a36ae4fece","unresolved":false,"context_lines":[{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    @staticmethod"},{"line_number":181,"context_line":"    def _get_samples(instance, c_data):"},{"line_number":182,"context_line":"        return super(ReadRequestsPollster,"},{"line_number":183,"context_line":"                     ReadRequestsPollster)._get_samples_read_and_write("},{"line_number":184,"context_line":"            instance, c_data, \u0027disk.read.requests\u0027,"},{"line_number":185,"context_line":"            \u0027request\u0027, \u0027r_requests\u0027, \u0027read_requests\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba8a016a_039c990d","line":182,"in_reply_to":"ba8a016a_16013805","updated":"2015-11-18 22:46:21.000000000","message":"i see, you should make this ReadRequestsPollster._get_samples_read_write(...) or make this a non-static method.\n\nsuper should really be used to extend the submethod.","commit_id":"9e8df074250dd2adb01daed22e01f0095c27bd9d"},{"author":{"_account_id":18603,"name":"Béla Vancsics","email":"vancsics@inf.u-szeged.hu","username":"vancsics"},"change_message_id":"3d521f84cbb782c818b4c4adc274f58d61313613","unresolved":false,"context_lines":[{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    @staticmethod"},{"line_number":181,"context_line":"    def _get_samples(instance, c_data):"},{"line_number":182,"context_line":"        return super(ReadRequestsPollster,"},{"line_number":183,"context_line":"                     ReadRequestsPollster)._get_samples_read_and_write("},{"line_number":184,"context_line":"            instance, c_data, \u0027disk.read.requests\u0027,"},{"line_number":185,"context_line":"            \u0027request\u0027, \u0027r_requests\u0027, \u0027read_requests\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba8a016a_16013805","line":182,"in_reply_to":"ba8a016a_e88ffe27","updated":"2015-11-18 21:31:24.000000000","message":"The _get_samples_read_and_write() function implements in parent class and if I change from \u0027super()...\u0027 to \u0027self...\u0027, then the tests fail.\n(example:FAIL:ceilometer.tests.unit.compute.pollsters.test_diskio.TestDiskPollsters.test_disk_read_requests\ntags: worker-7)","commit_id":"9e8df074250dd2adb01daed22e01f0095c27bd9d"},{"author":{"_account_id":18137,"name":"Xia Linjuan","email":"ljxiash@cn.ibm.com","username":"xialinjuan"},"change_message_id":"9ddab4f36e923e1caedccf614d69a6ae5c21d7cb","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    @staticmethod"},{"line_number":119,"context_line":"    def _get_samples_read_and_write(instance, c_data, _name, _unit,"},{"line_number":120,"context_line":"                                    _volume, _metadata):"},{"line_number":121,"context_line":"        \"\"\"Read and write Pollster.\"\"\""},{"line_number":122,"context_line":"        return [util.make_sample_from_instance("},{"line_number":123,"context_line":"            instance,"},{"line_number":124,"context_line":"            name\u003d_name,"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba8a016a_77f62990","line":121,"updated":"2015-11-20 09:43:19.000000000","message":"It is not precisely described what the function does.","commit_id":"6ecee76d4c66b1399e12dd8bd38db6a7ca19b2eb"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"83a8b0cb71d4e02231b212355accca7c469ac9ec","unresolved":false,"context_lines":[{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    @staticmethod"},{"line_number":181,"context_line":"    def _get_samples(instance, c_data):"},{"line_number":182,"context_line":"        return ReadRequestsPollster._get_samples_read_and_write("},{"line_number":183,"context_line":"            instance, c_data, \u0027disk.read.requests\u0027,"},{"line_number":184,"context_line":"            \u0027request\u0027, \u0027r_requests\u0027, \u0027read_requests\u0027)"},{"line_number":185,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"ba8a016a_5cdeacdd","line":182,"updated":"2015-11-20 09:21:43.000000000","message":"Nop.\n\nIt\u0027s not static so use self.","commit_id":"6ecee76d4c66b1399e12dd8bd38db6a7ca19b2eb"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"a35a55911d642c1009d9779a9b34ee5e2ff6a46c","unresolved":false,"context_lines":[{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    @staticmethod"},{"line_number":181,"context_line":"    def _get_samples(instance, c_data):"},{"line_number":182,"context_line":"        return ReadRequestsPollster._get_samples_read_and_write("},{"line_number":183,"context_line":"            instance, c_data, \u0027disk.read.requests\u0027,"},{"line_number":184,"context_line":"            \u0027request\u0027, \u0027r_requests\u0027, \u0027read_requests\u0027)"},{"line_number":185,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"ba8a016a_8b1fde08","line":182,"in_reply_to":"ba8a016a_5cdeacdd","updated":"2015-11-20 14:03:03.000000000","message":"i believe the suggestion is to:\n\n  - drop @staticmethod\n  - add self to _get_samples definition (like below)\n  - and change it to return self.\u003cmethod\u003e(...)\n\nthanks for your persistence.","commit_id":"6ecee76d4c66b1399e12dd8bd38db6a7ca19b2eb"}]}
