def setUpClass(cls): super(AppendOnlyEOFTests, cls).setUpClass() gpconfig = GpConfig() (cls.master_value, cls.segment_value) = gpconfig.getParameter('max_appendonly_tables') tinctest.logger.debug("Original max_appendonly_tables values - Master Value: %s Segment Value: %s" %(cls.master_value, cls.segment_value)) gpconfig.setParameter('max_appendonly_tables', '3', '3') GpStop().run_gpstop_cmd(restart=True) (master_value, segment_value) = gpconfig.getParameter('max_appendonly_tables') tinctest.logger.debug("Set max_appendonly_tables to Master Value: %s Segment Value: %s " %(master_value, segment_value)) if master_value != '3' or segment_value != '3': raise Exception("Failed to set max_appendonly_tables to the required values")
def setUp(self): # Set GUC gp_vmem_protect_limit self.prd = "_hawq" if self.gp_version() == "gpdb": self.prd = "" gpconfig = GpConfig() expected_vmem = '20' expected_runaway_perc = '0' restart_db = False if self.name == "OOMTestCase.test_07_OOM_abort_query": gpconfig.setParameter('gp_vmem_limit_per_query', '2MB', '2MB', '--skipvalidation') restart_db = True (vmem, _) = gpconfig.getParameter('gp_vmem_protect_limit') (runaway_perc, _) = GpConfig().getParameter('runaway_detector_activation_percent') if runaway_perc == expected_runaway_perc and vmem == expected_vmem: tinctest.logger.info('gp_vmem_protect_limit and runaway_detector_activation_percent GUCs already set correctly') else: tinctest.logger.info('Setting GUC and restarting DB') gpconfig.setParameter('runaway_detector_activation_percent', expected_runaway_perc, expected_runaway_perc) gpconfig.setParameter('gp_vmem_protect_limit', expected_vmem, expected_vmem) restart_db = True if restart_db: # Restart DB Command('Restart database for GUCs to take effect', 'source $GPHOME/greenplum_path.sh && gpstop -ar').run(validateAfter=True) super(OOMTestCase, self).setUp()
def tearDownClass(cls): gpconfig = GpConfig() if (not cls.master_value) or (not cls.segment_value): raise Exception("Original max_appendonly_tables value is None") gpconfig.setParameter('max_appendonly_tables', cls.master_value, cls.segment_value) GpStop().run_gpstop_cmd(restart=True) # Make sure the values are reset properly (master_value, segment_value) = gpconfig.getParameter('max_appendonly_tables') try: if master_value != cls.master_value or segment_value != cls.segment_value: raise Exception("Failed to reset max_appendonly_tables to the required values") finally: super(AppendOnlyEOFTests, cls).tearDownClass()
class GpConfigTests(unittest.TestCase): def setUp(self): self.gp_config = GpConfig() #HK: disabling test #can't test with hardcoded ports #need better handling or remove test def donttest_getPort(self): port_info = self.gp_config.getPort() expected = {0: 18506, 1: 18507, 2: 18508, -1: 18501} self.assertEquals(port_info, expected) def test_getParameter(self): name = "port" self.assertRaises(Exception, self.gp_config.getParameter, name) #HK: disabling test #these params apparently require restart to actually take effect def donttest_set_get_verify_remove_ParameterMasterOnly(self): name = "max_connections" master_value = "100" self.gp_config.setParameterMasterOnly(name, master_value) self.assertTrue( self.gp_config.verifyParameterMasterOnly(name, master_value)) self.gp_config.removeParameterMasterOnly(name) self.assertRaises(self.gp_config.getParameterMasterOnly(name)) #HK: disabling test #these params apparently require restart to actually take effect def donttest_set_get_verify_remove_Parameter(self): name = "max_connections" master_value = "100" seg_value = "1000" self.gp_config.setParameter(name, master_value, seg_value) self.assertTrue( self.gp_config.verifyParameter(name, master_value, seg_value)) self.gp_config.removeParameter(name) self.assertRaises(self.gp_config.getParameter(name)) #HK: disabling test #these params apparently require restart to actually take effect def donttest_set_get_verify_remove_ParameterSegmentOnly(self): name = "max_connections" seg_value = "1000" self.gp_config.setParameterSegmentOnly(name, seg_value) self.assertTrue( self.gp_config.verifyParameterSegmentOnly(name, seg_value)) self.gp_config.removeParameterSegmentOnly(name) self.assertRaises(self.gp_config.getParameterSegmentOnly(name))
class GpConfigTests(unittest.TestCase): def setUp(self): self.gp_config = GpConfig() #HK: disabling test #can't test with hardcoded ports #need better handling or remove test def donttest_getPort(self): port_info = self.gp_config.getPort() expected = {0: 18506, 1: 18507, 2: 18508, -1: 18501} self.assertEquals(port_info, expected) def test_getParameter(self): name = "port" self.assertRaises(Exception,self.gp_config.getParameter, name) #HK: disabling test #these params apparently require restart to actually take effect def donttest_set_get_verify_remove_ParameterMasterOnly(self): name = "max_connections" master_value = "100" self.gp_config.setParameterMasterOnly(name, master_value) self.assertTrue(self.gp_config.verifyParameterMasterOnly(name, master_value)) self.gp_config.removeParameterMasterOnly(name) self.assertRaises(self.gp_config.getParameterMasterOnly(name)) #HK: disabling test #these params apparently require restart to actually take effect def donttest_set_get_verify_remove_Parameter(self): name = "max_connections" master_value = "100" seg_value = "1000" self.gp_config.setParameter(name, master_value, seg_value) self.assertTrue(self.gp_config.verifyParameter(name, master_value, seg_value)) self.gp_config.removeParameter(name) self.assertRaises(self.gp_config.getParameter(name)) #HK: disabling test #these params apparently require restart to actually take effect def donttest_set_get_verify_remove_ParameterSegmentOnly(self): name = "max_connections" seg_value = "1000" self.gp_config.setParameterSegmentOnly(name, seg_value) self.assertTrue(self.gp_config.verifyParameterSegmentOnly(name, seg_value)) self.gp_config.removeParameterSegmentOnly(name) self.assertRaises(self.gp_config.getParameterSegmentOnly(name))