)]}'
{"nova/objects/service.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"04189a60f176a0d8eedbf864cbf0a8385c6b05ca","unresolved":false,"context_lines":[{"line_number":438,"context_line":"            version \u003d objects.Service.get_minimum_version_multi("},{"line_number":439,"context_line":"                cctxt, binaries)"},{"line_number":440,"context_line":"        min_version \u003d min(min_version, version) if min_version else version"},{"line_number":441,"context_line":"    return min_version"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":""},{"line_number":444,"context_line":"@base.NovaObjectRegistry.register"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf091321_b43a99e4","line":441,"updated":"2017-06-08 19:48:40.000000000","message":"Didn\u0027t want to parallelize the \"all cells\" query?","commit_id":"af5ef8ee0b367d8357dd1b85edc5791ed3fe45e4"}],"nova/tests/unit/objects/test_service.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"80d80e91a4e5c8cbba18e8af75d3c6e6bfc34241","unresolved":false,"context_lines":[{"line_number":494,"context_line":"        super(TestServiceVersionCells, self).setUp()"},{"line_number":495,"context_line":""},{"line_number":496,"context_line":"    def _setup_cells(self):"},{"line_number":497,"context_line":"        # NOTE(danms): Override the base class\u0027s cell setup so we can have two"},{"line_number":498,"context_line":"        self.cells \u003d fixtures.CellDatabases()"},{"line_number":499,"context_line":"        self.cells.add_cell_database(uuidsentinel.cell1, default\u003dTrue)"},{"line_number":500,"context_line":"        self.cells.add_cell_database(uuidsentinel.cell2)"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_a2ee04b2","line":497,"updated":"2017-06-06 18:23:36.000000000","message":"nit: I\u0027d prefer to put a NUMBER_OF_CELLS attribute in the base TestCase or something like that which defaults to 1 (excluding cell0) and then we could just set that to 2 for this test class. Then we don\u0027t have the copy/paste and can avoid some drift over time if anything in the original base class method needs changes.\n\nThis overridden version also doesn\u0027t create cell0, which doesn\u0027t matter so much because the code change isn\u0027t doing anything special for cell0, but it might be nice to have in case someone thought they should exclude cell0 in the multi-cell minimum service version check. Having said that, I don\u0027t think we can have nova-compute services registered to cell0, right? But the method we\u0027re testing is generic so it could be looking up nova-scheduler which could be in cell0.","commit_id":"6ddf96f2b024d04a46dfb8bb4938784bde9898ec"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"001bd86e29e29347e18775d0b2cf19905ec61ff0","unresolved":false,"context_lines":[{"line_number":515,"context_line":""},{"line_number":516,"context_line":"    def _create_services(self, *versions):"},{"line_number":517,"context_line":"        cells \u003d objects.CellMappingList.get_all(self.context)"},{"line_number":518,"context_line":"        index \u003d 0"},{"line_number":519,"context_line":"        for version in versions:"},{"line_number":520,"context_line":"            service \u003d objects.Service(context\u003dself.context,"},{"line_number":521,"context_line":"                                      binary\u003d\u0027nova-compute\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_89030e74","line":518,"range":{"start_line":518,"start_character":8,"end_line":518,"end_character":13},"updated":"2017-06-07 09:59:34.000000000","message":"This isn\u0027t ever incremented.","commit_id":"6ddf96f2b024d04a46dfb8bb4938784bde9898ec"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"80d80e91a4e5c8cbba18e8af75d3c6e6bfc34241","unresolved":false,"context_lines":[{"line_number":527,"context_line":"    @mock.patch(\u0027nova.objects.Service._check_minimum_version\u0027)"},{"line_number":528,"context_line":"    def test_version_all_cells(self, mock_check):"},{"line_number":529,"context_line":"        self._create_services(16, 16, 13, 16)"},{"line_number":530,"context_line":"        service.get_minimum_version_all_cells(self.context, [\u0027nova-compute\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_62e0eccd","line":530,"updated":"2017-06-06 18:23:36.000000000","message":"Assert that you get back 13.","commit_id":"6ddf96f2b024d04a46dfb8bb4938784bde9898ec"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"001bd86e29e29347e18775d0b2cf19905ec61ff0","unresolved":false,"context_lines":[{"line_number":527,"context_line":"    @mock.patch(\u0027nova.objects.Service._check_minimum_version\u0027)"},{"line_number":528,"context_line":"    def test_version_all_cells(self, mock_check):"},{"line_number":529,"context_line":"        self._create_services(16, 16, 13, 16)"},{"line_number":530,"context_line":"        service.get_minimum_version_all_cells(self.context, [\u0027nova-compute\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_4979762d","line":530,"in_reply_to":"df140735_291ac216","updated":"2017-06-07 09:59:34.000000000","message":"I pulled this down to add the assertion and for some reason we\u0027re always getting 0 back:\n\nnova.tests.unit.objects.test_service.TestServiceVersionCells.test_version_all_cells\n-----------------------------------------------------------------------------------\n\nCaptured traceback:\n~~~~~~~~~~~~~~~~~~~\n    Traceback (most recent call last):\n      File \"/home/user/git/nova/.tox/py27/local/lib/python2.7/site-packages/mock/mock.py\", line 1305, in patched\n        return func(*args, **keywargs)\n      File \"nova/tests/unit/objects/test_service.py\", line 531, in test_version_all_cells\n        self.context, [\u0027nova-compute\u0027]))\n      File \"/home/user/git/nova/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py\", line 411, in assertEqual\n        self.assertThat(observed, matcher, message)\n      File \"/home/user/git/nova/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py\", line 498, in assertThat\n        raise mismatch_error\n    testtools.matchers._impl.MismatchError: 13 !\u003d 0","commit_id":"6ddf96f2b024d04a46dfb8bb4938784bde9898ec"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bf179681fea8c3ae5cfe2ee0dac2c651dc79289e","unresolved":false,"context_lines":[{"line_number":527,"context_line":"    @mock.patch(\u0027nova.objects.Service._check_minimum_version\u0027)"},{"line_number":528,"context_line":"    def test_version_all_cells(self, mock_check):"},{"line_number":529,"context_line":"        self._create_services(16, 16, 13, 16)"},{"line_number":530,"context_line":"        service.get_minimum_version_all_cells(self.context, [\u0027nova-compute\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_291ac216","line":530,"in_reply_to":"df140735_4db4f9f2","updated":"2017-06-07 09:54:41.000000000","message":"Maybe, but I\u0027d make it more interesting by putting the controller services (api, conductor and scheduler) into cell0 and put the compute services into the non-cell0 cells, sort of noted above. I\u0027m also OK with adding that as a follow up wrinkle to this.","commit_id":"6ddf96f2b024d04a46dfb8bb4938784bde9898ec"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"1ffd5f7cf18a70c2a4590fc75b03902498997cec","unresolved":false,"context_lines":[{"line_number":527,"context_line":"    @mock.patch(\u0027nova.objects.Service._check_minimum_version\u0027)"},{"line_number":528,"context_line":"    def test_version_all_cells(self, mock_check):"},{"line_number":529,"context_line":"        self._create_services(16, 16, 13, 16)"},{"line_number":530,"context_line":"        service.get_minimum_version_all_cells(self.context, [\u0027nova-compute\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_4db4f9f2","line":530,"in_reply_to":"df140735_62e0eccd","updated":"2017-06-06 18:47:36.000000000","message":"I know it\u0027s already tested elsewhere, but would it be worth it to include other binaries besides nova-compute here?","commit_id":"6ddf96f2b024d04a46dfb8bb4938784bde9898ec"}]}
