server.deploy() print '-------------------------------------------------------------' print 'gh-527: update vclock on delete from db.space._cluster' print '-------------------------------------------------------------' # master server master = server master_id = master.get_param('server')['id'] master.admin("db.schema.user.grant('guest', 'replication')") replica = BeeServer(server.ini) replica.script = 'replication/replica.lua' replica.vardir = os.path.join(server.vardir, 'replica') replica.rpl_master = master replica.deploy() replica.wait_lsn(master_id, master.get_lsn(master_id)) replica_id = replica.get_param('server')['id'] replica_uuid = replica.get_param('server')['uuid'] sys.stdout.push_filter(replica_uuid, '<replica uuid>') replica.admin('db.space._schema:insert{"test", 48}') replica.admin('db.info.server.id') replica.admin('db.info.server.ro') replica.admin('db.info.server.lsn') # 1 replica.admin('db.info.vclock[%d]' % replica_id) master.admin('db.space._cluster:delete{%d}' % replica_id) replica.wait_lsn(master_id, master.get_lsn(master_id)) replica.admin('db.info.server.id')
insert_tuples(master, id, id + ID_STEP) # select from replica replica.wait_lsn(master_id, master.get_lsn(master_id)) select_tuples(replica, id, id + ID_STEP) id += ID_STEP # insert to master insert_tuples(master, id, id + ID_STEP) # select from replica replica.wait_lsn(master_id, master.get_lsn(master_id)) select_tuples(replica, id, id + ID_STEP) id += ID_STEP print "swap servers" # reconfigure replica to master replica.rpl_master = None print("switch replica to master") replica.admin("db.cfg{replication_source=''}") # reconfigure master to replica master.rpl_master = replica print("switch master to replica") master.admin("db.cfg{replication_source='%s'}" % replica.uri, silent=True) # insert to replica insert_tuples(replica, id, id + ID_STEP) # select from master master.wait_lsn(replica_id, replica.get_lsn(replica_id)) select_tuples(master, id, id + ID_STEP) id += ID_STEP # insert to replica