)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"fa8e83dcaceb8903a81cc14163b9cfe6e5a427ac","unresolved":false,"context_lines":[{"line_number":14,"context_line":"False (True by default) if the operator desires to just return an"},{"line_number":15,"context_line":"API error altogether if the user has any instance in the down cell"},{"line_number":16,"context_line":"instead of skipping."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Id749761c58d4e1bc001b745d49b6ff0f3732e133"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f79a3b5_b9b997cc","line":17,"updated":"2018-08-27 12:58:39.000000000","message":"if mriedem or Kevin_Zheng or yikun open a wishlist bug, I could tag it here.","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":14,"context_line":"False (True by default) if the operator desires to just return an"},{"line_number":15,"context_line":"API error altogether if the user has any instance in the down cell"},{"line_number":16,"context_line":"instead of skipping."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Id749761c58d4e1bc001b745d49b6ff0f3732e133"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3f79a3b5_33bbade5","line":17,"updated":"2018-09-17 23:04:56.000000000","message":"We should mention this is essentially a configurable revert of change I308b494ab07f6936bef94f4c9da45e9473e3534d for bug 1726301 so that operators can opt into the 500 response behavior when their users are listing servers out of a down cell if they so chose.","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0a66d5ffada22541467cce5aa58a941fbbce8746","unresolved":false,"context_lines":[{"line_number":14,"context_line":"False (True by default) if the operator desires to just return an"},{"line_number":15,"context_line":"API error altogether if the user has any instance in the down cell"},{"line_number":16,"context_line":"instead of skipping."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Id749761c58d4e1bc001b745d49b6ff0f3732e133"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3f79a3b5_73a7e5a9","line":17,"in_reply_to":"3f79a3b5_33bbade5","updated":"2018-09-17 23:05:43.000000000","message":"Also add:\n\nRelated-Bug: #1726301","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":14,"context_line":"False (True by default) if the operator desires to just return an"},{"line_number":15,"context_line":"API error altogether if the user has any instance in the down cell"},{"line_number":16,"context_line":"instead of skipping."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Id749761c58d4e1bc001b745d49b6ff0f3732e133"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3f79a3b5_834fc190","line":17,"in_reply_to":"3f79a3b5_33bbade5","updated":"2018-09-18 16:25:48.000000000","message":"ok.","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":14,"context_line":"False (True by default) if the operator desires to just return an"},{"line_number":15,"context_line":"API error altogether if the user has any instance in the down cell"},{"line_number":16,"context_line":"instead of skipping."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: Id749761c58d4e1bc001b745d49b6ff0f3732e133"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3f79a3b5_a37afdb7","line":17,"in_reply_to":"3f79a3b5_73a7e5a9","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"}],"nova/compute/multi_cell_list.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"3b559bca223d44d12932bd0d352cf7015eac2417","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                                item.cell_uuid)"},{"line_number":418,"context_line":"                    continue"},{"line_number":419,"context_line":"                else:"},{"line_number":420,"context_line":"                    LOG.warning(\u0027Cell %s is not responding\u0027, item.cell_uuid)"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"            yield item._db_record"},{"line_number":423,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_a8bcc306","line":420,"updated":"2018-08-28 15:26:36.000000000","message":"Don\u0027t you want to raise something specific here? Otherwise we\u0027ll just yield the sentinel to the caller which I\u0027m assuming will choke on it in a weird way. That probably gets us a 500, but ... the hard way.","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"a4b9a29602e5618a0eb457c5dbe6c11d4f7f2717","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                                item.cell_uuid)"},{"line_number":418,"context_line":"                    continue"},{"line_number":419,"context_line":"                else:"},{"line_number":420,"context_line":"                    LOG.warning(\u0027Cell %s is not responding\u0027, item.cell_uuid)"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"            yield item._db_record"},{"line_number":423,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_70675b53","line":420,"in_reply_to":"3f79a3b5_0029fc99","updated":"2018-08-29 12:09:30.000000000","message":"I guess its fine because API already catches this and only returns 500 with Internal error to the user and we can see this exception nicely in the api-logs.","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"a00ffa92a550c207ca66782cae41cb6a49ded658","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                                item.cell_uuid)"},{"line_number":418,"context_line":"                    continue"},{"line_number":419,"context_line":"                else:"},{"line_number":420,"context_line":"                    LOG.warning(\u0027Cell %s is not responding\u0027, item.cell_uuid)"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"            yield item._db_record"},{"line_number":423,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_0029fc99","line":420,"in_reply_to":"3f79a3b5_31afb77e","updated":"2018-08-29 09:13:16.000000000","message":"good point,","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"52b48f0eae0a20c8633b5552208a7c02c74d43b6","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                                item.cell_uuid)"},{"line_number":418,"context_line":"                    continue"},{"line_number":419,"context_line":"                else:"},{"line_number":420,"context_line":"                    LOG.warning(\u0027Cell %s is not responding\u0027, item.cell_uuid)"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"            yield item._db_record"},{"line_number":423,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_c660f910","line":420,"in_reply_to":"3f79a3b5_70675b53","updated":"2018-08-29 13:36:36.000000000","message":"Okay cool.","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"c920b7d70ee96ac3bcbb937e88398683f983863f","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                                item.cell_uuid)"},{"line_number":418,"context_line":"                    continue"},{"line_number":419,"context_line":"                else:"},{"line_number":420,"context_line":"                    LOG.warning(\u0027Cell %s is not responding\u0027, item.cell_uuid)"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"            yield item._db_record"},{"line_number":423,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_31afb77e","line":420,"in_reply_to":"3f79a3b5_91300ba1","updated":"2018-08-28 20:02:42.000000000","message":"I think I would raise something specific so we know. Even just this would be better I think:\n\n raise exception.NovaException(\"Cell results missing but config indicates we should fail\")\n\nOn that...hmm.. does this message get stringified in the 500 such that the user sees it? If so, we should probably catch it specifically in the api code and sanitize into something like \"Internal error\".","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"bc1b9dd0939600b9ae5e20196d1bd9c2fdb5f99c","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                                item.cell_uuid)"},{"line_number":418,"context_line":"                    continue"},{"line_number":419,"context_line":"                else:"},{"line_number":420,"context_line":"                    LOG.warning(\u0027Cell %s is not responding\u0027, item.cell_uuid)"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"            yield item._db_record"},{"line_number":423,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_91300ba1","line":420,"in_reply_to":"3f79a3b5_a8bcc306","updated":"2018-08-28 19:56:24.000000000","message":"the reason I did this was because the choking was the old behavior before we started skipping, but I can raise a CellTimeout Exception or something if that\u0027s preferred ?","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"2d47bdcc3a7f760fd8f758bad48b240cc522b98a","unresolved":false,"context_lines":[{"line_number":412,"context_line":"                # on a later one, so be sure we fix the accounting."},{"line_number":413,"context_line":"                if item.cell_uuid in self._cells_responded:"},{"line_number":414,"context_line":"                    self._cells_responded.remove(item.cell_uuid)"},{"line_number":415,"context_line":"                if CONF.api.instance_list_skip_down_cells:"},{"line_number":416,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":417,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":418,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_1c6264ae","line":415,"range":{"start_line":415,"start_character":28,"end_line":415,"end_character":57},"updated":"2018-09-03 12:05:09.000000000","message":"Currently, the multi_cell_list is used for instance and migration, so I think this configuration name should be changed more generic, right?","commit_id":"67e94bde65729e6353b8c9335e028b270ea28c05"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"3213a49521aa2d277be76560bdd8c8d52f6fce3e","unresolved":false,"context_lines":[{"line_number":412,"context_line":"                # on a later one, so be sure we fix the accounting."},{"line_number":413,"context_line":"                if item.cell_uuid in self._cells_responded:"},{"line_number":414,"context_line":"                    self._cells_responded.remove(item.cell_uuid)"},{"line_number":415,"context_line":"                if CONF.api.instance_list_skip_down_cells:"},{"line_number":416,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":417,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":418,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_9945f046","line":415,"range":{"start_line":415,"start_character":28,"end_line":415,"end_character":57},"in_reply_to":"3f79a3b5_1c6264ae","updated":"2018-09-05 16:10:03.000000000","message":"Well, you\u0027re right that this is checking an instance-specific flag in the generic module, which will impact everything that uses it (including migration listing). I was kinda expecting this to only impact instance listing though.\n\nSo which is preferred? Either:\n\n 1. A generic config option that applies to all multi-cell-list ops\n 2. An instance-specific config option that only applies to instance lists\n\nI had been assuming #2, but would be okay with #1 as well.","commit_id":"67e94bde65729e6353b8c9335e028b270ea28c05"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"eb6bc2e4b5e561e19dde823b80d2d1b4c4e8f754","unresolved":false,"context_lines":[{"line_number":412,"context_line":"                # on a later one, so be sure we fix the accounting."},{"line_number":413,"context_line":"                if item.cell_uuid in self._cells_responded:"},{"line_number":414,"context_line":"                    self._cells_responded.remove(item.cell_uuid)"},{"line_number":415,"context_line":"                if CONF.api.instance_list_skip_down_cells:"},{"line_number":416,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":417,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":418,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_ba6f2927","line":415,"range":{"start_line":415,"start_character":28,"end_line":415,"end_character":57},"in_reply_to":"3f79a3b5_9945f046","updated":"2018-09-10 09:23:40.000000000","message":"I also vote to #2, I think the advantage of #2 is we can control the behavior of each resources separately.","commit_id":"67e94bde65729e6353b8c9335e028b270ea28c05"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"273acf670149a3d2cf4a957c3a9f95f6f4d44eb9","unresolved":false,"context_lines":[{"line_number":412,"context_line":"                # on a later one, so be sure we fix the accounting."},{"line_number":413,"context_line":"                if item.cell_uuid in self._cells_responded:"},{"line_number":414,"context_line":"                    self._cells_responded.remove(item.cell_uuid)"},{"line_number":415,"context_line":"                if CONF.api.instance_list_skip_down_cells:"},{"line_number":416,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":417,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":418,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_fbd90728","line":415,"range":{"start_line":415,"start_character":28,"end_line":415,"end_character":57},"in_reply_to":"3f79a3b5_ba6f2927","updated":"2018-09-11 16:04:26.000000000","message":"\u003e I also vote to #2, I think the advantage of #2 is we can control\n \u003e the behavior of each resources separately.\n\numm, I would just want this for instance listing as well, I just changed the name because I thought you mentioned it should be generic for it to be less confusing for something.","commit_id":"67e94bde65729e6353b8c9335e028b270ea28c05"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"67f9cedfa797c0b38e9c5117747f6668cd4dd042","unresolved":false,"context_lines":[{"line_number":412,"context_line":"                # on a later one, so be sure we fix the accounting."},{"line_number":413,"context_line":"                if item.cell_uuid in self._cells_responded:"},{"line_number":414,"context_line":"                    self._cells_responded.remove(item.cell_uuid)"},{"line_number":415,"context_line":"                if CONF.api.instance_list_skip_down_cells:"},{"line_number":416,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":417,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":418,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f79a3b5_d07ad623","line":415,"range":{"start_line":415,"start_character":28,"end_line":415,"end_character":57},"in_reply_to":"3f79a3b5_fbd90728","updated":"2018-09-12 06:43:50.000000000","message":"But #2 means, we need move this logic to instance_list, or add some flag in CrossCellLister (to distinguish between migration_list.py and instance_list.pyto) to tell us the records is migrations or instances.\n\nThe PS6 is more like the #1, this generic config is also okay for me. because we can do #2 when we really want to control the behavior of each resources.","commit_id":"67e94bde65729e6353b8c9335e028b270ea28c05"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":404,"context_line":"                return"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"            if item._db_record in CELL_FAIL_SENTINELS:"},{"line_number":407,"context_line":"                if item._db_record \u003d\u003d context.did_not_respond_sentinel:"},{"line_number":408,"context_line":"                    self._cells_timed_out.add(item.cell_uuid)"},{"line_number":409,"context_line":"                elif item._db_record \u003d\u003d context.raised_exception_sentinel:"},{"line_number":410,"context_line":"                    self._cells_failed.add(item.cell_uuid)"},{"line_number":411,"context_line":"                # We might have received one batch but timed out or failed"},{"line_number":412,"context_line":"                # on a later one, so be sure we fix the accounting."},{"line_number":413,"context_line":"                if item.cell_uuid in self._cells_responded:"},{"line_number":414,"context_line":"                    self._cells_responded.remove(item.cell_uuid)"},{"line_number":415,"context_line":"                if CONF.api.list_records_by_skipping_down_cells:"},{"line_number":416,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":417,"context_line":"                                \u0027being omitted from the results\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_13b6b1fa","line":414,"range":{"start_line":407,"start_character":16,"end_line":414,"end_character":64},"updated":"2018-09-17 23:04:56.000000000","message":"Do we care about this if we\u0027re just going to raise an exception below?","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":404,"context_line":"                return"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"            if item._db_record in CELL_FAIL_SENTINELS:"},{"line_number":407,"context_line":"                if item._db_record \u003d\u003d context.did_not_respond_sentinel:"},{"line_number":408,"context_line":"                    self._cells_timed_out.add(item.cell_uuid)"},{"line_number":409,"context_line":"                elif item._db_record \u003d\u003d context.raised_exception_sentinel:"},{"line_number":410,"context_line":"                    self._cells_failed.add(item.cell_uuid)"},{"line_number":411,"context_line":"                # We might have received one batch but timed out or failed"},{"line_number":412,"context_line":"                # on a later one, so be sure we fix the accounting."},{"line_number":413,"context_line":"                if item.cell_uuid in self._cells_responded:"},{"line_number":414,"context_line":"                    self._cells_responded.remove(item.cell_uuid)"},{"line_number":415,"context_line":"                if CONF.api.list_records_by_skipping_down_cells:"},{"line_number":416,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":417,"context_line":"                                \u0027being omitted from the results\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_8366e128","line":414,"range":{"start_line":407,"start_character":16,"end_line":414,"end_character":64},"in_reply_to":"3f79a3b5_13b6b1fa","updated":"2018-09-18 16:25:48.000000000","message":"Well the exception would be raised only if the config is set to False in which case we need not care I guess. I just thought its better to maintain uniformity since its only a transition before the new microversion. But I can just do the whole thing inside the if and raise the exception otherwise.","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":419,"context_line":"                    continue"},{"line_number":420,"context_line":"                else:"},{"line_number":421,"context_line":"                    raise exception.NovaException("},{"line_number":422,"context_line":"                        _(\u0027Cell %s is not responding but configuration \u0027"},{"line_number":423,"context_line":"                          \u0027indicates that we should fail.\u0027) % item.cell_uuid)"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"            yield item._db_record"},{"line_number":426,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_b3933d5c","line":423,"range":{"start_line":422,"start_character":27,"end_line":423,"end_character":58},"updated":"2018-09-17 23:04:56.000000000","message":"Does this get exposed to the end user? Because if so, we should probably mask that or re-word this since I don\u0027t think we want to tell the user that they are getting a 500 because they have servers in a cell that is down.","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":419,"context_line":"                    continue"},{"line_number":420,"context_line":"                else:"},{"line_number":421,"context_line":"                    raise exception.NovaException("},{"line_number":422,"context_line":"                        _(\u0027Cell %s is not responding but configuration \u0027"},{"line_number":423,"context_line":"                          \u0027indicates that we should fail.\u0027) % item.cell_uuid)"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"            yield item._db_record"},{"line_number":426,"context_line":"            self._cells_responded.add(item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_2367cd26","line":423,"range":{"start_line":422,"start_character":27,"end_line":423,"end_character":58},"in_reply_to":"3f79a3b5_b3933d5c","updated":"2018-09-18 16:25:48.000000000","message":"No it gets caught at the API level, refer to comments from previous PS\u0027s.","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"f735cec7ab1a99c86228b326122240d55ecabad9","unresolved":false,"context_lines":[{"line_number":404,"context_line":"                return"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"            if item._db_record in CELL_FAIL_SENTINELS:"},{"line_number":407,"context_line":"                if CONF.api.list_records_by_skipping_down_cells:"},{"line_number":408,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":409,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":410,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":10,"id":"3f79a3b5_b92af7e3","line":407,"updated":"2018-09-20 18:06:44.000000000","message":"FWIW, I hate that this is all now inside this if. I\u0027m not sure what the concern was before, because I think we were just running through one iteration before raising, which is not a big deal.\n\nPersonally, I\u0027d just check the conf and raise/explode if we\u0027re not supposed to continue and then just let the body here be the usual/existing stuff.","commit_id":"e9bd41be4ce59a2a958668e48ecf45c9b1b0ea69"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"5165c20603699abadee9ba7a1d6427900965c82f","unresolved":false,"context_lines":[{"line_number":404,"context_line":"                return"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"            if item._db_record in CELL_FAIL_SENTINELS:"},{"line_number":407,"context_line":"                if CONF.api.list_records_by_skipping_down_cells:"},{"line_number":408,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":409,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":410,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":10,"id":"3f79a3b5_9f3fdb84","line":407,"in_reply_to":"3f79a3b5_7f799f7f","updated":"2018-09-20 19:46:01.000000000","message":"hehe I know, :D all the same I think your suggestion is cleaner..let me change this and then you can reinstate the vote :)","commit_id":"e9bd41be4ce59a2a958668e48ecf45c9b1b0ea69"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"7bf333d2fd2abbea6f19a892a38f218732f57487","unresolved":false,"context_lines":[{"line_number":404,"context_line":"                return"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"            if item._db_record in CELL_FAIL_SENTINELS:"},{"line_number":407,"context_line":"                if CONF.api.list_records_by_skipping_down_cells:"},{"line_number":408,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":409,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":410,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":10,"id":"3f79a3b5_7f799f7f","line":407,"in_reply_to":"3f79a3b5_9f559bfb","updated":"2018-09-20 19:42:08.000000000","message":"Hah, sorry.. It wasn\u0027t your idea, so I think you\u0027re in the clear. And.. I use \"hate\" pretty liberally :P","commit_id":"e9bd41be4ce59a2a958668e48ecf45c9b1b0ea69"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"a3ef9190ac05f0f9e39e955238a7ada211f9ff3b","unresolved":false,"context_lines":[{"line_number":404,"context_line":"                return"},{"line_number":405,"context_line":""},{"line_number":406,"context_line":"            if item._db_record in CELL_FAIL_SENTINELS:"},{"line_number":407,"context_line":"                if CONF.api.list_records_by_skipping_down_cells:"},{"line_number":408,"context_line":"                    LOG.warning(\u0027Cell %s is not responding and hence is \u0027"},{"line_number":409,"context_line":"                                \u0027being omitted from the results\u0027,"},{"line_number":410,"context_line":"                                item.cell_uuid)"}],"source_content_type":"text/x-python","patch_set":10,"id":"3f79a3b5_9f559bfb","line":407,"in_reply_to":"3f79a3b5_b92af7e3","updated":"2018-09-20 19:34:59.000000000","message":"ack, I will change this now.. don\u0027t want anyone to hate my code. :)","commit_id":"e9bd41be4ce59a2a958668e48ecf45c9b1b0ea69"}],"nova/conf/api.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"3b559bca223d44d12932bd0d352cf7015eac2417","unresolved":false,"context_lines":[{"line_number":326,"context_line":"        help\u003d\"\"\""},{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option at"},{"line_number":330,"context_line":"its default value. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Else it loops through"},{"line_number":333,"context_line":"all cells) set this option to False."}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_4843af14","line":330,"range":{"start_line":329,"start_character":74,"end_line":330,"end_character":17},"updated":"2018-08-28 15:26:36.000000000","message":"enabled","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"bc1b9dd0939600b9ae5e20196d1bd9c2fdb5f99c","unresolved":false,"context_lines":[{"line_number":326,"context_line":"        help\u003d\"\"\""},{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option at"},{"line_number":330,"context_line":"its default value. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Else it loops through"},{"line_number":333,"context_line":"all cells) set this option to False."}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_3125775d","line":330,"range":{"start_line":329,"start_character":74,"end_line":330,"end_character":17},"in_reply_to":"3f79a3b5_4843af14","updated":"2018-08-28 19:56:24.000000000","message":"Done","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"3b559bca223d44d12932bd0d352cf7015eac2417","unresolved":false,"context_lines":[{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option at"},{"line_number":330,"context_line":"its default value. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Else it loops through"},{"line_number":333,"context_line":"all cells) set this option to False."},{"line_number":334,"context_line":"\"\"\"),"},{"line_number":335,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_0845b715","line":332,"range":{"start_line":332,"start_character":57,"end_line":332,"end_character":61},"updated":"2018-08-28 15:26:36.000000000","message":"\"Otherwise\" would be clearer here I think.","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"bc1b9dd0939600b9ae5e20196d1bd9c2fdb5f99c","unresolved":false,"context_lines":[{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option at"},{"line_number":330,"context_line":"its default value. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Else it loops through"},{"line_number":333,"context_line":"all cells) set this option to False."},{"line_number":334,"context_line":"\"\"\"),"},{"line_number":335,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_512a732c","line":332,"range":{"start_line":332,"start_character":57,"end_line":332,"end_character":61},"in_reply_to":"3f79a3b5_0845b715","updated":"2018-08-28 19:56:24.000000000","message":"Done","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":324,"context_line":"    cfg.BoolOpt(\"list_records_by_skipping_down_cells\","},{"line_number":325,"context_line":"        default\u003dTrue,"},{"line_number":326,"context_line":"        help\u003d\"\"\""},{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option"},{"line_number":330,"context_line":"enabled. If you do not want the API to return anything even if one"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_d3903951","line":327,"range":{"start_line":327,"start_character":5,"end_line":327,"end_character":13},"updated":"2018-09-17 23:04:56.000000000","message":"set to False","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":324,"context_line":"    cfg.BoolOpt(\"list_records_by_skipping_down_cells\","},{"line_number":325,"context_line":"        default\u003dTrue,"},{"line_number":326,"context_line":"        help\u003d\"\"\""},{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option"},{"line_number":330,"context_line":"enabled. If you do not want the API to return anything even if one"}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_23b26d97","line":327,"range":{"start_line":327,"start_character":5,"end_line":327,"end_character":13},"in_reply_to":"3f79a3b5_d3903951","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option"},{"line_number":330,"context_line":"enabled. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Otherwise it loops"},{"line_number":333,"context_line":"through all cells) set this option to False."}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_73992578","line":330,"range":{"start_line":330,"start_character":0,"end_line":330,"end_character":7},"updated":"2018-09-17 23:04:56.000000000","message":"set to True","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option"},{"line_number":330,"context_line":"enabled. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Otherwise it loops"},{"line_number":333,"context_line":"through all cells) set this option to False."}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_e3af9528","line":330,"range":{"start_line":330,"start_character":0,"end_line":330,"end_character":7},"in_reply_to":"3f79a3b5_73992578","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option"},{"line_number":330,"context_line":"enabled. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Otherwise it loops"},{"line_number":333,"context_line":"through all cells) set this option to False."},{"line_number":334,"context_line":"\"\"\"),"},{"line_number":335,"context_line":"]"},{"line_number":336,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_f37e9519","line":333,"range":{"start_line":330,"start_character":9,"end_line":333,"end_character":44},"updated":"2018-09-17 23:04:56.000000000","message":"This last sentence is confusing. It\u0027s only about the instance_list_per_project_cells\u003dTrue scenario right? If so, can we re-word this with something like, \"If [api]/instance_list_per_project_cells\u003dTrue, then ....\". I\u0027m having a hard time sorting out what this is trying to say. Does the instance_list_per_project_cells config even matter? If list_records_by_skipping_down_cells\u003dFalse and the tenant has servers in a down cell, regardless of instance_list_per_project_cells, shouldn\u0027t we raise the 500?","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":327,"context_line":"When disabled, this will cause the API to return a 500 error if there is an"},{"line_number":328,"context_line":"infrastructure failure like non-responsive cells. If you want the API to skip"},{"line_number":329,"context_line":"the down cells and return the results from the up cells leave this option"},{"line_number":330,"context_line":"enabled. If you do not want the API to return anything even if one"},{"line_number":331,"context_line":"of the cells in which the tenant has mapped instances is down (works this way"},{"line_number":332,"context_line":"only when [api]/instance_list_per_project_cells is True. Otherwise it loops"},{"line_number":333,"context_line":"through all cells) set this option to False."},{"line_number":334,"context_line":"\"\"\"),"},{"line_number":335,"context_line":"]"},{"line_number":336,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_a3a51d4a","line":333,"range":{"start_line":330,"start_character":9,"end_line":333,"end_character":44},"in_reply_to":"3f79a3b5_f37e9519","updated":"2018-09-18 16:25:48.000000000","message":"sure,","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"}],"nova/tests/unit/compute/test_instance_list.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"bd773bd5cfc7fb2613c89bb2475523c11a86800e","unresolved":false,"context_lines":[{"line_number":211,"context_line":"                None, None, [], None, None)"},{"line_number":212,"context_line":"            self.assertTrue(False)"},{"line_number":213,"context_line":"        except exception.NovaException:"},{"line_number":214,"context_line":"            self.assertTrue(True)"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"    def test_batch_size_fixed(self):"},{"line_number":217,"context_line":"        fixed_size \u003d 200"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_41f12c95","line":214,"updated":"2018-08-29 18:27:52.000000000","message":"What you want here is:\n\n self.assertRaises(exception.NovaException,\n    instance_list.get_instance_objects_sorted, self.context, ...","commit_id":"4532690b5dee2468b604de16ddbaac3ceeadc2f0"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"1246f723685affd67c48880a501abb4c701a32d3","unresolved":false,"context_lines":[{"line_number":211,"context_line":"                None, None, [], None, None)"},{"line_number":212,"context_line":"            self.assertTrue(False)"},{"line_number":213,"context_line":"        except exception.NovaException:"},{"line_number":214,"context_line":"            self.assertTrue(True)"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"    def test_batch_size_fixed(self):"},{"line_number":217,"context_line":"        fixed_size \u003d 200"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_2c6295ae","line":214,"in_reply_to":"3f79a3b5_41f12c95","updated":"2018-09-03 09:25:50.000000000","message":"yikes, why didn\u0027t I think of this simple way..","commit_id":"4532690b5dee2468b604de16ddbaac3ceeadc2f0"},{"author":{"_account_id":25562,"name":"Chen","email":"dstbtgagt@foxmail.com","username":"chenn2"},"change_message_id":"de1d4397db809f61e0c669fc04bc3ba55bb8e084","unresolved":false,"context_lines":[{"line_number":204,"context_line":"        mock_sg.return_value \u003d ret_val"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"        # Raises exception if a cell is down without skipping them"},{"line_number":207,"context_line":"        # as CONF.api.instance_list_skip_down_cells is set to False."},{"line_number":208,"context_line":"        # This would in turn result in an API 500 internal error."},{"line_number":209,"context_line":"        self.assertRaises(exception.NovaException,"},{"line_number":210,"context_line":"            instance_list.get_instance_objects_sorted, self.context, {}, None,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_2d012cb0","line":207,"range":{"start_line":207,"start_character":22,"end_line":207,"end_character":51},"updated":"2018-09-03 14:40:52.000000000","message":"list_records_by_skipping_down_cells","commit_id":"7c7ef67c4c736c6e531d9a4c21285b980dbf7f6a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":207,"context_line":"        # Raises exception if a cell is down without skipping them"},{"line_number":208,"context_line":"        # as CONF.api.list_records_by_skipping_down_cells is set to False."},{"line_number":209,"context_line":"        # This would in turn result in an API 500 internal error."},{"line_number":210,"context_line":"        self.assertRaises(exception.NovaException,"},{"line_number":211,"context_line":"            instance_list.get_instance_objects_sorted, self.context, {}, None,"},{"line_number":212,"context_line":"            None, [], None, None)"},{"line_number":213,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_1384710a","line":210,"range":{"start_line":210,"start_character":8,"end_line":210,"end_character":50},"updated":"2018-09-17 23:04:56.000000000","message":"Let\u0027s assert we\u0027re getting the error we actually expect, e.g.:\n\nex \u003d self.assertRaises(exception.NovaException, ...)\nself.assertIn(\u0027something unique in the error message\u0027, six.text_type(ex))","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":207,"context_line":"        # Raises exception if a cell is down without skipping them"},{"line_number":208,"context_line":"        # as CONF.api.list_records_by_skipping_down_cells is set to False."},{"line_number":209,"context_line":"        # This would in turn result in an API 500 internal error."},{"line_number":210,"context_line":"        self.assertRaises(exception.NovaException,"},{"line_number":211,"context_line":"            instance_list.get_instance_objects_sorted, self.context, {}, None,"},{"line_number":212,"context_line":"            None, [], None, None)"},{"line_number":213,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3f79a3b5_63938501","line":210,"range":{"start_line":210,"start_character":8,"end_line":210,"end_character":50},"in_reply_to":"3f79a3b5_1384710a","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"}],"releasenotes/notes/instance-list-skip-down-cells-af7f38c7ba542572.yaml":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"3b559bca223d44d12932bd0d352cf7015eac2417","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"3f79a3b5_a818431e","line":13,"updated":"2018-08-28 15:26:36.000000000","message":"I would say something about \"prior to commit $foo, we raised 500. The new behavior to skip those cells aims to increase availability at the expense of accuracy. If the old behavior is desired, this flag causes us to mimic the older behavior.\"\n\nAlso maybe indicate that an upcoming microversion will unify these two paths making this no longer relevant for newer clients?","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"bc1b9dd0939600b9ae5e20196d1bd9c2fdb5f99c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"3f79a3b5_d11523e7","line":13,"in_reply_to":"3f79a3b5_a818431e","updated":"2018-08-28 19:56:24.000000000","message":"ack, will do.","commit_id":"becc09c9a82fb014e34a941fdc1dbfa23b04f543"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"bd773bd5cfc7fb2613c89bb2475523c11a86800e","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    cells with the aim of increasing availability at the expense of accuracy."},{"line_number":8,"context_line":"    If the old behaviour is desired, a new flag called"},{"line_number":9,"context_line":"    ``CONF.api.instance_list_skip_down_cells`` has been added which can be"},{"line_number":10,"context_line":"    set to False to mimic the old behavior. Both these options will be unified"},{"line_number":11,"context_line":"    in an upcoming microversion where minimal constructs would be returned for"},{"line_number":12,"context_line":"    the down cell instances instead of raising 500s or skipping down cells."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"3f79a3b5_61d548e5","line":10,"range":{"start_line":10,"start_character":55,"end_line":10,"end_character":62},"updated":"2018-08-29 18:27:52.000000000","message":"This is a nit, but I think this is confusing because you were just talking about config (options). I think I would say:\n\n \"Both of these potential behaviors will be unified in an upcoming\n  microversion where minimal constructs would be returned for the\n  down cell instances instead of raising 500s or skipping down cells.\"","commit_id":"4532690b5dee2468b604de16ddbaac3ceeadc2f0"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"1246f723685affd67c48880a501abb4c701a32d3","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    cells with the aim of increasing availability at the expense of accuracy."},{"line_number":8,"context_line":"    If the old behaviour is desired, a new flag called"},{"line_number":9,"context_line":"    ``CONF.api.instance_list_skip_down_cells`` has been added which can be"},{"line_number":10,"context_line":"    set to False to mimic the old behavior. Both these options will be unified"},{"line_number":11,"context_line":"    in an upcoming microversion where minimal constructs would be returned for"},{"line_number":12,"context_line":"    the down cell instances instead of raising 500s or skipping down cells."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"3f79a3b5_5b57be27","line":10,"range":{"start_line":10,"start_character":55,"end_line":10,"end_character":62},"in_reply_to":"3f79a3b5_61d548e5","updated":"2018-09-03 09:25:50.000000000","message":"Done","commit_id":"4532690b5dee2468b604de16ddbaac3ceeadc2f0"}],"releasenotes/notes/records-list-skip-down-cells-84d995e75c77c041.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    In case of infrastructure failures like non-responsive cells, prior to"},{"line_number":5,"context_line":"    `commit ee461b5`_ we raised an API 500 error. However currently when"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_b37c9d20","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":8},"updated":"2018-09-17 23:04:56.000000000","message":"This isn\u0027t really a feature. I\u0027d probably put this in the \"other\" section and reference bug 1726301.","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    In case of infrastructure failures like non-responsive cells, prior to"},{"line_number":5,"context_line":"    `commit ee461b5`_ we raised an API 500 error. However currently when"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_23990d1d","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":8},"in_reply_to":"3f79a3b5_b37c9d20","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    In case of infrastructure failures like non-responsive cells, prior to"},{"line_number":5,"context_line":"    `commit ee461b5`_ we raised an API 500 error. However currently when"},{"line_number":6,"context_line":"    listing instances or migrations, we skip that cell and display results from"},{"line_number":7,"context_line":"    the up cells with the aim of increasing availability at the expense of"},{"line_number":8,"context_line":"    accuracy. If the old behaviour is desired, a new flag called"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_338e4d27","line":5,"range":{"start_line":5,"start_character":12,"end_line":5,"end_character":19},"updated":"2018-09-17 23:04:56.000000000","message":"This was just on master (rocky) but we also backported that change, so maybe we should refer to the change itself:\n\nhttps://review.openstack.org/#/q/I308b494ab07f6936bef94f4c9da45e9473e3534d","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    In case of infrastructure failures like non-responsive cells, prior to"},{"line_number":5,"context_line":"    `commit ee461b5`_ we raised an API 500 error. However currently when"},{"line_number":6,"context_line":"    listing instances or migrations, we skip that cell and display results from"},{"line_number":7,"context_line":"    the up cells with the aim of increasing availability at the expense of"},{"line_number":8,"context_line":"    accuracy. If the old behaviour is desired, a new flag called"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_038411b0","line":5,"range":{"start_line":5,"start_character":12,"end_line":5,"end_character":19},"in_reply_to":"3f79a3b5_338e4d27","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    In case of infrastructure failures like non-responsive cells, prior to"},{"line_number":5,"context_line":"    `commit ee461b5`_ we raised an API 500 error. However currently when"},{"line_number":6,"context_line":"    listing instances or migrations, we skip that cell and display results from"},{"line_number":7,"context_line":"    the up cells with the aim of increasing availability at the expense of"},{"line_number":8,"context_line":"    accuracy. If the old behaviour is desired, a new flag called"},{"line_number":9,"context_line":"    ``CONF.api.list_records_by_skipping_down_cells`` has been added which can"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_b3a1fd97","line":6,"range":{"start_line":6,"start_character":22,"end_line":6,"end_character":35},"updated":"2018-09-17 23:04:56.000000000","message":"Since the behavior isn\u0027t being changed for migrations, maybe don\u0027t mention those here?","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    In case of infrastructure failures like non-responsive cells, prior to"},{"line_number":5,"context_line":"    `commit ee461b5`_ we raised an API 500 error. However currently when"},{"line_number":6,"context_line":"    listing instances or migrations, we skip that cell and display results from"},{"line_number":7,"context_line":"    the up cells with the aim of increasing availability at the expense of"},{"line_number":8,"context_line":"    accuracy. If the old behaviour is desired, a new flag called"},{"line_number":9,"context_line":"    ``CONF.api.list_records_by_skipping_down_cells`` has been added which can"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_c38939c7","line":6,"range":{"start_line":6,"start_character":22,"end_line":6,"end_character":35},"in_reply_to":"3f79a3b5_b3a1fd97","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23586dc4dc98f2cdd11b3f0998901296ab66065a","unresolved":false,"context_lines":[{"line_number":9,"context_line":"    ``CONF.api.list_records_by_skipping_down_cells`` has been added which can"},{"line_number":10,"context_line":"    be set to False to mimic the old behavior. Both of these potential"},{"line_number":11,"context_line":"    behaviors will be unified in an upcoming microversion done through the"},{"line_number":12,"context_line":"    `blueprint handling-down-cell`_where minimal constructs would be returned"},{"line_number":13,"context_line":"    for the down cell instances instead of raising 500s or skipping down cells."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"    .. _commit ee461b5: https://github.com/openstack/nova/commit/ee461b5bf6c4aa1b66be458776f478f718ef809b"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_1399d16b","line":12,"range":{"start_line":12,"start_character":35,"end_line":12,"end_character":40},"updated":"2018-09-17 23:04:56.000000000","message":"need a space","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"},{"author":{"_account_id":26936,"name":"Surya Seetharaman","email":"suryaseetharaman.9@gmail.com","username":"tssurya"},"change_message_id":"2378db4055cf1d98a255fec7ec6642e4e7193940","unresolved":false,"context_lines":[{"line_number":9,"context_line":"    ``CONF.api.list_records_by_skipping_down_cells`` has been added which can"},{"line_number":10,"context_line":"    be set to False to mimic the old behavior. Both of these potential"},{"line_number":11,"context_line":"    behaviors will be unified in an upcoming microversion done through the"},{"line_number":12,"context_line":"    `blueprint handling-down-cell`_where minimal constructs would be returned"},{"line_number":13,"context_line":"    for the down cell instances instead of raising 500s or skipping down cells."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"    .. _commit ee461b5: https://github.com/openstack/nova/commit/ee461b5bf6c4aa1b66be458776f478f718ef809b"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_83c101e7","line":12,"range":{"start_line":12,"start_character":35,"end_line":12,"end_character":40},"in_reply_to":"3f79a3b5_1399d16b","updated":"2018-09-18 16:25:48.000000000","message":"Done","commit_id":"c1aeb6d1e808b2777d5a0efff1854f9b674b4138"}]}
