)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8802,"name":"Vladik Romanovsky","email":"vromanso@redhat.com","username":"vladikr"},"change_message_id":"1eb552c7dce3b57f780217b5bc9ad3a2e117107b","unresolved":false,"context_lines":[{"line_number":10,"context_line":"product_id in pci_whitelist, it would cause the nova-compute"},{"line_number":11,"context_line":"service boot failed. it shows:"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Trace:"},{"line_number":14,"context_line":" get_pci_dev_info(self, \u0027product_id\u0027, MAX_PRODUCT_ID, \u0027%04x\u0027)"},{"line_number":15,"context_line":" File \"/opt/stack/nova/nova/pci/devspec.py\", line 37, in \\"},{"line_number":16,"context_line":"   get_pci_dev_info"},{"line_number":17,"context_line":"   v \u003d get_value(a)"},{"line_number":18,"context_line":" File \"/opt/stack/nova/nova/pci/devspec.py\", line 30, in \\"},{"line_number":19,"context_line":"   get_value"},{"line_number":20,"context_line":"   return ast.literal_eval(\"0x\" + v)"},{"line_number":21,"context_line":" File \"/usr/lib/python2.7/ast.py\", line 49, in literal_eval"},{"line_number":22,"context_line":"   node_or_string \u003d parse(node_or_string, mode\u003d\u0027eval\u0027)"},{"line_number":23,"context_line":" File \"/usr/lib/python2.7/ast.py\", line 37, in parse"},{"line_number":24,"context_line":"   return compile(source, filename, mode, PyCF_ONLY_AST)"},{"line_number":25,"context_line":" File \"\u003cunknown\u003e\", line 1"},{"line_number":26,"context_line":"   0x 1347"},{"line_number":27,"context_line":"    ^"},{"line_number":28,"context_line":"SyntaxError: invalid token"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"this patch fix it."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9a89bdaa_484b8587","line":27,"range":{"start_line":13,"start_character":0,"end_line":27,"end_character":5},"updated":"2016-09-06 16:03:16.000000000","message":"I wouldn\u0027t put the whole bug description in the commit message. It\u0027ll be better if you would explain what are you fixing.","commit_id":"e39d36570776cfe08223ec0dc6f22407b7c1e721"}],"nova/pci/devspec.py":[{"author":{"_account_id":8802,"name":"Vladik Romanovsky","email":"vromanso@redhat.com","username":"vladikr"},"change_message_id":"1eb552c7dce3b57f780217b5bc9ad3a2e117107b","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        self.dev_count \u003d 0"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    def _init_dev_details(self):"},{"line_number":136,"context_line":"        self.vendor_id \u003d self.tags.pop(\"vendor_id\", ANY).strip()"},{"line_number":137,"context_line":"        self.product_id \u003d self.tags.pop(\"product_id\", ANY).strip()"},{"line_number":138,"context_line":"        self.address \u003d self.tags.pop(\"address\", None)"},{"line_number":139,"context_line":"        self.dev_name \u003d self.tags.pop(\"devname\", None)"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a89bdaa_cb422f3e","line":136,"updated":"2016-09-06 16:03:16.000000000","message":"Maybe you should remove all of the special chars, not just space..\nor alternatively, actually catch the SyntaxError: invalid token exceptions","commit_id":"e39d36570776cfe08223ec0dc6f22407b7c1e721"}]}
