# 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 models to support storing the queries. Revision ID: ad82a75afd82 Revises: f162a1dea4c4 Create Date: 2016-07-25 17:48:12.771103 """ # revision identifiers, used by Alembic. revision = "ad82a75afd82" down_revision = "f162a1dea4c4" import sqlalchemy as sa from alembic import op def upgrade(): op.create_table( "query", sa.Column("id", sa.Integer(), nullable=False), sa.Column("client_id", sa.String(length=11), nullable=False), sa.Column("database_id", sa.Integer(), nullable=False), sa.Column("tmp_table_name", sa.String(length=256), nullable=True), sa.Column("tab_name", sa.String(length=256), nullable=True), sa.Column("sql_editor_id", sa.String(length=256), nullable=True), sa.Column("user_id", sa.Integer(), nullable=True), sa.Column("status", sa.String(length=16), nullable=True), sa.Column("name", sa.String(length=256), nullable=True), sa.Column("schema", sa.String(length=256), nullable=True), sa.Column("sql", sa.Text(), nullable=True), sa.Column("select_sql", sa.Text(), nullable=True), sa.Column("executed_sql", sa.Text(), nullable=True), sa.Column("limit", sa.Integer(), nullable=True), sa.Column("limit_used", sa.Boolean(), nullable=True), sa.Column("select_as_cta", sa.Boolean(), nullable=True), sa.Column("select_as_cta_used", sa.Boolean(), nullable=True), sa.Column("progress", sa.Integer(), nullable=True), sa.Column("rows", sa.Integer(), nullable=True), sa.Column("error_message", sa.Text(), nullable=True), sa.Column("start_time", sa.Numeric(precision=20, scale=6), nullable=True), sa.Column("changed_on", sa.DateTime(), nullable=True), sa.Column("end_time", sa.Numeric(precision=20, scale=6), nullable=True), sa.ForeignKeyConstraint(["database_id"], ["dbs.id"]), sa.ForeignKeyConstraint(["user_id"], ["ab_user.id"]), sa.PrimaryKeyConstraint("id"), ) op.add_column( "dbs", sa.Column("select_as_create_table_as", sa.Boolean(), nullable=True) ) op.create_index( op.f("ti_user_id_changed_on"), "query", ["user_id", "changed_on"], unique=False ) def downgrade(): op.drop_table("query") op.drop_column("dbs", "select_as_create_table_as")