class GpstopTestCase(MPPTestCase): '''testcase for gpstart''' origin_mdd = os.environ.get('MASTER_DATA_DIRECTORY') def __init__(self,methodName): self.gputil = GpUtility() super(GpstopTestCase,self).__init__(methodName) def setUp(self): self.gputil.check_and_start_gpdb() stdby_presence = self.gputil.check_standby_presence() if stdby_presence: self.gputil.remove_standby() self.gputil.install_standby() def tearDown(self): self.gputil.remove_standby() self.gputil.run('gpstart -a') self.gputil.run('gprecoverseg -a') def test_gpstop_from_master(self): self.assertTrue(self.gputil.gpstop_and_verify()) self.gputil.run('gpstart -a') def test_gpstop_master_only(self): self.assertTrue(self.gputil.gpstop_and_verify(option = '-m')) self.gputil.run('gpstart -a') def test_gpstop_fast(self): #run transactions, and stop fast, check if transaction aborted, and the cluster was stopped self.assertTrue(self.gputil.gpstop_and_verify(option = '-M fast')) self.gputil.run('gpstart -a') def test_gpstop_immediate(self): self.assertTrue(self.gputil.gpstop_and_verify(option = '-M immediate')) self.gputil.run('gpstart -a') def test_gpstop_smart(self): self.assertTrue(self.gputil.gpstop_and_verify(option = '-M smart')) self.gputil.run('gpstart -a') def test_gpdb_restart(self): self.assertTrue(self.gputil.gpstop_and_verify('-r')) def test_gpdb_reload(self): self.assertTrue(self.gputil.gpstop_and_verify('-u')) def test_gpstop_except_stdby(self): self.assertTrue(self.gputil.gpstop_and_verify('-y')) self.gputil.run('gpstart -y') def test_gpstop_after_failover(self): tinctest.logger.info("test gpstop from new master after failover") activatestdby = GpactivateStandby() standby_host = activatestdby.get_current_standby() standby_port = activatestdby.get_standby_port() standby_mdd = activatestdby.get_standby_dd() activatestdby.activate() (rc,stdout)=activatestdby.run_remote(standby_host, rmt_cmd='gpstop -a -M fast', pgport=standby_port,standbydd=standby_mdd) self.assertEqual(0,rc) activatestdby.run_remote(standby_host, rmt_cmd='gpstart -a', pgport=standby_port, standbydd=standby_mdd) self.gputil.failback_to_original_master(self.origin_mdd, standby_host, standby_mdd, standby_port)
class GpstopTestCase(MPPTestCase): '''testcase for gpstart''' origin_mdd = os.environ.get('MASTER_DATA_DIRECTORY') def __init__(self,methodName): self.gputil = GpUtility() super(GpstopTestCase,self).__init__(methodName) def setUp(self): self.gputil.check_and_start_gpdb() stdby_presence = self.gputil.check_standby_presence() if stdby_presence: self.gputil.remove_standby() self.gputil.install_standby() def tearDown(self): self.gputil.remove_standby() self.gputil.run('gpstart -a') def test_gpstop_from_master(self): self.assertTrue(self.gputil.gpstop_and_verify()) self.gputil.run('gpstart -a') def test_gpstop_master_only(self): self.assertTrue(self.gputil.gpstop_and_verify(option = '-m')) self.gputil.run('gpstart -a') def test_gpstop_fast(self): #run transactions, and stop fast, check if transaction aborted, and the cluster was stopped self.assertTrue(self.gputil.gpstop_and_verify(option = '-M fast')) self.gputil.run('gpstart -a') def test_gpstop_immediate(self): self.assertTrue(self.gputil.gpstop_and_verify(option = '-M immediate')) self.gputil.run('gpstart -a') def test_gpstop_smart(self): self.assertTrue(self.gputil.gpstop_and_verify(option = '-M smart')) self.gputil.run('gpstart -a') def test_gpdb_restart(self): self.assertTrue(self.gputil.gpstop_and_verify('-r')) def test_gpdb_reload(self): self.assertTrue(self.gputil.gpstop_and_verify('-u')) def test_gpstop_except_stdby(self): self.assertTrue(self.gputil.gpstop_and_verify('-y')) self.gputil.run('gpstart -y') def test_gpstop_after_failover(self): tinctest.logger.info("test gpstop from new master after failover") activatestdby = GpactivateStandby() standby_host = activatestdby.get_current_standby() standby_port = activatestdby.get_standby_port() standby_mdd = activatestdby.get_standby_dd() activatestdby.activate() (rc,stdout)=activatestdby.run_remote(standby_host, rmt_cmd='gpstop -a -M fast', pgport=standby_port,standbydd=standby_mdd) self.assertEqual(0,rc) activatestdby.run_remote(standby_host, rmt_cmd='gpstart -a', pgport=standby_port, standbydd=standby_mdd) self.gputil.failback_to_original_master(self.origin_mdd, standby_host, standby_mdd, standby_port)