)]}'
{"ceilometer/compute/pollsters/util.py":[{"author":{"_account_id":10420,"name":"Adrian Turjak","email":"devs+openstack@uncaught-exceptions.com","username":"adriant"},"change_message_id":"7c20c457c86d5789efe8bce403d0b96d26783333","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        \u0027instance_type\u0027: (instance.flavor[\u0027id\u0027] if instance.flavor else None),"},{"line_number":45,"context_line":"        \u0027host\u0027: instance.hostId,"},{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status,"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: instance.image,"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAWH%2F9gYw%3D","line":47,"updated":"2014-04-04 03:25:42.000000000","message":"Would prefer if you lower case this to ensure it matches with the same value in the notification metadata.","commit_id":"237b8b2bcf72f59bd3ffac14a1f3105d9261536e"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"1306ddb5beb3f028449706fd5a757d22fe8bbadf","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        \u0027name\u0027: getattr(instance, \u0027OS-EXT-SRV-ATTR:instance_name\u0027, u\u0027\u0027),"},{"line_number":44,"context_line":"        \u0027instance_type\u0027: (instance.flavor[\u0027id\u0027] if instance.flavor else None),"},{"line_number":45,"context_line":"        \u0027host\u0027: instance.hostId,"},{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status.lower(),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: instance.image,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9boI%3D","line":46,"updated":"2014-04-04 15:13:44.000000000","message":"Should display_name, flavor, status, and image be defaulted to None if they are not defined?\n\n\u0027display_name\u0027: (instance.name if instance.name else None)\n\u0027flavor\u0027: (instance.flavor if instance.flavor else None)\n\u0027status\u0027: (instance.status if instance.status else None)\n\u0027image\u0027: (instance.image if instance.image else None)","commit_id":"b74aee01560e0a9bbc6f3515162a41843d6f82aa"},{"author":{"_account_id":6924,"name":"Pradeep Kilambi","email":"pkilambi@redhat.com","username":"pkilambi"},"change_message_id":"79d6f350607e0079314ffc83cefb54b83f6e36d9","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        \u0027name\u0027: getattr(instance, \u0027OS-EXT-SRV-ATTR:instance_name\u0027, u\u0027\u0027),"},{"line_number":44,"context_line":"        \u0027instance_type\u0027: (instance.flavor[\u0027id\u0027] if instance.flavor else None),"},{"line_number":45,"context_line":"        \u0027host\u0027: instance.hostId,"},{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status.lower(),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: instance.image,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9bVE%3D","line":46,"in_reply_to":"AAAAWH%2F9bZg%3D","updated":"2014-04-04 15:37:49.000000000","message":"sounds reasonable. Done!","commit_id":"b74aee01560e0a9bbc6f3515162a41843d6f82aa"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"06fdec6a99a3bcee62f380e7d33bd972bbece56e","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        \u0027name\u0027: getattr(instance, \u0027OS-EXT-SRV-ATTR:instance_name\u0027, u\u0027\u0027),"},{"line_number":44,"context_line":"        \u0027instance_type\u0027: (instance.flavor[\u0027id\u0027] if instance.flavor else None),"},{"line_number":45,"context_line":"        \u0027host\u0027: instance.hostId,"},{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status.lower(),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: instance.image,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9bZg%3D","line":46,"in_reply_to":"AAAAWH%2F9beQ%3D","updated":"2014-04-04 15:31:18.000000000","message":"At least for the image \u003d None case, this can happen when you boot from a volume that was created from an image.  In any case, it might be a good thing to default everything, in case where any of the instance attributes are somehow corrupted.","commit_id":"b74aee01560e0a9bbc6f3515162a41843d6f82aa"},{"author":{"_account_id":6924,"name":"Pradeep Kilambi","email":"pkilambi@redhat.com","username":"pkilambi"},"change_message_id":"f682fbc3601ce1b52aae0e8b818e3fa41e26b596","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        \u0027name\u0027: getattr(instance, \u0027OS-EXT-SRV-ATTR:instance_name\u0027, u\u0027\u0027),"},{"line_number":44,"context_line":"        \u0027instance_type\u0027: (instance.flavor[\u0027id\u0027] if instance.flavor else None),"},{"line_number":45,"context_line":"        \u0027host\u0027: instance.hostId,"},{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status.lower(),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: instance.image,"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F9beQ%3D","line":46,"in_reply_to":"AAAAWH%2F9boI%3D","updated":"2014-04-04 15:24:17.000000000","message":"hmm  i havent run into a case where this was None yet .. If this could indeed happen, I\u0027m happy to add these checks you suggested. Can you tell me a scenario in which we could see this? Can nova have an instance without these ?","commit_id":"b74aee01560e0a9bbc6f3515162a41843d6f82aa"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"87b93107efb3328cbf1ed0456a5d7af4ed7361bf","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F9LM%3D","line":50,"updated":"2014-04-08 09:09:07.000000000","message":"I don\u0027t really like defaulting all of this to None, an instance can really have no status ?","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":6924,"name":"Pradeep Kilambi","email":"pkilambi@redhat.com","username":"pkilambi"},"change_message_id":"e0f1e332ad34491d4c6b4db7a4d94d8dfed34c38","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F5nk%3D","line":50,"in_reply_to":"AAAAWn%2F%2F5pk%3D","updated":"2014-04-08 16:20:45.000000000","message":"Let me just remove this for here and created a separate patch as Gordon suggested. Its causing too much confusion for something that not related to the blueprint i\u0027m trying to address. We can discuss further in that review.","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"9447131f831f13066072cf9c97dc48c5330fc421","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F6rs%3D","line":50,"in_reply_to":"AAAAWn%2F%2F60o%3D","updated":"2014-04-08 14:17:54.000000000","message":"Sounds fine.","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":6924,"name":"Pradeep Kilambi","email":"pkilambi@redhat.com","username":"pkilambi"},"change_message_id":"c68995a191a4c2206ec8b2fbcf5e37a49681a8ec","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F60o%3D","line":50,"in_reply_to":"AAAAWn%2F%2F62w%3D","updated":"2014-04-08 14:03:48.000000000","message":"Yes, image ref being None is possible if you boot directly of a bare volume. I agree with status not being None though, as I still have not run into a case where status is not set.\n\nWould you guys be ok, if I keep the image ref None check and remove the None checks for status and perhaps instance.name as well.","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":7478,"name":"Nadya Shakhat","email":"nadmi4@gmail.com","username":"nprivalova"},"change_message_id":"780cacf982850b4e3a31f435206bd8f141a626c5","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F5pk%3D","line":50,"in_reply_to":"AAAAWn%2F%2F6rs%3D","updated":"2014-04-08 16:17:46.000000000","message":"Thanks for example with cloud-image. What if we just add try-block here? If smth is lost in message during polling Ceilometer should not fail. We may just skip this message. But it is to be discussed","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":7478,"name":"Nadya Shakhat","email":"nadmi4@gmail.com","username":"nprivalova"},"change_message_id":"3e4148730fd460ef2ffa001045e58c415470aae4","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F85c%3D","line":50,"in_reply_to":"AAAAWn%2F%2F87k%3D","updated":"2014-04-08 09:35:39.000000000","message":"Forget to say. Maybe you have seen suck behaviour in real-life? Could you please provide an example?","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"1d508825a8ece20440839cb49909aad1948bd3b6","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F62w%3D","line":50,"in_reply_to":"AAAAWn%2F%2F87k%3D","updated":"2014-04-08 13:57:24.000000000","message":"What if the instance is booted from a volume that contains a cloud image?  The instance does not have an image in that case .","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":7478,"name":"Nadya Shakhat","email":"nadmi4@gmail.com","username":"nprivalova"},"change_message_id":"9ba20c7269ec76cc63bc1c5c45ef0c837fe00f1f","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        \u0027status\u0027: (instance.status.lower() if instance.status else None),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    # Images that come through the conductor API in the nova notifier"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWn%2F%2F87k%3D","line":50,"in_reply_to":"AAAAWn%2F%2F9LM%3D","updated":"2014-04-08 09:34:15.000000000","message":"Agreed. I always thought that instance always has status. Besides, \u0027flavor\u0027, \u0027image\u0027 are mandatory. AFAIK, name may be generated automatically in heat e.g.. But anyway am I right that this code fetches metadata from message from nova (or after polling) so in this case name should be present. If there is no such info something went wrong","commit_id":"fec2be1bd59567ce8650362ab076782d70dd432c"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"e5b473fde74664ed90d99972c7e2614d797282f5","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status.lower(),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAWn%2F%2F5rs%3D","line":49,"updated":"2014-04-08 16:14:05.000000000","message":"this doesn\u0027t seem to be related to the bp. it should really be it\u0027s own separate patch so it\u0027s easier to track","commit_id":"d965d4fb190fb7455bb96812b04aac906502a882"},{"author":{"_account_id":6924,"name":"Pradeep Kilambi","email":"pkilambi@redhat.com","username":"pkilambi"},"change_message_id":"08db7cb48079dd64277a50e21db871a645ffad1a","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status.lower(),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: (instance.image if instance.image else None),"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"},{"line_number":51,"context_line":"    }"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAWn%2F%2F5mQ%3D","line":49,"in_reply_to":"AAAAWn%2F%2F5rs%3D","updated":"2014-04-08 16:23:59.000000000","message":"Done, I\u0027ll submit a separate patch for the None checks. Its causing too much confusion for something not related to the bp :)","commit_id":"d965d4fb190fb7455bb96812b04aac906502a882"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"cdf26d1d20815c5e9e892f693ec0033b1f862ab1","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        \u0027instance_type\u0027: (instance.flavor[\u0027id\u0027] if instance.flavor else None),"},{"line_number":45,"context_line":"        \u0027host\u0027: instance.hostId,"},{"line_number":46,"context_line":"        \u0027flavor\u0027: instance.flavor,"},{"line_number":47,"context_line":"        \u0027status\u0027: instance.status.lower(),"},{"line_number":48,"context_line":"        # Image properties"},{"line_number":49,"context_line":"        \u0027image\u0027: instance.image,"},{"line_number":50,"context_line":"        \u0027image_ref\u0027: (instance.image[\u0027id\u0027] if instance.image else None),"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAWn%2F%2F5a0%3D","line":47,"updated":"2014-04-08 16:51:14.000000000","message":"nits: Why do you remove the case ?","commit_id":"e587980bf505cbe37d660a89092e489d26301237"}]}
