diff --git a/omniadvisor/pyproject.toml b/omniadvisor/pyproject.toml index 764ef6b64c97ad237c00e98137e84d1ed24d50c4..37dde83d99e035ec5763e80d252601dcf4c7037f 100755 --- a/omniadvisor/pyproject.toml +++ b/omniadvisor/pyproject.toml @@ -19,6 +19,7 @@ python = "^3.8" django = "~4.2.10" smac = "~2.2.0" colorlog = "~6.9.0" +requests = "^2.32.3" [tool.poetry.group.test.dependencies] pytest = "^7.4.4" diff --git a/omniadvisor/src/omniadvisor/interface/config_tuning.py b/omniadvisor/src/omniadvisor/interface/config_tuning.py index 962bed803c5603521ff5d304c8b95045e4e37322..9e3572fde337eb397c98a4540feec3d231839d1d 100644 --- a/omniadvisor/src/omniadvisor/interface/config_tuning.py +++ b/omniadvisor/src/omniadvisor/interface/config_tuning.py @@ -120,11 +120,14 @@ def main(): if not load: return - # 查询上一次调优的结果是否测试完毕: + # 查询上一次调优的所推送的配置是否完成复测流程 如果满足以下所有条件,则提示无法调优并退出: + # 1. 存在最近的调优结果 + # 2. 调优方法不是用户配置(用户配置无需复测) + # 3. 调优结果状态仍在运行中(复测中) tuning_result_history = get_tuning_result_history(load) - if (tuning_result_history.latest_tuning_result and tuning_result_history.latest_tuning_result.status == - OA_CONF.ExecStatus.running): - # 有上一次调优,且调优的结果仍在复测中,提示无法调优并退出 + if (tuning_result_history.latest_tuning_result + and tuning_result_history.latest_tuning_result.tuning_record.method != OA_CONF.TuningMethod.user + and tuning_result_history.latest_tuning_result.status == OA_CONF.ExecStatus.running): global_logger.info('The retest status of latest tuning result is still running, please wait.') return diff --git a/omniadvisor/src/server/app/models.py b/omniadvisor/src/server/app/models.py index 17243fce9b63ae9b76b6ea3dc8c49c146b5c95ee..20ab25f2a08c8644383ac926afb79a7783cff5b1 100644 --- a/omniadvisor/src/server/app/models.py +++ b/omniadvisor/src/server/app/models.py @@ -52,7 +52,7 @@ class DatabaseTuningRecord(models.Model): class Meta: constraints = [ - models.UniqueConstraint(fields=['load', 'config'], name='exam_record_unique') + models.UniqueConstraint(fields=['load', 'config'], name='tuning_record_unique') ] db_table = 'omniadvisor_tuning_record' # 自定义表名