)]}'
{"aodh/api/controllers/v2/alarm_rules/combination.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"15f2db7630aeefcd2ac42d1cd7fc4bbcf858b461","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"OPTS \u003d ["},{"line_number":27,"context_line":"    cfg.BoolOpt(\u0027deny_combination_alarm_circle_dependency\u0027,"},{"line_number":28,"context_line":"                default\u003dTrue,"},{"line_number":29,"context_line":"                help\u003d\u0027If true, requests which cause combination alarm circle \u0027"},{"line_number":30,"context_line":"                     \u0027dependency will be denied.\u0027"},{"line_number":31,"context_line":"                ),"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a1a9d01_fef39008","line":28,"updated":"2015-09-26 08:51:30.000000000","message":"I don\u0027t think it should be configurable. No need. Nobody is going to set False.","commit_id":"dea32eff896475d9f14d2fd6aae4162e1ebf5b8b"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"1175209133d24951948a4bbea77ef23b4080608c","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"OPTS \u003d ["},{"line_number":27,"context_line":"    cfg.BoolOpt(\u0027deny_combination_alarm_circle_dependency\u0027,"},{"line_number":28,"context_line":"                default\u003dTrue,"},{"line_number":29,"context_line":"                help\u003d\u0027If true, requests which cause combination alarm circle \u0027"},{"line_number":30,"context_line":"                     \u0027dependency will be denied.\u0027"},{"line_number":31,"context_line":"                ),"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a1a9d01_bed2f8fe","line":28,"in_reply_to":"9a1a9d01_5ebe3cd5","updated":"2015-09-26 09:37:15.000000000","message":"Yeah, I think combination alarm is good for some case, but it introduces terrible relationship which never be limited or handled properly.\n\nI will remove this option.","commit_id":"dea32eff896475d9f14d2fd6aae4162e1ebf5b8b"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"efeee5c52e3cd6a760d64a7dc6065ec7f42e4565","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"OPTS \u003d ["},{"line_number":27,"context_line":"    cfg.BoolOpt(\u0027deny_combination_alarm_circle_dependency\u0027,"},{"line_number":28,"context_line":"                default\u003dTrue,"},{"line_number":29,"context_line":"                help\u003d\u0027If true, requests which cause combination alarm circle \u0027"},{"line_number":30,"context_line":"                     \u0027dependency will be denied.\u0027"},{"line_number":31,"context_line":"                ),"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a1a9d01_5ebe3cd5","line":28,"in_reply_to":"9a1a9d01_be4c3843","updated":"2015-09-26 09:09:30.000000000","message":"Having a dependency loop is not acceptable. It\u0027s going to break the evaluator I think, and anyway the user is going to do mistake and never know about it.\n\nAs you say, in normal mode (user create an alarm) the performance impact is bad but not terrible.\n\nThe ultimate solution is to kill this alarm type, that\u0027s what we\u0027ll do. In the meantime, let\u0027s assume our design mistake but have a correct UX. :)","commit_id":"dea32eff896475d9f14d2fd6aae4162e1ebf5b8b"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"40c97dd58ce21fd6123619744e45adafd18a4bdc","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"OPTS \u003d ["},{"line_number":27,"context_line":"    cfg.BoolOpt(\u0027deny_combination_alarm_circle_dependency\u0027,"},{"line_number":28,"context_line":"                default\u003dTrue,"},{"line_number":29,"context_line":"                help\u003d\u0027If true, requests which cause combination alarm circle \u0027"},{"line_number":30,"context_line":"                     \u0027dependency will be denied.\u0027"},{"line_number":31,"context_line":"                ),"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a1a9d01_be4c3843","line":28,"in_reply_to":"9a1a9d01_fef39008","updated":"2015-09-26 08:56:48.000000000","message":"I make it configurable because it scan full alarm table (for normal user, just part of it), so if administrator thinks that performance is the top priority (in large scale), then he can disable this feature.\n\nWhat your opinion?","commit_id":"dea32eff896475d9f14d2fd6aae4162e1ebf5b8b"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"15f2db7630aeefcd2ac42d1cd7fc4bbcf858b461","unresolved":false,"context_lines":[{"line_number":122,"context_line":"                    new_good_alarms.append(a)"},{"line_number":123,"context_line":"            # circle dependency detected"},{"line_number":124,"context_line":"            if not new_good_alarms:"},{"line_number":125,"context_line":"                break"},{"line_number":126,"context_line":"            comb_alarms -\u003d set(new_good_alarms)"},{"line_number":127,"context_line":"            good_alarms.update([ga.alarm_id for ga in new_good_alarms])"},{"line_number":128,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a1a9d01_bede786b","line":125,"updated":"2015-09-26 08:51:30.000000000","message":"would be clearer to raise here.","commit_id":"dea32eff896475d9f14d2fd6aae4162e1ebf5b8b"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"40c97dd58ce21fd6123619744e45adafd18a4bdc","unresolved":false,"context_lines":[{"line_number":122,"context_line":"                    new_good_alarms.append(a)"},{"line_number":123,"context_line":"            # circle dependency detected"},{"line_number":124,"context_line":"            if not new_good_alarms:"},{"line_number":125,"context_line":"                break"},{"line_number":126,"context_line":"            comb_alarms -\u003d set(new_good_alarms)"},{"line_number":127,"context_line":"            good_alarms.update([ga.alarm_id for ga in new_good_alarms])"},{"line_number":128,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a1a9d01_de47ac1b","line":125,"in_reply_to":"9a1a9d01_bede786b","updated":"2015-09-26 08:56:48.000000000","message":"will be done","commit_id":"dea32eff896475d9f14d2fd6aae4162e1ebf5b8b"}]}
