Fix column reflection in SQLAlchemy 2.0 #277
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Running
alembic revision --autogenerate
with SQLAlchemy 2.0.23 and Alembic 1.12.1 with existing table will miss all columns, resulting in errors like that if you have any engine configuration related to columns:In my code with
ReplacingMergeTree
engine andorder_by
set, It crashes here as theparent.c
is empty; after tracing the code, it seems that theTable
is heavily refactored in SQLAlchemy 2.0, and internally it will usetable.c
to access the columns. This PR added.c
clones to_make_from_standard
, making the--autogenerate
works for me.I also hit #275, and I managed to bypass it by adding a patched
patch_alembic_version
in theenv.py
.Checklist:
flake8
and fix issues.pytest
no tests failed. See https://clickhouse-sqlalchemy.readthedocs.io/en/latest/development.html.