From 35a60586fb88781efc1f438f41bed36ca609af6c Mon Sep 17 00:00:00 2001 From: yang_feida Date: Fri, 22 Aug 2025 09:09:06 +0800 Subject: [PATCH] backend_retest_forbidden -> backend_retest_enable --- .../src/omniadvisor/interface/config_tuning.py | 2 +- .../src/omniadvisor/interface/hijack_recommend.py | 4 ++-- .../src/omniadvisor/repository/load_repository.py | 6 +++--- omniadvisor/src/omniadvisor/repository/model/load.py | 6 +++--- omniadvisor/src/server/app/admin.py | 2 +- omniadvisor/src/server/app/models.py | 2 +- .../omniadvisor/interface/test_hijack_recommend.py | 2 +- .../repository/test_exam_record_repository.py | 2 +- .../omniadvisor/repository/test_load_repository.py | 12 ++++++------ .../repository/test_tuning_record_repository.py | 6 +++--- 10 files changed, 22 insertions(+), 22 deletions(-) diff --git a/omniadvisor/src/omniadvisor/interface/config_tuning.py b/omniadvisor/src/omniadvisor/interface/config_tuning.py index 0eec5bc30..6d9e06498 100644 --- a/omniadvisor/src/omniadvisor/interface/config_tuning.py +++ b/omniadvisor/src/omniadvisor/interface/config_tuning.py @@ -224,7 +224,7 @@ def main(): # 2. 不做调优冲突判断,若推荐相同配置,则退出 # 3. 当前负载不支持后台复测,则退出 elif args.retest_way == OA_CONF.RetestWay.backend: - if load.backend_retest_forbidden: + if not load.backend_retest_enable: raise TuningPreconditionError( 'Current load contains data manipulation operations, only retest way of hijacking is supported.' ) diff --git a/omniadvisor/src/omniadvisor/interface/hijack_recommend.py b/omniadvisor/src/omniadvisor/interface/hijack_recommend.py index 76dfde80f..46f5ae8d0 100644 --- a/omniadvisor/src/omniadvisor/interface/hijack_recommend.py +++ b/omniadvisor/src/omniadvisor/interface/hijack_recommend.py @@ -221,8 +221,8 @@ def _create_or_update_load(exec_attr: dict, config: dict) -> Load: return LoadRepository.update_name_and_exec_attr(loads.pop(), name, exec_attr) else: # 负载没有创建过 - backend_retest_forbidden = _has_modify_keywords(exec_attr) - load = LoadRepository.create(name, exec_attr, config, hash_value, backend_retest_forbidden) + backend_retest_enable = not _has_modify_keywords(exec_attr) + load = LoadRepository.create(name, exec_attr, config, hash_value, backend_retest_enable) global_logger.info("Load not found in database, created new one and execute.") TuningRecordRepository.create(load=load, config=config, method=OA_CONF.TuningMethod.user) return load diff --git a/omniadvisor/src/omniadvisor/repository/load_repository.py b/omniadvisor/src/omniadvisor/repository/load_repository.py index c400405e8..ac74c102c 100644 --- a/omniadvisor/src/omniadvisor/repository/load_repository.py +++ b/omniadvisor/src/omniadvisor/repository/load_repository.py @@ -34,7 +34,7 @@ class LoadRepository(Repository): @classmethod def create(cls, name: str, exec_attr: dict, default_config: dict, hash_value: str, - backend_retest_forbidden: bool) -> Load: + backend_retest_enable: bool) -> Load: """ 指定名称、执行属性和默认配置,新增负载 @@ -42,7 +42,7 @@ class LoadRepository(Repository): :param exec_attr: 负载执行属性 :param default_config: 负载默认配置 :param hash_value: hash值 - :param backend_retest_forbidden: 是否禁用后台复测 + :param backend_retest_enable: 是否禁用后台复测 :return: 负载实例 """ model_attr = { @@ -50,7 +50,7 @@ class LoadRepository(Repository): Load.FieldName.exec_attr: exec_attr, Load.FieldName.default_config: default_config, Load.FieldName.hash_value: hash_value, - Load.FieldName.backend_retest_forbidden: backend_retest_forbidden + Load.FieldName.backend_retest_enable: backend_retest_enable } try: database_load = cls._create(model_attr=model_attr) diff --git a/omniadvisor/src/omniadvisor/repository/model/load.py b/omniadvisor/src/omniadvisor/repository/model/load.py index 624e47945..79b7ed2c9 100644 --- a/omniadvisor/src/omniadvisor/repository/model/load.py +++ b/omniadvisor/src/omniadvisor/repository/model/load.py @@ -46,8 +46,8 @@ class Load: return self._database_model.tuning_needed @property - def backend_retest_forbidden(self): - return self._database_model.backend_retest_forbidden + def backend_retest_enable(self): + return self._database_model.backend_retest_enable @property def database_model(self): @@ -63,4 +63,4 @@ class Load: create_time = 'create_time' tuning_needed = 'tuning_needed' hash_value = 'hash_value' - backend_retest_forbidden = 'backend_retest_forbidden' + backend_retest_enable = 'backend_retest_enable' diff --git a/omniadvisor/src/server/app/admin.py b/omniadvisor/src/server/app/admin.py index 191e9e955..1234257a4 100644 --- a/omniadvisor/src/server/app/admin.py +++ b/omniadvisor/src/server/app/admin.py @@ -8,7 +8,7 @@ from .models import DatabaseLoad, DatabaseTuningRecord, DatabaseExamRecord @admin.register(DatabaseLoad) class LoadAdmin(admin.ModelAdmin): list_display = ( - 'id', 'name', 'exec_attr', 'default_config', 'best_config', 'test_config', 'backend_retest_forbidden' + 'id', 'name', 'exec_attr', 'default_config', 'best_config', 'test_config', 'backend_retest_enable' ) list_filter = () diff --git a/omniadvisor/src/server/app/models.py b/omniadvisor/src/server/app/models.py index cf22d9195..74021fca2 100644 --- a/omniadvisor/src/server/app/models.py +++ b/omniadvisor/src/server/app/models.py @@ -17,7 +17,7 @@ class DatabaseLoad(models.Model): create_time = models.DateTimeField(auto_now_add=True) tuning_needed = models.BooleanField(default=True) hash_value = models.CharField(max_length=64, null=False, unique=True) - backend_retest_forbidden = models.BooleanField(default=True) + backend_retest_enable = models.BooleanField(default=False) class Meta: db_table = 'omniadvisor_load' # 自定义表名 diff --git a/omniadvisor/tests/omniadvisor/interface/test_hijack_recommend.py b/omniadvisor/tests/omniadvisor/interface/test_hijack_recommend.py index 01585b1ec..1926f6cc0 100644 --- a/omniadvisor/tests/omniadvisor/interface/test_hijack_recommend.py +++ b/omniadvisor/tests/omniadvisor/interface/test_hijack_recommend.py @@ -223,7 +223,7 @@ class TestHijackRecommend: mock_load_create.return_value = "created_object" mock_query_by_hash_value.return_value = [] result = _create_or_update_load(exec_attr, default_config) - mock_load_create.assert_called_once_with(name, exec_attr, default_config, hash_value, True) + mock_load_create.assert_called_once_with(name, exec_attr, default_config, hash_value, False) mock_tuning_record_create.assert_called_once() assert result == "created_object" diff --git a/omniadvisor/tests/omniadvisor/repository/test_exam_record_repository.py b/omniadvisor/tests/omniadvisor/repository/test_exam_record_repository.py index 422a568f3..df47ad864 100644 --- a/omniadvisor/tests/omniadvisor/repository/test_exam_record_repository.py +++ b/omniadvisor/tests/omniadvisor/repository/test_exam_record_repository.py @@ -57,7 +57,7 @@ class TestExamRecordRepository: exec_attr={'cmd': 'spark-sql -f test.sql'}, default_config={'param1': 'value2'}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) self.config = {'param1': 'value2'} self.tuning_record = TuningRecordRepository.create( diff --git a/omniadvisor/tests/omniadvisor/repository/test_load_repository.py b/omniadvisor/tests/omniadvisor/repository/test_load_repository.py index 007ea4f63..d006a38e4 100644 --- a/omniadvisor/tests/omniadvisor/repository/test_load_repository.py +++ b/omniadvisor/tests/omniadvisor/repository/test_load_repository.py @@ -35,7 +35,7 @@ class TestLoadRepository: exec_attr={'name': 'example_name', 'cpu': 4}, default_config={'param1': 'value2'}, hash_value='0607', - backend_retest_forbidden=True + backend_retest_enable=False ) assert isinstance(load, Load) assert load.database_model.name == 'example_name' @@ -49,7 +49,7 @@ class TestLoadRepository: # 输入无效数据 with pytest.raises(ValueError): - LoadRepository.create(name='', exec_attr={}, default_config={}, hash_value='', backend_retest_forbidden=True) + LoadRepository.create(name='', exec_attr={}, default_config={}, hash_value='', backend_retest_enable=True) def test_query_by_hash_value(self): # 创建测试数据 @@ -60,7 +60,7 @@ class TestLoadRepository: exec_attr={'name': 'example_name', 'cpu': 4}, default_config={'param1': 'value2'}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) # 查询负载 @@ -81,7 +81,7 @@ class TestLoadRepository: exec_attr={'name': 'example_name', 'cpu': 4}, default_config={'param1': 'value2'}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) # 更新最优配置 @@ -99,7 +99,7 @@ class TestLoadRepository: exec_attr={'name': 'example_name', 'cpu': 4}, default_config={'param1': 'value2'}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) # 更新测试配置 @@ -117,7 +117,7 @@ class TestLoadRepository: exec_attr={'name': 'example_name', 'cpu': 4}, default_config={'param1': 'value2'}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) # 更新测试配置 diff --git a/omniadvisor/tests/omniadvisor/repository/test_tuning_record_repository.py b/omniadvisor/tests/omniadvisor/repository/test_tuning_record_repository.py index 9eea60ca9..afc4f45b5 100644 --- a/omniadvisor/tests/omniadvisor/repository/test_tuning_record_repository.py +++ b/omniadvisor/tests/omniadvisor/repository/test_tuning_record_repository.py @@ -39,7 +39,7 @@ class TestTaskRepository: exec_attr={'cmd': 'spark-sql -f test.sql'}, default_config={"param1": "value2"}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) # 创建TuningRecord @@ -73,7 +73,7 @@ class TestTaskRepository: exec_attr={'cmd': 'spark-sql -f test.sql'}, default_config={"param1": "value2"}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) tuning_record = TuningRecordRepository.create( load=load, @@ -97,7 +97,7 @@ class TestTaskRepository: exec_attr={'cmd': 'spark-sql -f test.sql'}, default_config={"param1": "value2"}, hash_value=hash_value, - backend_retest_forbidden=True + backend_retest_enable=True ) tuning_record = TuningRecordRepository.create( load=load, -- Gitee