You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
Batch operation op.batch_alter_table(...).add_column() method cannot add a column that comes with a comment.
Comment support is fairly new, maybe this is a "feature" due to some constraint I am not aware of ?
Expected behavior
The column is added to the table and the appropriate comment is defined for the column.
To Reproduce
I believe the following migration script, the one I found the issue with, stripped of anything unrelated to the bug, should provide the minimal amount of code to reproduce the bug:
fromalembicimportopimportsqlalchemyassarevision='792d2e012c4a'down_revision=None# Obviously there exists other migrations that created the table in the first placedefupgrade():
withop.batch_alter_table('some_table', schema='some_schema') asbatch_op:
batch_op.add_column(sa.Column('column_name', sa.Integer, nullable=True, comment="some comment"))
# More operations may come here
Error
File "~/.virtualenvs/project/bin/alembic", line 8, in <module>
sys.exit(main())
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/config.py", line 581, in main
CommandLine(prog=prog).main(argv=argv)
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/config.py", line 575, in main
self.run_cmd(cfg, options)
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/config.py", line 555, in run_cmd
**dict((k, getattr(options, k, None)) for k in kwarg)
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/command.py", line 298, in upgrade
script.run_env()
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/script/base.py", line 489, in run_env
util.load_python_file(self.dir, "env.py")
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/util/pyfiles.py", line 98, in load_python_file
module = load_module_py(module_id, path)
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/util/compat.py", line 184, in load_module_py
spec.loader.exec_module(module)
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "src/dags/stats/migrations/env.py", line 145, in <module>
run_migrations_online()
File "src/dags/stats/migrations/env.py", line 138, in run_migrations_online
context.run_migrations()
File "<string>", line 8, in run_migrations
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/runtime/environment.py", line 846, in run_migrations
self.get_context().run_migrations(**kw)
File "~/.virtualenvs/project/lib/python3.7/site-packages/alembic/runtime/migration.py", line 522, in run_migrations
step.migration_fn(**kw)
File "src/dags/stats/migrations/versions/792d2e012c4a_migration_script_.py", line 51, in upgrade
batch_op.add_column(sa.Column('column_name', sa.Integer, nullable=True, comment="some comment"))
File "<string>", line 3, in add_column
File "~/.virtualenvs/jfdags/lib/python3.7/site-packages/alembic/operations/ops.py", line 1956, in batch_add_column
return operations.invoke(op)
File "~/.virtualenvs/jfdags/lib/python3.7/site-packages/alembic/operations/base.py", line 373, in invoke
return fn(self, operation)
File "~/.virtualenvs/jfdags/lib/python3.7/site-packages/alembic/operations/toimpl.py", line 146, in add_column
operations.impl.create_column_comment(column)
AttributeError: 'BatchOperationsImpl' object has no attribute 'create_column_comment'
Versions.
OS: Ubuntu 2020.04
Python: 3.7.9
Alembic: 1.4.3
SQLAlchemy: 1.3.20
Database: Postgresql
DBAPI: psycopg2
Additional context
Have a nice day!
You too !
The text was updated successfully, but these errors were encountered:
Describe the bug
Batch operation
op.batch_alter_table(...).add_column()
method cannot add a column that comes with a comment.Comment support is fairly new, maybe this is a "feature" due to some constraint I am not aware of ?
Expected behavior
The column is added to the table and the appropriate comment is defined for the column.
To Reproduce
I believe the following migration script, the one I found the issue with, stripped of anything unrelated to the bug, should provide the minimal amount of code to reproduce the bug:
Error
Versions.
Additional context
Have a nice day!
You too !
The text was updated successfully, but these errors were encountered: