You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@superset.apache.org by GitBox <gi...@apache.org> on 2018/04/23 19:19:40 UTC

[GitHub] mistercrunch commented on a change in pull request #4655: [druid] Updating refresh logic

mistercrunch commented on a change in pull request #4655: [druid] Updating refresh logic
URL: https://github.com/apache/incubator-superset/pull/4655#discussion_r183508642
 
 

 ##########
 File path: superset/migrations/versions/f231d82b9b26_.py
 ##########
 @@ -0,0 +1,72 @@
+"""empty message
+
+Revision ID: f231d82b9b26
+Revises: e68c4473c581
+Create Date: 2018-03-20 19:47:54.991259
+
+"""
+
+# revision identifiers, used by Alembic.
+revision = 'f231d82b9b26'
+down_revision = 'e68c4473c581'
+
+from alembic import op
+import sqlalchemy as sa
+from sqlalchemy.exc import OperationalError
+
+from superset.utils import generic_find_uq_constraint_name
+
+conv = {
+    'uq': 'uq_%(table_name)s_%(column_0_name)s',
+}
+
+names = {
+    'columns': 'column_name',
+    'metrics': 'metric_name',
+}
+
+bind = op.get_bind()
+insp = sa.engine.reflection.Inspector.from_engine(bind)
+
+
+def upgrade():
+
+    # Reduce the size of the metric_name column for constraint viability.
+    with op.batch_alter_table('metrics', naming_convention=conv) as batch_op:
+        batch_op.alter_column(
+            'metric_name',
+            existing_type=sa.String(length=512),
+            type_=sa.String(length=255),
+            existing_nullable=True,
+        )
+
+    # Add the missing uniqueness constraints.
+    for table, column in names.items():
+        with op.batch_alter_table(table, naming_convention=conv) as batch_op:
+            batch_op.create_unique_constraint(
 
 Review comment:
   Hit an issue on this line while upgrading our staging. I wrapped the statement in a try block locally so that I could move forward

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services