)]}'
{"nova/db/sqlalchemy/api.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"139c1faca541e262d1cc9f500e50a8ce8354d2dc","unresolved":false,"context_lines":[{"line_number":401,"context_line":"        # TODO(sbauza): Remove the service_id filter in a later release"},{"line_number":402,"context_line":"        # once we are sure that all compute nodes report the host field"},{"line_number":403,"context_line":"        model_query(context, models.ComputeNode).\\"},{"line_number":404,"context_line":"                    filter(or_(models.ComputeNode.service_id \u003d\u003d service_id,"},{"line_number":405,"context_line":"                               models.ComputeNode.host \u003d\u003d service[\u0027host\u0027])).\\"},{"line_number":406,"context_line":"                    soft_delete(synchronize_session\u003dFalse)"},{"line_number":407,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_07a19495","line":404,"range":{"start_line":404,"start_character":31,"end_line":404,"end_character":60},"updated":"2019-11-19 15:25:50.000000000","message":"Right so this is likely NULL.","commit_id":"6740ef0307c2d722ad942973a16d29032f5e799a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"139c1faca541e262d1cc9f500e50a8ce8354d2dc","unresolved":false,"context_lines":[{"line_number":402,"context_line":"        # once we are sure that all compute nodes report the host field"},{"line_number":403,"context_line":"        model_query(context, models.ComputeNode).\\"},{"line_number":404,"context_line":"                    filter(or_(models.ComputeNode.service_id \u003d\u003d service_id,"},{"line_number":405,"context_line":"                               models.ComputeNode.host \u003d\u003d service[\u0027host\u0027])).\\"},{"line_number":406,"context_line":"                    soft_delete(synchronize_session\u003dFalse)"},{"line_number":407,"context_line":""},{"line_number":408,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_87b6e4db","line":405,"range":{"start_line":405,"start_character":31,"end_line":405,"end_character":73},"updated":"2019-11-19 15:25:50.000000000","message":"And this matches because the nova-consoleauth service is on the same host as the nova-compute service.","commit_id":"6740ef0307c2d722ad942973a16d29032f5e799a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"5386a653bf98f7ff04b8e34e4f21b0a576ff84a9","unresolved":false,"context_lines":[{"line_number":402,"context_line":"        # once we are sure that all compute nodes report the host field"},{"line_number":403,"context_line":"        model_query(context, models.ComputeNode).\\"},{"line_number":404,"context_line":"                    filter(or_(models.ComputeNode.service_id \u003d\u003d service_id,"},{"line_number":405,"context_line":"                               models.ComputeNode.host \u003d\u003d service[\u0027host\u0027])).\\"},{"line_number":406,"context_line":"                    soft_delete(synchronize_session\u003dFalse)"},{"line_number":407,"context_line":""},{"line_number":408,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_ea2e75f8","line":405,"range":{"start_line":405,"start_character":31,"end_line":405,"end_character":74},"updated":"2019-11-20 08:44:24.000000000","message":"Dang, this makes the strong assumption that there is only one service running on this host. That\u0027s bad and I\u0027m sad I wrote this.","commit_id":"cff9ecb20870daa56b1cfd6fbb9f5817d1306fda"}],"nova/tests/unit/db/test_db_api.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"139c1faca541e262d1cc9f500e50a8ce8354d2dc","unresolved":false,"context_lines":[{"line_number":3471,"context_line":"        self._assertEqualObjects(db.service_get(self.ctxt, service2[\u0027id\u0027]),"},{"line_number":3472,"context_line":"                                 service2, ignored_keys\u003d[\u0027compute_node\u0027])"},{"line_number":3473,"context_line":""},{"line_number":3474,"context_line":"    @mock.patch(\"nova.db.sqlalchemy.api.model_query\")"},{"line_number":3475,"context_line":"    def test_service_destroy_not_nova_compute(self, mock_model_query):"},{"line_number":3476,"context_line":"        service1 \u003d self._create_service({\u0027binary\u0027: \u0027nova-consoleauth\u0027})"},{"line_number":3477,"context_line":"        db.service_destroy(self.ctxt, service1[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_67b168e0","line":3474,"updated":"2019-11-19 15:25:50.000000000","message":"We shouldn\u0027t use mocks in DB API tests like this. Just create a nova-consoleauth service with the same host as a compute_nodes record and assert that with the fix the compute_nodes record isn\u0027t deleted when the nova-consoleauth service is deleted.","commit_id":"6740ef0307c2d722ad942973a16d29032f5e799a"},{"author":{"_account_id":21284,"name":"Pavel Gluschak (scsnow)","email":"pglushchak@virtuozzo.com","username":"scsnow"},"change_message_id":"eb42409cce086c2573ac7e13157ff11c87c49518","unresolved":false,"context_lines":[{"line_number":3471,"context_line":"        self._assertEqualObjects(db.service_get(self.ctxt, service2[\u0027id\u0027]),"},{"line_number":3472,"context_line":"                                 service2, ignored_keys\u003d[\u0027compute_node\u0027])"},{"line_number":3473,"context_line":""},{"line_number":3474,"context_line":"    @mock.patch(\"nova.db.sqlalchemy.api.model_query\")"},{"line_number":3475,"context_line":"    def test_service_destroy_not_nova_compute(self, mock_model_query):"},{"line_number":3476,"context_line":"        service1 \u003d self._create_service({\u0027binary\u0027: \u0027nova-consoleauth\u0027})"},{"line_number":3477,"context_line":"        db.service_destroy(self.ctxt, service1[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_922620ba","line":3474,"in_reply_to":"3fa7e38b_67b168e0","updated":"2019-11-19 16:06:12.000000000","message":"Thanks, reworked","commit_id":"6740ef0307c2d722ad942973a16d29032f5e799a"}]}
