99494d77e3
Reviewers: mislav.bradac Reviewed By: mislav.bradac Subscribers: pullbot Differential Revision: https://phabricator.memgraph.io/D826
44 lines
1.6 KiB
Python
Executable File
44 lines
1.6 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
|
|
import argparse
|
|
import sys
|
|
|
|
from neo4j.v1 import GraphDatabase, basic_auth
|
|
|
|
def parse_args():
|
|
argp = argparse.ArgumentParser(
|
|
description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
argp.add_argument('indexfile', help='File with indexes that should be created.')
|
|
argp.add_argument('--host', default='127.0.0.1', help='Database host.')
|
|
argp.add_argument('--port', default='7687', help='Database port.')
|
|
argp.add_argument('--username', default='', help='Database username.')
|
|
argp.add_argument('--password', default='', help='Database password.')
|
|
argp.add_argument('--database', default='memgraph',
|
|
choices=('memgraph', 'neo4j'), help='Database used.')
|
|
return argp.parse_args()
|
|
|
|
# Parse args
|
|
args = parse_args()
|
|
|
|
# Initialize driver and create session.
|
|
driver = GraphDatabase.driver('bolt://{}:{}'.format(args.host, args.port),
|
|
auth=basic_auth(args.username, args.password),
|
|
encrypted=False)
|
|
session = driver.session()
|
|
|
|
# The fist program argument is path to a file with indexes.
|
|
with open(args.indexfile, "r") as f:
|
|
print("Starting index creation...")
|
|
for line in f.readlines():
|
|
session.run(line.strip()).consume()
|
|
print("%s -> DONE" % line.strip())
|
|
if args.database == "neo4j":
|
|
print("Waiting for indexes to be fully created...")
|
|
session.run("CALL db.awaitIndexes(14400);").consume()
|
|
print("All indexes were created.")
|
|
|
|
# Do the cleanup.
|
|
session.close()
|
|
driver.close()
|