You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by be...@apache.org on 2019/05/08 16:47:17 UTC

[incubator-superset] branch lyft-release-sp8 updated: fix: alter sql columns to long text (#7463)

This is an automated email from the ASF dual-hosted git repository.

beto pushed a commit to branch lyft-release-sp8
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git


The following commit(s) were added to refs/heads/lyft-release-sp8 by this push:
     new 7bfe7bc  fix: alter sql columns to long text (#7463)
7bfe7bc is described below

commit 7bfe7bc7c64b1cfafb1a0b5c4f6e4b331f916d31
Author: Kim Truong <47...@users.noreply.github.com>
AuthorDate: Wed May 8 09:47:05 2019 -0700

    fix: alter sql columns to long text (#7463)
    
    * fix: alter sql columns to long text
    
    * fix: handle dbs that don't require text length
    
    * fix: 1GB limit
    
    * fix: only handle mysql
    
    * Empty Commit
---
 ...er_sql_column_data_type_in_query_mysql_table.py | 56 ++++++++++++++++++++++
 1 file changed, 56 insertions(+)

diff --git a/superset/migrations/versions/afc69274c25a_alter_sql_column_data_type_in_query_mysql_table.py b/superset/migrations/versions/afc69274c25a_alter_sql_column_data_type_in_query_mysql_table.py
new file mode 100644
index 0000000..4f443e7
--- /dev/null
+++ b/superset/migrations/versions/afc69274c25a_alter_sql_column_data_type_in_query_mysql_table.py
@@ -0,0 +1,56 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+"""update the sql, select_sql, and executed_sql columns in the
+   query table in mysql dbs to be long text columns
+
+Revision ID: afc69274c25a
+Revises: e9df189e5c7e
+Create Date: 2019-05-06 14:30:26.181449
+
+"""
+from alembic import op
+from sqlalchemy.databases import mysql
+from sqlalchemy.dialects.mysql.base import MySQLDialect
+import sqlalchemy as sa
+
+# revision identifiers, used by Alembic.
+revision = 'afc69274c25a'
+down_revision = 'e9df189e5c7e'
+
+
+def upgrade():
+    bind = op.get_bind()
+    if isinstance(bind.dialect, MySQLDialect):
+        with op.batch_alter_table('query') as batch_op:
+            batch_op.alter_column(
+                'sql', existing_type=sa.Text, type_=mysql.LONGTEXT)
+            batch_op.alter_column(
+                'select_sql', existing_type=sa.Text, type_=mysql.LONGTEXT)
+            batch_op.alter_column(
+                'executed_sql', existing_type=sa.Text, type_=mysql.LONGTEXT)
+
+
+def downgrade():
+    bind = op.get_bind()
+    if isinstance(bind.dialect, MySQLDialect):
+        with op.batch_alter_table('query') as batch_op:
+            batch_op.alter_column(
+                'sql', existing_type=mysql.LONGTEXT, type_=sa.Text)
+            batch_op.alter_column(
+                'select_sql', existing_type=mysql.LONGTEXT, type_=sa.Text)
+            batch_op.alter_column(
+                'executed_sql', existing_type=mysql.LONGTEXT, type_=sa.Text)