mirror of https://github.com/apache/superset.git
Silence error on migration 4736ec66ce19 constraint drop (#5729)
* Silence error on migration 4736ec66ce19 constraint drop * typo + lint
This commit is contained in:
parent
6cc52c614c
commit
f0beb3ab80
|
@ -7,13 +7,10 @@ Create Date: 2017-10-03 14:37:01.376578
|
|||
|
||||
"""
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '4736ec66ce19'
|
||||
down_revision = 'f959a6652acd'
|
||||
import logging
|
||||
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
from sqlalchemy.exc import OperationalError
|
||||
|
||||
from superset.utils import (
|
||||
generic_find_fk_constraint_name,
|
||||
|
@ -21,6 +18,9 @@ from superset.utils import (
|
|||
generic_find_uq_constraint_name,
|
||||
)
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '4736ec66ce19'
|
||||
down_revision = 'f959a6652acd'
|
||||
|
||||
conv = {
|
||||
'fk': 'fk_%(table_name)s_%(column_0_name)s_%(referred_table_name)s',
|
||||
|
@ -101,16 +101,24 @@ def upgrade():
|
|||
|
||||
batch_op.drop_column('datasource_name')
|
||||
|
||||
# Drop the old more restrictive uniqueness constraint.
|
||||
with op.batch_alter_table('datasources', naming_convention=conv) as batch_op:
|
||||
batch_op.drop_constraint(
|
||||
generic_find_uq_constraint_name(
|
||||
'datasources',
|
||||
{'datasource_name'},
|
||||
insp,
|
||||
) or 'uq_datasources_datasource_name',
|
||||
type_='unique',
|
||||
)
|
||||
try:
|
||||
# Drop the old more restrictive uniqueness constraint.
|
||||
with op.batch_alter_table('datasources', naming_convention=conv) as batch_op:
|
||||
batch_op.drop_constraint(
|
||||
generic_find_uq_constraint_name(
|
||||
'datasources',
|
||||
{'datasource_name'},
|
||||
insp,
|
||||
) or 'uq_datasources_datasource_name',
|
||||
type_='unique',
|
||||
)
|
||||
except Exception as e:
|
||||
logging.warning(
|
||||
'Constraint drop failed, you may want to do this '
|
||||
'manually on your database. For context, this is a known '
|
||||
'issue around undeterministic contraint names on Postgres '
|
||||
'and perhaps more databases through SQLAlchemy.')
|
||||
logging.exception(e)
|
||||
|
||||
|
||||
def downgrade():
|
||||
|
|
Loading…
Reference in New Issue