Do not skip index creation if a collection exists.

This commit is contained in:
Lev Berman 2018-09-11 11:51:18 +02:00
parent 681aa59131
commit 3a0e1af3da

View File

@ -72,13 +72,13 @@ def create_tables(conn, dbname):
try: try:
logger.info(f'Create `{table_name}` table.') logger.info(f'Create `{table_name}` table.')
conn.conn[dbname].create_collection(table_name) conn.conn[dbname].create_collection(table_name)
create_indexes(conn, dbname, table_name, INDEXES[table_name])
except CollectionInvalid: except CollectionInvalid:
logger.info(f'Collection {table_name} already exists.') logger.info(f'Collection {table_name} already exists.')
create_indexes(conn, dbname, table_name, INDEXES[table_name])
def create_indexes(conn, dbname, collection, indexes): def create_indexes(conn, dbname, collection, indexes):
logger.info(f'Create secondary indexes for `{collection}`.') logger.info(f'Ensure secondary indexes for `{collection}`.')
for fields, kwargs in indexes: for fields, kwargs in indexes:
conn.conn[dbname][collection].create_index(fields, **kwargs) conn.conn[dbname][collection].create_index(fields, **kwargs)