From 7936d14abcd18fd210db55d811c944dcc842051e Mon Sep 17 00:00:00 2001 From: wang yan Date: Sat, 8 Dec 2018 14:23:12 +0800 Subject: [PATCH] fix per comments, add if not exists to create pqsql sequence Signed-off-by: wang yan --- .../db/util/mysql_pgsql_data_converter.py | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/tools/migration/db/util/mysql_pgsql_data_converter.py b/tools/migration/db/util/mysql_pgsql_data_converter.py index 5a656839f..45e19d353 100644 --- a/tools/migration/db/util/mysql_pgsql_data_converter.py +++ b/tools/migration/db/util/mysql_pgsql_data_converter.py @@ -94,8 +94,8 @@ def convert_notary_server_db(mysql_dump_file, pgsql_dump_file): write_database(pgsql_dump, "notaryserver") write_insert(pgsql_dump, insert_lines) - alter_sequence(pgsql_dump, "tuf_files", "id") - alter_sequence(pgsql_dump, "changefeed", "id") + write_sequence(pgsql_dump, "tuf_files", "id") + write_sequence(pgsql_dump, "changefeed", "id") def convert_notary_signer_db(mysql_dump_file, pgsql_dump_file): mysql_dump = open(mysql_dump_file) @@ -116,7 +116,7 @@ def convert_notary_signer_db(mysql_dump_file, pgsql_dump_file): write_database(pgsql_dump, "notarysigner") write_insert(pgsql_dump, insert_lines) - alter_sequence(pgsql_dump, "private_keys", "id") + write_sequence(pgsql_dump, "private_keys", "id") def write_database(pgsql_dump, db_name): pgsql_dump.write("\\c %s;\n" % db_name) @@ -145,16 +145,10 @@ def write_alter_table_bool(pgsql_dump, table_name, table_columnn, default_value= def write_sequence(pgsql_dump, table_name, table_columnn): pgsql_dump.write('\n') - pgsql_dump.write("CREATE SEQUENCE %s_%s_seq;\n" % (table_name, table_columnn)) + pgsql_dump.write("CREATE SEQUENCE IF NOT EXISTS %s_%s_seq;\n" % (table_name, table_columnn)) pgsql_dump.write("SELECT setval('%s_%s_seq', max(%s)) FROM %s;\n" % (table_name, table_columnn, table_columnn, table_name)) pgsql_dump.write("ALTER TABLE \"%s\" ALTER COLUMN \"%s\" SET DEFAULT nextval('%s_%s_seq');\n" % (table_name, table_columnn, table_name, table_columnn)) -def alter_sequence(pgsql_dump, table_name, table_columnn): - pgsql_dump.write('\n') - pgsql_dump.write("SELECT setval('%s_%s_seq', max(%s)) FROM %s;\n" % (table_name, table_columnn, table_columnn, table_name)) - pgsql_dump.write("ALTER TABLE \"%s\" ALTER COLUMN \"%s\" SET DEFAULT nextval('%s_%s_seq');\n" % (table_name, table_columnn, table_name, table_columnn)) - - if __name__ == "__main__": if sys.argv[1].find("registry") != -1: convert_registry_db(sys.argv[1], sys.argv[2])