summaryrefslogtreecommitdiff
path: root/storage/tokudb/mysql-test/tokudb/t/change_column_blob.py
blob: e25fce54d0ee86a28475551e5279b190f840e0e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import sys
def main():
    print "source include/have_tokudb.inc;"
    print "# this test is generated by change_blob.py"
    print "# generate hot blob expansion test cases"
    print "--disable_warnings"
    print "DROP TABLE IF EXISTS t;"
    print "--enable_warnings"
    print "SET SESSION DEFAULT_STORAGE_ENGINE=\"TokuDB\";"
    print "SET SESSION TOKUDB_DISABLE_SLOW_ALTER=1;"
    gen_tests([ "TINY", "", "MEDIUM", "LONG" ], [ "NULL", "NOT NULL"])
    return 0
def gen_tests(base_types, null_types):
    for from_index in range(len(base_types)):
        for to_index in range(len(base_types)):
            for from_null in range(len(null_types)):
                for to_null in range(len(null_types)):
                    print "CREATE TABLE t (a %sBLOB %s);" % (base_types[from_index], null_types[from_null])
                    print "--replace_regex /MariaDB/XYZ/ /MySQL/XYZ/"
                    print "--error ER_UNSUPPORTED_EXTENSION"
                    print "ALTER TABLE t CHANGE COLUMN a a %sTEXT %s;" % (base_types[to_index], null_types[to_null]);
                    if from_null != to_null or from_index > to_index:
                        print "--replace_regex /MariaDB/XYZ/ /MySQL/XYZ/"
                        print "--error ER_UNSUPPORTED_EXTENSION"
                    print "ALTER TABLE t CHANGE COLUMN a a %sBLOB %s;" % (base_types[to_index], null_types[to_null]);
                    print "DROP TABLE t;"

sys.exit(main())