def replay_compacted(self): compacted_transactions = os.listdir(self.data_path + '/compact/') compacted_transactions.sort() cur_trans = None for i in compacted_transactions: f = open(self.data_path + '/compact/' + i) for j in f.readlines(): j = j.strip() if j.startswith('begin'): # start transaction if cur_trans: self.commit_transaction(cur_trans, is_replay=True) ts, rev, hash = j.split(' ')[1].split("_") cur_trans = Transaction(rev) cur_trans.ts = ts else: cur_trans.statements.append( Statement.from_json(j) ) if cur_trans: self.commit_transaction(cur_trans)