【 使用环境 】测试环境
【 OAT、Metadb 】
【 版本号: 4.2.1 】
【问题描述】
使用OAT创建Metadb组件时,在进行到bootstrap_metadb这一步时报错,提示租户已经存在。但是我使用obclient连接测试时是提示数据库正在初始化。
【复现路径】
安装OAT、添加服务器、创建Metadb
【附件及日志】
[2025-09-05T14:40:11.847+0800] INFO - Dependencies all met for dep_context=non-requeueable deps ti=<TaskInstance: init_metadb.bootstrap_metadb manual__2025-09-05T06:37:40.087966+00:00 [queued]>
2
[2025-09-05T14:40:11.863+0800] INFO - Dependencies all met for dep_context=requeueable deps ti=<TaskInstance: init_metadb.bootstrap_metadb manual__2025-09-05T06:37:40.087966+00:00 [queued]>
3
[2025-09-05T14:40:11.863+0800] INFO -
4
5
[2025-09-05T14:40:11.863+0800] INFO - Starting attempt 2 of 2
6
[2025-09-05T14:40:11.863+0800] INFO -
7
8
[2025-09-05T14:40:11.893+0800] INFO - Executing <Task(_PythonDecoratedOperator): bootstrap_metadb> on 2025-09-05 06:37:40.087966+00:00
9
[2025-09-05T14:40:11.898+0800] INFO - Started process 30963 to run task
10
[2025-09-05T14:40:11.906+0800] INFO - Running: [‘airflow’, ‘tasks’, ‘run’, ‘init_metadb’, ‘bootstrap_metadb’, ‘manual__2025-09-05T06:37:40.087966+00:00’, ‘–job-id’, ‘84’, ‘–raw’, ‘–subdir’, ‘DAGS_FOLDER/init_metadb.py’, ‘–cfg-path’, ‘/tmp/tmp2dip4dmb’]
11
[2025-09-05T14:40:11.910+0800] INFO - Job 84: Subtask bootstrap_metadb
12
[2025-09-05T14:40:12.024+0800] INFO - Running <TaskInstance: init_metadb.bootstrap_metadb manual__2025-09-05T06:37:40.087966+00:00 [running]> on host localhost.localdomain
13
[2025-09-05T14:40:12.144+0800] INFO - Exporting the following env vars:
14
AIRFLOW_CTX_DAG_OWNER=airflow
15
AIRFLOW_CTX_DAG_ID=init_metadb
16
AIRFLOW_CTX_TASK_ID=bootstrap_metadb
17
AIRFLOW_CTX_EXECUTION_DATE=2025-09-05T06:37:40.087966+00:00
18
AIRFLOW_CTX_TRY_NUMBER=2
19
AIRFLOW_CTX_DAG_RUN_ID=manual__2025-09-05T06:37:40.087966+00:00
20
[2025-09-05T14:40:12.145+0800] WARNING - OB can not bootstrap twice. If this task continuous fail,cancel the whole dag and retry
21
[2025-09-05T14:40:12.147+0800] INFO - Running statement: select a.id, a.ip, b.name as idc, b.region from oat_server a, oat_idc b where a.idc_id=b.id and a.id in (%s), parameters: [2]
22
[2025-09-05T14:40:12.148+0800] INFO - Rows affected: 1
23
[2025-09-05T14:40:12.151+0800] INFO - Execute query: set ob_query_timeout=1000000000, args: None
24
[2025-09-05T14:40:12.152+0800] INFO - Relate rows: 0
25
[2025-09-05T14:40:12.152+0800] INFO - Execute query: alter system bootstrap REGION “SZ” ZONE “META_ZONE_1” SERVER “192.168.5.32:2882”, args: None
26
[2025-09-05T14:40:12.157+0800] ERROR - Task failed with exception
27
Traceback (most recent call last):
28
File “/usr/local/lib/python3.9/site-packages/airflow/decorators/base.py”, line 217, in execute
29
return_value = super().execute(context)
30
File “/usr/local/lib/python3.9/site-packages/airflow/operators/python.py”, line 175, in execute
31
return_value = self.execute_callable()
32
File “/usr/local/lib/python3.9/site-packages/airflow/operators/python.py”, line 192, in execute_callable
33
return self.python_callable(*self.op_args, **self.op_kwargs)
34
File “/oat/task_engine/dags/init_metadb.py”, line 182, in bootstrap_metadb
35
cur.execute(bootstrap_sql)
36
File “/oat/task_engine/plugins/utils.py”, line 2320, in execute
37
res = super().execute(query, args)
38
File “/usr/local/lib/python3.9/site-packages/pymysql/cursors.py”, line 148, in execute
39
result = self._query(query)
40
File “/usr/local/lib/python3.9/site-packages/pymysql/cursors.py”, line 310, in _query
41
conn.query(q)
42
File “/usr/local/lib/python3.9/site-packages/pymysql/connections.py”, line 548, in query
43
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
44
File “/usr/local/lib/python3.9/site-packages/pymysql/connections.py”, line 775, in _read_query_result
45
result.read()
46
File “/usr/local/lib/python3.9/site-packages/pymysql/connections.py”, line 1156, in read
47
first_packet = self.connection._read_packet()
48
File “/usr/local/lib/python3.9/site-packages/pymysql/connections.py”, line 725, in _read_packet
49
packet.raise_for_error()
50
File “/usr/local/lib/python3.9/site-packages/pymysql/protocol.py”, line 221, in raise_for_error
51
err.raise_mysql_exception(self._data)
52
File “/usr/local/lib/python3.9/site-packages/pymysql/err.py”, line 143, in raise_mysql_exception
53
raise errorclass(errno, errval)
54
pymysql.err.OperationalError: (5156, ‘tenant already exist’)
55
[2025-09-05T14:40:12.168+0800] INFO - Marking task as FAILED. dag_id=init_metadb, task_id=bootstrap_metadb, execution_date=20250905T063740, start_date=20250905T064011, end_date=20250905T064012
56
[2025-09-05T14:40:12.252+0800] ERROR - Failed to execute job 84 for task bootstrap_metadb ((5156, ‘tenant already exist’); 30963)
57
[2025-09-05T14:40:12.276+0800] INFO - Task exited with return code 1
58
[2025-09-05T14:40:12.322+0800] INFO - 0 downstream tasks scheduled from follow-on schedule check
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!