)]}'
{"gnocchi/ceilometer/resources/volume.py":[{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"4d075aed8c56d7919780d1c8d54408638e879885","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_resource_extra_attributes(sample):"},{"line_number":28,"context_line":"        metadata \u003d sample[\u0027resource_metadata\u0027]"},{"line_number":29,"context_line":"        params \u003d {"},{"line_number":30,"context_line":"            \"display_name\": metadata[\u0027display_name\u0027],"},{"line_number":31,"context_line":"        }"},{"line_number":32,"context_line":"        return params"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"da86d52c_3626e668","line":30,"updated":"2015-02-05 12:22:01.000000000","message":"Should the volume size be a strongly type attribute also?","commit_id":"17f3c24b3e672910b376fd12b4998f09bae51e57"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"b4e6f7e1dbd14b4e10e3429e367287ce2a2de956","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_resource_extra_attributes(sample):"},{"line_number":28,"context_line":"        metadata \u003d sample[\u0027resource_metadata\u0027]"},{"line_number":29,"context_line":"        params \u003d {"},{"line_number":30,"context_line":"            \"display_name\": metadata[\u0027display_name\u0027],"},{"line_number":31,"context_line":"        }"},{"line_number":32,"context_line":"        return params"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"da86d52c_b4c72944","line":30,"in_reply_to":"da86d52c_19f10e6b","updated":"2015-02-12 11:07:10.000000000","message":"Yup, but one could argue that if you miss an event you\u0027ll have wrong information so constant polling is safer.\n\nHonestly I think it\u0027s safer to say that everything that is numeric in Gnocchi must be a metric (except if it\u0027s an ID).","commit_id":"17f3c24b3e672910b376fd12b4998f09bae51e57"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"d871b1225d4c4b352045cf1dc04cd0fb0a68ce36","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_resource_extra_attributes(sample):"},{"line_number":28,"context_line":"        metadata \u003d sample[\u0027resource_metadata\u0027]"},{"line_number":29,"context_line":"        params \u003d {"},{"line_number":30,"context_line":"            \"display_name\": metadata[\u0027display_name\u0027],"},{"line_number":31,"context_line":"        }"},{"line_number":32,"context_line":"        return params"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"da86d52c_8cc76c63","line":30,"in_reply_to":"da86d52c_2ea2f84a","updated":"2015-02-10 16:45:15.000000000","message":"Do you mean not fixed, in the sense that it may change as a result of a volume resize?\n\nCurrently we model the instance flavor as a strongly typed attribute of the instance resource, even though this can change if the instance is resized.\n\nI think it would be a bit odd to store the volume size as a metric, since this changes so rarely, and for many volumes would never change even once during their lifetime.","commit_id":"17f3c24b3e672910b376fd12b4998f09bae51e57"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"b8457738704d534a8603e9f2efed7eef9f2bde3b","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_resource_extra_attributes(sample):"},{"line_number":28,"context_line":"        metadata \u003d sample[\u0027resource_metadata\u0027]"},{"line_number":29,"context_line":"        params \u003d {"},{"line_number":30,"context_line":"            \"display_name\": metadata[\u0027display_name\u0027],"},{"line_number":31,"context_line":"        }"},{"line_number":32,"context_line":"        return params"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"da86d52c_19f10e6b","line":30,"in_reply_to":"da86d52c_303f1c27","updated":"2015-02-12 10:49:17.000000000","message":"Sure, I hear what you\u0027re saying ... though I guess the concept of instance flavour name (or ID) is really just a placeholder for a set of related numeric values (vcpus, disk, RAM etc).\n\nThe other aspect of this to consider is the overhead of maintaining a metric with a largely constant value, versus a much smaller number of events that capture the actual resizes when \u0026 if they occur.","commit_id":"17f3c24b3e672910b376fd12b4998f09bae51e57"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"53988471e178e2a9a63ffc12f11890e810f940ac","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_resource_extra_attributes(sample):"},{"line_number":28,"context_line":"        metadata \u003d sample[\u0027resource_metadata\u0027]"},{"line_number":29,"context_line":"        params \u003d {"},{"line_number":30,"context_line":"            \"display_name\": metadata[\u0027display_name\u0027],"},{"line_number":31,"context_line":"        }"},{"line_number":32,"context_line":"        return params"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"da86d52c_2ea2f84a","line":30,"in_reply_to":"da86d52c_3626e668","updated":"2015-02-05 19:25:26.000000000","message":"If the size is not fixed it should be in a metric.","commit_id":"17f3c24b3e672910b376fd12b4998f09bae51e57"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"cdb014006596501c58b38c5057efbc1b512a90f3","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_resource_extra_attributes(sample):"},{"line_number":28,"context_line":"        metadata \u003d sample[\u0027resource_metadata\u0027]"},{"line_number":29,"context_line":"        params \u003d {"},{"line_number":30,"context_line":"            \"display_name\": metadata[\u0027display_name\u0027],"},{"line_number":31,"context_line":"        }"},{"line_number":32,"context_line":"        return params"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"da86d52c_303f1c27","line":30,"in_reply_to":"da86d52c_8cc76c63","updated":"2015-02-10 17:03:23.000000000","message":"Yep that\u0027s what I meant.\n\nThe different with the flavor is that it\u0027s not a metric, it\u0027s a text attribute. I can meter my height, but I can\u0027t meter the fact that I changed my name from Julien to Britney.\n\nI think this volumes are Cinder volumes that can be resized, so having the min, max or 95pct of the size of a volume e.g. for billing sounds useful, no?","commit_id":"17f3c24b3e672910b376fd12b4998f09bae51e57"},{"author":{"_account_id":2284,"name":"Eoghan Glynn","email":"eglynn@redhat.com","username":"eglynn"},"change_message_id":"21d5ca0a518e11da9f230cfdafff865cf0ef6473","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_resource_extra_attributes(sample):"},{"line_number":28,"context_line":"        metadata \u003d sample[\u0027resource_metadata\u0027]"},{"line_number":29,"context_line":"        params \u003d {"},{"line_number":30,"context_line":"            \"display_name\": metadata[\u0027display_name\u0027],"},{"line_number":31,"context_line":"        }"},{"line_number":32,"context_line":"        return params"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"da86d52c_ef3bb135","line":30,"in_reply_to":"da86d52c_b4c72944","updated":"2015-02-18 14:37:42.000000000","message":"Fair point, OK let\u0027s go with this approach.","commit_id":"17f3c24b3e672910b376fd12b4998f09bae51e57"}],"gnocchi/indexer/sqlalchemy.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"f93005685f74aba0269485dacaa7d9add88735b0","unresolved":false,"context_lines":[{"line_number":216,"context_line":"    id \u003d sqlalchemy.Column(sqlalchemy_utils.UUIDType(binary\u003dFalse),"},{"line_number":217,"context_line":"                           sqlalchemy.ForeignKey(\u0027resource.id\u0027,"},{"line_number":218,"context_line":"                                                 ondelete\u003d\"CASCADE\"),"},{"line_number":219,"context_line":"                           primary_key\u003dTrue)"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"class SQLAlchemyIndexer(indexer.IndexerDriver):"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_4c5ef613","line":219,"updated":"2015-01-22 14:27:32.000000000","message":"I think we want at least to track the name of it?","commit_id":"5ecb2b9f23cf1647610435098e0495e508c036ff"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"00c0b1e5bbc07eeb0b2d1aa76e82ec4302f6b989","unresolved":false,"context_lines":[{"line_number":216,"context_line":"    id \u003d sqlalchemy.Column(sqlalchemy_utils.UUIDType(binary\u003dFalse),"},{"line_number":217,"context_line":"                           sqlalchemy.ForeignKey(\u0027resource.id\u0027,"},{"line_number":218,"context_line":"                                                 ondelete\u003d\"CASCADE\"),"},{"line_number":219,"context_line":"                           primary_key\u003dTrue)"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":""},{"line_number":222,"context_line":"class SQLAlchemyIndexer(indexer.IndexerDriver):"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_2f943ce1","line":219,"in_reply_to":"1a930d6b_4c5ef613","updated":"2015-01-22 15:07:43.000000000","message":"Actually it was a question what are we need to store as a params from volume.\n\nWill improve in new patch.","commit_id":"5ecb2b9f23cf1647610435098e0495e508c036ff"}],"gnocchi/tests/test_rest.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"564634b91802cf3713e6d81bc75d570b30d08d24","unresolved":false,"context_lines":[{"line_number":986,"context_line":"                \"project_id\": str(uuid.uuid4()),"},{"line_number":987,"context_line":"            },"},{"line_number":988,"context_line":"            patchable_attributes\u003d{"},{"line_number":989,"context_line":""},{"line_number":990,"context_line":"                \"ended_at\": \"2014-01-03T02:02:02.000000\","},{"line_number":991,"context_line":"            },"},{"line_number":992,"context_line":"            resource_type\u003d\u0027swift_account\u0027)),"}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_7d00d6aa","line":989,"updated":"2015-02-02 12:26:08.000000000","message":"Unrelated change.","commit_id":"2a98d192edf3b8a8bae550f35ee74db5883b56a1"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"41637d3baa64eff74d7145e88e6fd1fb1a286663","unresolved":false,"context_lines":[{"line_number":986,"context_line":"                \"project_id\": str(uuid.uuid4()),"},{"line_number":987,"context_line":"            },"},{"line_number":988,"context_line":"            patchable_attributes\u003d{"},{"line_number":989,"context_line":""},{"line_number":990,"context_line":"                \"ended_at\": \"2014-01-03T02:02:02.000000\","},{"line_number":991,"context_line":"            },"},{"line_number":992,"context_line":"            resource_type\u003d\u0027swift_account\u0027)),"}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_5d587256","line":989,"in_reply_to":"da86d52c_7d00d6aa","updated":"2015-02-02 12:40:26.000000000","message":"Done","commit_id":"2a98d192edf3b8a8bae550f35ee74db5883b56a1"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"564634b91802cf3713e6d81bc75d570b30d08d24","unresolved":false,"context_lines":[{"line_number":1001,"context_line":"            },"},{"line_number":1002,"context_line":"            patchable_attributes\u003d{"},{"line_number":1003,"context_line":"                \"ended_at\": \"2014-01-03T02:02:02.000000\","},{"line_number":1004,"context_line":"                \"display_name\": \"myvolume\","},{"line_number":1005,"context_line":"            },"},{"line_number":1006,"context_line":"            resource_type\u003d\u0027volume\u0027)),"},{"line_number":1007,"context_line":"    ]"}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_fde20602","line":1004,"updated":"2015-02-02 12:26:08.000000000","message":"Would be better to use another value to show it changed.","commit_id":"2a98d192edf3b8a8bae550f35ee74db5883b56a1"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"41637d3baa64eff74d7145e88e6fd1fb1a286663","unresolved":false,"context_lines":[{"line_number":1001,"context_line":"            },"},{"line_number":1002,"context_line":"            patchable_attributes\u003d{"},{"line_number":1003,"context_line":"                \"ended_at\": \"2014-01-03T02:02:02.000000\","},{"line_number":1004,"context_line":"                \"display_name\": \"myvolume\","},{"line_number":1005,"context_line":"            },"},{"line_number":1006,"context_line":"            resource_type\u003d\u0027volume\u0027)),"},{"line_number":1007,"context_line":"    ]"}],"source_content_type":"text/x-python","patch_set":6,"id":"da86d52c_9d310a0e","line":1004,"in_reply_to":"da86d52c_fde20602","updated":"2015-02-02 12:40:26.000000000","message":"Done","commit_id":"2a98d192edf3b8a8bae550f35ee74db5883b56a1"}]}
