-
[Airflow] Airflow db 업그레이드 에러 해결(feat. 2.10.0 버전)Airflow 2024. 10. 29. 21:35728x90
airflow db upgrade 명령어 실행 시,
(airflow 2.7.0 대 버전 부터 airflow db upgrade -> airflow db migrate)
[SQL: ALTER TABLE dag_run ADD COLUMN clear_number INTEGER DEFAULT '0' NOT NULL] ERROR: column "clear_number" of relation "dag_run" already exists
위와 같은 에러가 발생함
db 접속 후 해당 컬럼을 삭제해주고(저는 metadata db로 postgresql을 사용했습니다)> ALTER TABLE dag_run DROP COLUMN IF EXISTS clear_number;
다시 airflow db upgrade 명령어를 실행하면,ALTER TABLE log ADD COLUMN owner_display_name VARCHAR(500); ERROR: column "owner_display_name" of relation "log" already exists
ALTER TABLE import_error ADD COLUMN processor_subdir VARCHAR(2000); ERROR: column "processor_subdir" of relation "import_error" already exists
이런식으로 해당 컬럼을 삭제해도 다른 컬럼이 없다는 에러 계속 반복..> airflow_db=> SELECT * FROM alembic_version;
version_num -------------- 405de8318b3a
https://airflow.apache.org/docs/apache-airflow/2.10.0/migrations-ref.html
405de8318b3a는 기존 2.7.0점 대 버전의 Revision ID 이고,
다음 버전인 2.8.0점 버전으로 업데이트 하는 과정에서
add new field ‘clear_number’ to dagrun 명령을 실해하던 중 에러 발생.
=> 바로 버전을 2.10.0으로 바꾸어주어 문제 해결airflow_db=> UPDATE alembic_version SET version_num = '22ed7efa9da2'; UPDATE 1
다시 airflow upgrade를 해주면INFO - Creating tables INFO [alembic.runtime.migration] Context impl PostgresqlImpl. INFO [alembic.runtime.migration] Will assume transactional DDL. INFO [alembic.runtime.migration] Context impl PostgresqlImpl. INFO [alembic.runtime.migration] Will assume transactional DDL. Database migrating done!
성공적으로 migrate 됩니다!- 이상 오늘의 삽질일기 끄읏🌞
여기저기 삽질도 해보고
날려도 먹으면서
배우는 게
결국 남는거다
- Z.Sabziller'Airflow' 카테고리의 다른 글
[Airflow] Airflow dag 추가 에러 현상 (0) 2024.02.24 [Airflow] Airflow DAG runs 개수 주기적으로 삭제하기 (0) 2023.08.01 [Airflow] Airflow-s3 remote logging 설정 방법 (0) 2023.03.31 [Airflow] Airflow ExternalTaskSensor 활용법(feat. DAG Dependency) (0) 2023.02.07 [Airflow] DAG skipped 상태에서 멈춰있을 때(feat. queue 지정) (0) 2022.10.21