@@ -152,29 +152,6 @@ def arcwal_dir(self, node):
152152def backup_dir (self ,node ):
153153return os .path .abspath ("%s/backup" % node .base_dir )
154154
155- # def make_bnode(self, base_dir=None, allows_streaming=False, options={}):
156- # real_base_dir = os.path.join(self.dir_path, base_dir)
157- # shutil.rmtree(real_base_dir, ignore_errors=True)
158- #
159- # node = get_new_node('test', base_dir=real_base_dir)
160- # node.init(allows_streaming=allows_streaming)
161- #
162- # if not allows_streaming:
163- # node.append_conf("postgresql.auto.conf", "wal_level = hot_standby")
164- # node.append_conf("postgresql.auto.conf", "archive_mode = on")
165- # node.append_conf(
166- # "postgresql.auto.conf",
167- # """archive_command = 'cp "%%p" "%s/%%f"'""" % os.path.abspath(self.arcwal_dir(node))
168- # )
169- #
170- # for key, value in six.iteritems(options):
171- # node.append_conf("postgresql.conf", "%s = %s" % (key, value))
172- #
173- # return node
174-
175- # def print_started(self, fname):
176- # print
177-
178155def make_simple_node (self ,base_dir = None ,set_replication = False ,
179156set_archiving = False ,initdb_params = [],pg_options = {}):
180157real_base_dir = os .path .join (self .dir_path ,base_dir )
@@ -199,7 +176,6 @@ def make_simple_node(self, base_dir=None, set_replication=False,
199176self .set_archiving_conf (node ,self .arcwal_dir (node ))
200177return node
201178
202-
203179def create_tblspace_in_node (self ,node ,tblspc_name ,cfs = False ):
204180res = node .execute (
205181"postgres" ,"select exists (select 1 from pg_tablespace where spcname = '{0}')" .format (
@@ -346,11 +322,16 @@ def init_pb(self, node):
346322def clean_pb (self ,node ):
347323shutil .rmtree (self .backup_dir (node ),ignore_errors = True )
348324
349- def backup_pb (self ,node ,backup_type = "full" ,options = []):
325+ def backup_pb (self ,node = None ,data_dir = None ,backup_dir = None ,backup_type = "full" ,options = []):
326+ if data_dir is None :
327+ data_dir = node .data_dir
328+ if backup_dir is None :
329+ backup_dir = self .backup_dir (node )
330+
350331cmd_list = [
351332"backup" ,
352- "-D " ,node . data_dir ,
353- "-B " ,self . backup_dir ( node ) ,
333+ "-B " ,backup_dir ,
334+ "-D " ,data_dir ,
354335"-p" ,"%i" % node .port ,
355336"-d" ,"postgres"
356337 ]
@@ -359,37 +340,20 @@ def backup_pb(self, node, backup_type="full", options=[]):
359340
360341return self .run_pb (cmd_list + options )
361342
362- def backup_pb_proc (self ,node ,backup_type = "full" ,
363- stdout = None ,stderr = None ,options = []):
364- cmd_list = [
365- self .probackup_path ,
366- "backup" ,
367- "-D" ,node .data_dir ,
368- "-B" ,self .backup_dir (node ),
369- "-p" ,"%i" % (node .port ),
370- "-d" ,"postgres"
371- ]
372- if backup_type :
373- cmd_list += ["-b" ,backup_type ]
374-
375- proc = subprocess .Popen (
376- cmd_list + options ,
377- stdout = stdout ,
378- stderr = stderr
379- )
380-
381- return proc
343+ def restore_pb (self ,node = None ,backup_dir = None ,data_dir = None ,id = None ,options = []):
344+ if data_dir is None :
345+ data_dir = node .data_dir
346+ if backup_dir is None :
347+ backup_dir = self .backup_dir (node )
382348
383- def restore_pb (self ,node ,id = None ,options = []):
384349cmd_list = [
385350"restore" ,
386- "-D " ,node . data_dir ,
387- "-B " ,self . backup_dir ( node )
351+ "-B " ,backup_dir ,
352+ "-D " ,data_dir
388353 ]
389354if id :
390355cmd_list += ["-i" ,id ]
391356
392- # print(cmd_list)
393357return self .run_pb (cmd_list + options )
394358
395359def show_pb (self ,node ,id = None ,options = [],as_text = False ):