diff options
author | Marko Kreen | 2008-04-04 18:16:21 +0000 |
---|---|---|
committer | Marko Kreen | 2008-04-04 18:16:21 +0000 |
commit | 4b83aca38fe11526b1f35e44726d744e904c4916 (patch) | |
tree | 6f6ea26994a7c34eee55357dc5f5f411ad3688cb /python/pgq/setadmin.py | |
parent | d19f6418c9f3b03b00b4b087f47ac72dfd293318 (diff) |
more admin work
Diffstat (limited to 'python/pgq/setadmin.py')
-rw-r--r-- | python/pgq/setadmin.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/python/pgq/setadmin.py b/python/pgq/setadmin.py index 606c7987..a389f389 100644 --- a/python/pgq/setadmin.py +++ b/python/pgq/setadmin.py @@ -31,6 +31,8 @@ class SetAdmin(skytools.DBScript): root_info = None member_map = {} set_name = None + extra_objs = [] + initial_db_name = 'node_db' def init_optparse(self, parser = None): p = skytools.DBScript.init_optparse(self, parser) @@ -82,6 +84,9 @@ class SetAdmin(skytools.DBScript): self.log.info("Node is already initialized as %s" % info['node_type']) return + self.log.info("Initializing node") + + # fixme worker_name = "%s_%s_worker" % (self.set_name, node_name) # register member @@ -135,15 +140,14 @@ class SetAdmin(skytools.DBScript): global_watermark, combined_set]) db.commit() - - - self.log.info("Done") def find_root_db(self): - db = self.get_database('root_db') + loc = self.cf.get(self.initial_db_name) while 1: + db = self.get_database('root_db', connstr = loc) + # query current status res = self.exec_query(db, "select * from pgq_set.get_node_info(%s)", [self.set_name]) info = res[0] @@ -163,9 +167,6 @@ class SetAdmin(skytools.DBScript): self.log.info("Sub node provider not initialized?") sys.exit(1) - # walk upwards - db = self.get_database('root_db', connstr = loc) - def load_root_info(self, db): res = self.exec_query(db, "select * from pgq_set.get_node_info(%s)", [self.set_name]) info = res[0] @@ -199,7 +200,8 @@ class SetAdmin(skytools.DBScript): skytools.DBSchema("pgq_ext", sql_file="pgq_ext.sql"), skytools.DBSchema("pgq_set", sql_file="pgq_set.sql"), ] - skytools.db_install(db.cursor(), objs, self.log.debug) + objs += self.extra_objs + skytools.db_install(db.cursor(), objs, self.log) db.commit() if __name__ == '__main__': |