Зачем мне нужны дополнительные значения соединения в соединении MySQL в AirflowPython

Программы на Python
Ответить
Anonymous
 Зачем мне нужны дополнительные значения соединения в соединении MySQL в Airflow

Сообщение Anonymous »


У меня возникла проблема с бесперебойной работой моего дага. В какой-то момент, когда я развернул свой даг, он заработал без проблем. Даг успехов и неудач. Затем через пару дней он перестал успешно работать (см. изображение).

Чтобы распознать даг в Airflow, мне пришлось отредактировать соединение MySQL в столбце «дополнительно» в таких соединениях: {"rewriteBatchedStatements": true, "useServerPrepStmts": false, "charset": "utf8", "cursor": "dictcursor" Это обновило мое соединение и стало выглядеть так: Текущее соединение Mysql в Airflow. Почему это необходимо? В документации это необязательно.

Сам код не изменился. Я заметил, что как только я обновил соединение, мои данные больше не были повреждены, и я мог видеть их в Airflow. Однако всякий раз, когда я запускаю их сейчас, я получаю следующую ошибку:

Файл «/opt/python3.8/lib/python3.8/site-packages/sqlalchemy/pool/base.py», строка 691, в __connect pool.logger.debug("Ошибка при подключении(): %s", e) Файл «/opt/python3.8/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py», строка 70, в __exit__ compat.raise_( Файл "/opt/python3.8/lib/python3.8/site-packages/sqlalchemy/util/compat.py", строка 211, в raise_ вызвать исключение Файл "/opt/python3.8/lib/python3.8/site-packages/sqlalchemy/pool/base.py", строка 686, в __connect self.dbapi_connection = соединение = пул._invoke_creator(self) Файл "/opt/python3.8/lib/python3.8/site-packages/sqlalchemy/engine/create.py", строка 574, в соединении return диалект.connect(*cargs, **cparams) Файл "/opt/python3.8/lib/python3.8/site-packages/sqlalchemy/engine/default.py", строка 598, в соединении return self.dbapi.connect(*cargs, **cparams) Файл «/opt/python3.8/lib/python3.8/site-packages/MySQLdb/__init__.py», строка 121, в Connect return Connection(*args, **kwargs) Файл «/opt/python3.8/lib/python3.8/site-packages/MySQLdb/connections.py», строка 193, в __init__ super().__init__(*args, **kwargs2) Ошибка типа: «__extra__» является недопустимым аргументом ключевого слова для подключения(). Если я удалю dictcursor из дополнительного столбца, мои данные сломаются. Сломанные даги

Могу ли я получить некоторое представление о том, что происходит и чего мне не хватает?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»