Coverage for mindsdb / migrations / versions / 2025-10-27_86b172b78a5b_removed_data_catalog_tables.py: 75%
20 statements
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-21 00:36 +0000
« prev ^ index » next coverage.py v7.13.1, created at 2026-01-21 00:36 +0000
1"""removed_data_catalog_tables
3Revision ID: 86b172b78a5b
4Revises: 54ed56beb47a
5Create Date: 2025-10-27 11:14:14.671837
7"""
9from alembic import op
10import sqlalchemy as sa
11import mindsdb.interfaces.storage.db # noqa
12from mindsdb.interfaces.storage.db import Array
15# revision identifiers, used by Alembic.
16revision = "86b172b78a5b"
17down_revision = "54ed56beb47a"
18branch_labels = None
19depends_on = None
22def upgrade():
23 op.drop_table("meta_foreign_keys")
24 op.drop_table("meta_primary_keys")
25 op.drop_table("meta_column_statistics")
26 op.drop_table("meta_columns")
27 op.drop_table("meta_tables")
30def downgrade():
31 op.create_table(
32 "meta_tables",
33 sa.Column("id", sa.Integer(), primary_key=True),
34 sa.Column(
35 "integration_id",
36 sa.Integer(),
37 sa.ForeignKey("integration.id"),
38 nullable=False,
39 ),
40 sa.Column("name", sa.String(), nullable=False),
41 sa.Column("schema", sa.String(), nullable=True),
42 sa.Column("description", sa.String(), nullable=True),
43 sa.Column("type", sa.String(), nullable=True),
44 sa.Column("row_count", sa.BigInteger(), nullable=True), # Updated data type
45 )
47 op.create_table(
48 "meta_columns",
49 sa.Column("id", sa.Integer(), primary_key=True),
50 sa.Column("table_id", sa.Integer(), sa.ForeignKey("meta_tables.id"), nullable=False),
51 sa.Column("name", sa.String(), nullable=False),
52 sa.Column("data_type", sa.String(), nullable=False),
53 sa.Column("default_value", sa.String(), nullable=True),
54 sa.Column("description", sa.String(), nullable=True),
55 sa.Column("is_nullable", sa.Boolean(), nullable=True),
56 )
58 op.create_table(
59 "meta_column_statistics",
60 sa.Column(
61 "column_id",
62 sa.Integer(),
63 sa.ForeignKey("meta_columns.id"),
64 primary_key=True,
65 ),
66 sa.Column("most_common_values", Array(), nullable=True),
67 sa.Column("most_common_frequencies", Array(), nullable=True),
68 sa.Column("null_percentage", sa.Numeric(5, 2), nullable=True),
69 sa.Column("distinct_values_count", sa.BigInteger(), nullable=True), # Updated data type
70 sa.Column("minimum_value", sa.String(), nullable=True),
71 sa.Column("maximum_value", sa.String(), nullable=True),
72 )
74 op.create_table(
75 "meta_primary_keys",
76 sa.Column("table_id", sa.Integer(), sa.ForeignKey("meta_tables.id"), primary_key=True),
77 sa.Column(
78 "column_id",
79 sa.Integer(),
80 sa.ForeignKey("meta_columns.id"),
81 primary_key=True,
82 ),
83 sa.Column("ordinal_position", sa.Integer(), nullable=True),
84 sa.Column("constraint_name", sa.String(), nullable=True),
85 )
87 op.create_table(
88 "meta_foreign_keys",
89 sa.Column(
90 "parent_table_id",
91 sa.Integer(),
92 sa.ForeignKey("meta_tables.id"),
93 primary_key=True,
94 ),
95 sa.Column(
96 "parent_column_id",
97 sa.Integer(),
98 sa.ForeignKey("meta_columns.id"),
99 primary_key=True,
100 ),
101 sa.Column(
102 "child_table_id",
103 sa.Integer(),
104 sa.ForeignKey("meta_tables.id"),
105 primary_key=True,
106 ),
107 sa.Column(
108 "child_column_id",
109 sa.Integer(),
110 sa.ForeignKey("meta_columns.id"),
111 primary_key=True,
112 ),
113 sa.Column("constraint_name", sa.String(), nullable=True),
114 )