)]}'
{"ceilometer/compute/discovery.py":[{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"e4f6aaadc98663c245179a71e0332248dd47d87d","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                    \"on this option\u0027s interval. Measurements relating \""},{"line_number":36,"context_line":"                    \"to the instances will match intervals \""},{"line_number":37,"context_line":"                    \"defined in pipeline.\"),"},{"line_number":38,"context_line":"    cfg.IntOpt(\u0027num_of_updates_to_refresh_cache\u0027,"},{"line_number":39,"context_line":"               default\u003d60,"},{"line_number":40,"context_line":"               min\u003d0,"},{"line_number":41,"context_line":"               help\u003d\"The number of instances info updates before \""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_2995eae3","line":38,"range":{"start_line":38,"start_character":47,"end_line":38,"end_character":49},"updated":"2016-07-04 01:36:13.000000000","message":"can we specify this in terms of the expire time instead of the updates num? Let\u0027s keep the user configurations consistent, I mean cache expiration is mostly specified by expire time, in general.","commit_id":"e5960d6cb6f7aaa8b0695f199a8cd16a97435ee7"},{"author":{"_account_id":8290,"name":"liusheng","email":"liusheng2048@gmail.com","username":"LiuSheng"},"change_message_id":"b933ce79b2a04f390be609a2623e739e042306f2","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                    \"on this option\u0027s interval. Measurements relating \""},{"line_number":36,"context_line":"                    \"to the instances will match intervals \""},{"line_number":37,"context_line":"                    \"defined in pipeline.\"),"},{"line_number":38,"context_line":"    cfg.IntOpt(\u0027num_of_updates_to_refresh_cache\u0027,"},{"line_number":39,"context_line":"               default\u003d60,"},{"line_number":40,"context_line":"               min\u003d0,"},{"line_number":41,"context_line":"               help\u003d\"The number of instances info updates before \""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_84d457bd","line":38,"range":{"start_line":38,"start_character":47,"end_line":38,"end_character":49},"in_reply_to":"1aa78d24_2995eae3","updated":"2016-07-06 03:36:21.000000000","message":"I have considered a time value for this functionality, but I think the updates num is more reasonable. e.g. in difference scenarios, the required polling precision maybe different, a specified time may represent different meanings in different polling precision scenarios. but the updates nums is work with polling interval, it can flexibly meet the users\u0027 requirements.","commit_id":"e5960d6cb6f7aaa8b0695f199a8cd16a97435ee7"},{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"da050469851330b4b1ca0b0fb7f4f0f5529cb57e","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                    \"on this option\u0027s interval. Measurements relating \""},{"line_number":36,"context_line":"                    \"to the instances will match intervals \""},{"line_number":37,"context_line":"                    \"defined in pipeline.\"),"},{"line_number":38,"context_line":"    cfg.IntOpt(\u0027num_of_updates_to_refresh_cache\u0027,"},{"line_number":39,"context_line":"               default\u003d60,"},{"line_number":40,"context_line":"               min\u003d0,"},{"line_number":41,"context_line":"               help\u003d\"The number of instances info updates before \""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_446a6fef","line":38,"range":{"start_line":38,"start_character":47,"end_line":38,"end_character":49},"in_reply_to":"1aa78d24_84d457bd","updated":"2016-07-06 03:41:15.000000000","message":"ok, didn\u0027t noticed that in default configurations, the polling interval could affect this expiration time. Using update number instead of expire time is acceptable then.","commit_id":"e5960d6cb6f7aaa8b0695f199a8cd16a97435ee7"},{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"0b198d6a85e47c7b554536dcc7ef252ac7999c60","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                    since \u003d self.last_run.isoformat()"},{"line_number":78,"context_line":"                else:"},{"line_number":79,"context_line":"                    since \u003d None"},{"line_number":80,"context_line":"                    self.instances.clear()"},{"line_number":81,"context_line":"                instances \u003d self.nova_cli.instance_get_all_by_host("},{"line_number":82,"context_line":"                    cfg.CONF.host, since)"},{"line_number":83,"context_line":"                self.last_run \u003d utc_now"}],"source_content_type":"text/x-python","patch_set":1,"id":"3aaa91ec_3213fab9","line":80,"range":{"start_line":80,"start_character":40,"end_line":80,"end_character":42},"updated":"2016-06-30 08:22:09.000000000","message":"no need to clear the instances, we always assign instances with nova_cli\u0027s return value","commit_id":"e5960d6cb6f7aaa8b0695f199a8cd16a97435ee7"},{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"e4f6aaadc98663c245179a71e0332248dd47d87d","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                    since \u003d self.last_run.isoformat()"},{"line_number":78,"context_line":"                else:"},{"line_number":79,"context_line":"                    since \u003d None"},{"line_number":80,"context_line":"                    self.instances.clear()"},{"line_number":81,"context_line":"                instances \u003d self.nova_cli.instance_get_all_by_host("},{"line_number":82,"context_line":"                    cfg.CONF.host, since)"},{"line_number":83,"context_line":"                self.last_run \u003d utc_now"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_a9db9aec","line":80,"range":{"start_line":80,"start_character":40,"end_line":80,"end_character":42},"in_reply_to":"1aa78d24_6dc54c5a","updated":"2016-07-04 01:36:13.000000000","message":"u\u0027r right","commit_id":"e5960d6cb6f7aaa8b0695f199a8cd16a97435ee7"},{"author":{"_account_id":8290,"name":"liusheng","email":"liusheng2048@gmail.com","username":"LiuSheng"},"change_message_id":"a7a447198cf7d6e599088e61947112bc15247f41","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                    since \u003d self.last_run.isoformat()"},{"line_number":78,"context_line":"                else:"},{"line_number":79,"context_line":"                    since \u003d None"},{"line_number":80,"context_line":"                    self.instances.clear()"},{"line_number":81,"context_line":"                instances \u003d self.nova_cli.instance_get_all_by_host("},{"line_number":82,"context_line":"                    cfg.CONF.host, since)"},{"line_number":83,"context_line":"                self.last_run \u003d utc_now"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_6dc54c5a","line":80,"range":{"start_line":80,"start_character":40,"end_line":80,"end_character":42},"in_reply_to":"3aaa91ec_3213fab9","updated":"2016-07-02 13:37:27.000000000","message":"no, it is need to clear the instances, the self.instances is a dict, and only the updated instances will be assigned to the self.instances. if we want to refresh the whole cache, we need to clear the local legacy cache.","commit_id":"e5960d6cb6f7aaa8b0695f199a8cd16a97435ee7"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"9f0c4ce7d1eb4be387a9fe51110090594799df73","unresolved":false,"context_lines":[{"line_number":35,"context_line":"                    \"on this option\u0027s interval. Measurements relating \""},{"line_number":36,"context_line":"                    \"to the instances will match intervals \""},{"line_number":37,"context_line":"                    \"defined in pipeline.\"),"},{"line_number":38,"context_line":"    cfg.IntOpt(\u0027num_of_updates_to_refresh_cache\u0027,"},{"line_number":39,"context_line":"               default\u003d60,"},{"line_number":40,"context_line":"               min\u003d0,"},{"line_number":41,"context_line":"               help\u003d\"The number of instances info updates before \""}],"source_content_type":"text/x-python","patch_set":2,"id":"bacf61ea_e5eaaaab","line":38,"updated":"2016-07-28 19:18:09.000000000","message":"hmm... can we just call this resource_cache_expiry then? the current option assumes the user knows how cache is implemented.\n\nthen maybe have it time based? maybe default to a day?","commit_id":"de0188178589fdf68c9501f3ace8aea91a8af625"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"e266a35aff9a927c6a7ecae153e91a07981f71c9","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        self.instances \u003d {}"},{"line_number":56,"context_line":"        self.expiration_time \u003d cfg.CONF.compute.resource_update_interval"},{"line_number":57,"context_line":"        self.num_of_updates \u003d 0"},{"line_number":58,"context_line":"        self.number_to_refresh \u003d \\"},{"line_number":59,"context_line":"            cfg.CONF.compute.num_of_updates_to_refresh_cache"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def discover(self, manager, param\u003dNone):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dada55a8_0c050079","line":58,"updated":"2016-07-26 22:04:57.000000000","message":"use brackets","commit_id":"de0188178589fdf68c9501f3ace8aea91a8af625"},{"author":{"_account_id":8290,"name":"liusheng","email":"liusheng2048@gmail.com","username":"LiuSheng"},"change_message_id":"7668207a40683058cbf91d6d6c59bbc1785879ff","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        self.instances \u003d {}"},{"line_number":56,"context_line":"        self.expiration_time \u003d cfg.CONF.compute.resource_update_interval"},{"line_number":57,"context_line":"        self.num_of_updates \u003d 0"},{"line_number":58,"context_line":"        self.number_to_refresh \u003d \\"},{"line_number":59,"context_line":"            cfg.CONF.compute.num_of_updates_to_refresh_cache"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def discover(self, manager, param\u003dNone):"}],"source_content_type":"text/x-python","patch_set":2,"id":"dada55a8_67a00ef5","line":58,"in_reply_to":"dada55a8_0c050079","updated":"2016-07-27 03:45:25.000000000","message":"it this looks werid ? :(\n\n        self.number_to_refresh \u003d (\n            cfg.CONF.compute.num_of_updates_to_refresh_cache)","commit_id":"de0188178589fdf68c9501f3ace8aea91a8af625"},{"author":{"_account_id":22587,"name":"xujun","email":"xu.jun@99cloud.net","username":"majik"},"change_message_id":"4aeff1ee3fd9a83628e17e3fcb46533ebda05d81","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        self.instances \u003d {}"},{"line_number":56,"context_line":"        self.expiration_time \u003d cfg.CONF.compute.resource_update_interval"},{"line_number":57,"context_line":"        self.num_of_updates \u003d 0"},{"line_number":58,"context_line":"        self.number_to_refresh \u003d \\"},{"line_number":59,"context_line":"            cfg.CONF.compute.num_of_updates_to_refresh_cache"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def discover(self, manager, param\u003dNone):"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a95cdbc_a6241e60","line":58,"in_reply_to":"dada55a8_67a00ef5","updated":"2016-10-07 05:09:40.000000000","message":"try this:\n\nself.number_to_refresh \u003d cfg.CONF.compute \\\n                             .compute.num_of_updates_to_refresh_cache","commit_id":"de0188178589fdf68c9501f3ace8aea91a8af625"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"767a15d8634991400c6a9a504f505593c1662c17","unresolved":false,"context_lines":[{"line_number":70,"context_line":"                    \"host, we need to clean the legacy instances info in \""},{"line_number":71,"context_line":"                    \"local cache by totally refreshing the local cache. \""},{"line_number":72,"context_line":"                    \"The minimum should be the value of the config option \""},{"line_number":73,"context_line":"                    \"of resource_update_interval.\")"},{"line_number":74,"context_line":"]"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"LOG \u003d log.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba5201f7_0aab2c76","line":73,"updated":"2017-01-11 16:55:35.000000000","message":"if we keep this, we should make it obvious this is only applicable to naive polling and not the new libvirt_metadata polling.","commit_id":"8812d917a887128638e7d29534ad307a15812b26"},{"author":{"_account_id":8290,"name":"liusheng","email":"liusheng2048@gmail.com","username":"LiuSheng"},"change_message_id":"416451d593613f3d9054029c28574bbc3657a3b8","unresolved":false,"context_lines":[{"line_number":70,"context_line":"                    \"host, we need to clean the legacy instances info in \""},{"line_number":71,"context_line":"                    \"local cache by totally refreshing the local cache. \""},{"line_number":72,"context_line":"                    \"The minimum should be the value of the config option \""},{"line_number":73,"context_line":"                    \"of resource_update_interval.\")"},{"line_number":74,"context_line":"]"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"LOG \u003d log.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba5201f7_ffb20f95","line":73,"in_reply_to":"ba5201f7_0aab2c76","updated":"2017-01-12 03:22:00.000000000","message":"yes, this is only for polling for Nova api, will update this text.","commit_id":"8812d917a887128638e7d29534ad307a15812b26"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"f743dd7ba6c508cb5b25afd8ddca91eb5b61b645","unresolved":false,"context_lines":[{"line_number":229,"context_line":"            secs_from_last_update \u003d timeutils.delta_seconds("},{"line_number":230,"context_line":"                self.last_run, utc_now)"},{"line_number":231,"context_line":"        if self.last_cache_expire:"},{"line_number":232,"context_line":"            secs_from_last_expire \u003d timeutils.delta_seconds("},{"line_number":233,"context_line":"                self.last_cache_expire, utc_now)"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"        instances \u003d []"}],"source_content_type":"text/x-python","patch_set":8,"id":"7a3c09a3_a4da24e6","line":232,"updated":"2017-01-17 16:49:15.000000000","message":"would be cool not to use delta_seconds which ought to be deprecated\n\njust do:\n\n(self.last_cache_expire - utc_now).delta_seconds()\n\n\nyeah I know this function is useless","commit_id":"2a2a3ba4253d2e6998e4c2c8b18c3107d0697ccf"}]}
