def test_startAll_fails(self, mock1, mock2): result = StartSegmentsResult() failed_segment = Segment.initFromString( "2|0|p|p|s|u|sdw1|sdw1|40000|/data/primary0") result.addFailure(failed_segment, 'reason', 'reasoncode') mock1.return_value.startSegments.return_value = result result = self.buildMirrorSegs._GpMirrorListToBuild__startAll(Mock(), [Mock(), Mock()], []) self.assertFalse(result) self.logger.warn.assert_any_call('Failed to start segment. The fault prober will shortly mark it as down. ' 'Segment: sdw1:/data/primary0:content=0:dbid=2:role=p:preferred_role=p:mode=s:status=u: REASON: reason')
def test_startAll_fails(self, mock1, mock2): result = StartSegmentsResult() failed_segment = Segment.initFromString( "2|0|p|p|s|u|sdw1|sdw1|40000|/data/primary0") result.addFailure(failed_segment, 'reason', 'reasoncode') mock1.return_value.startSegments.return_value = result result = self.buildMirrorSegs._GpMirrorListToBuild__startAll(Mock(), [Mock(), Mock()], []) self.assertFalse(result) self.logger.warn.assert_any_call('Failed to start segment. The fault prober will shortly mark it as down. ' 'Segment: sdw1:/data/primary0:content=0:dbid=2:role=p:preferred_role=p:mode=s:status=u: REASON: reason')
def test_log_when_heap_checksum_validation_fails(self): sys.argv = ["gpstart", "-a", "-S"] self.mock_os_path_exists.side_effect = os_exists_check self.mock_heap_checksum.return_value.get_coordinator_value.return_value = 1 start_failure = StartSegmentsResult() start_failure.addFailure(self.mirror1, "fictitious reason", gp.SEGSTART_ERROR_CHECKSUM_MISMATCH) self.mock_start_result.return_value.startSegments.return_value.getFailedSegmentObjs.return_value = start_failure.getFailedSegmentObjs() gpstart = self.setup_gpstart() return_code = gpstart.run() self.assertEqual(return_code, 1) messages = [msg[0][0] for msg in self.subject.logger.info.call_args_list] self.assertIn("DBID:5 FAILED host:'sdw1' datadir:'/data/mirror1' with reason:'fictitious reason'", messages)
def test_log_when_heap_checksum_validation_fails(self): sys.argv = ["gpstart", "-a", "-S"] self.mock_os_path_exists.side_effect = os_exists_check self.mock_heap_checksum.return_value.get_master_value.return_value = 1 start_failure = StartSegmentsResult() start_failure.addFailure(self.mirror1, "fictitious reason", gp.SEGSTART_ERROR_CHECKSUM_MISMATCH) self.mock_start_result.return_value.startSegments.return_value.getFailedSegmentObjs.return_value = start_failure.getFailedSegmentObjs() parser = self.subject.GpStart.createParser() options, args = parser.parse_args() gpstart = self.subject.GpStart.createProgram(options, args) return_code = gpstart.run() self.assertEqual(return_code, 1) messages = [msg[0][0] for msg in self.subject.logger.info.call_args_list] self.assertIn("DBID:5 FAILED host:'sdw1' datadir:'/data/mirror1' with reason:'fictitious reason'", messages)