def setUp(self):
        self.coordinator = Segment(content=-1,
                                   preferred_role='p',
                                   dbid=1,
                                   role='p',
                                   mode='s',
                                   status='u',
                                   hostname='coordinatorhost',
                                   address='coordinatorhost-1',
                                   port=1111,
                                   datadir='/coordinatordir')

        self.primary = Segment(content=0,
                               preferred_role='p',
                               dbid=2,
                               role='p',
                               mode='s',
                               status='u',
                               hostname='primaryhost',
                               address='primaryhost-1',
                               port=3333,
                               datadir='/primary')
        self.mock_logger = Mock(
            spec=['log', 'warn', 'info', 'debug', 'error', 'warning', 'fatal'])
        gplog.get_unittest_logger()
        self.apply_patches([])

        self.buildMirrorSegs = GpMirrorListToBuild(toBuild=[],
                                                   pool=None,
                                                   quiet=True,
                                                   parallelDegree=0,
                                                   logger=self.mock_logger)
    def setUp(self):
        self.maxDiff = None
        self.coordinator = Segment(content=-1,
                                   preferred_role='p',
                                   dbid=1,
                                   role='p',
                                   mode='s',
                                   status='u',
                                   hostname='coordinatorhost',
                                   address='coordinatorhost-1',
                                   port=1111,
                                   datadir='/coordinatordir')

        self.primary = Segment(content=0,
                               preferred_role='p',
                               dbid=20,
                               role='p',
                               mode='s',
                               status='u',
                               hostname='primaryhost',
                               address='primaryhost-1',
                               port=3333,
                               datadir='/primary')
        self.mirror = Segment(content=0,
                              preferred_role='m',
                              dbid=30,
                              role='m',
                              mode='s',
                              status='d',
                              hostname='primaryhost',
                              address='primaryhost-1',
                              port=3333,
                              datadir='/primary')

        gplog.get_unittest_logger()
        self.apply_patches([
            patch(
                'gppylib.operations.buildMirrorSegments.GpArray.getSegmentsByHostName'
            )
        ])
        self.mock_get_segments_by_hostname = self.get_mock_from_apply_patch(
            'getSegmentsByHostName')

        self.action = 'recover'
        self.gpEnv = Mock()
        self.gpArray = GpArray([self.coordinator, self.primary, self.mirror])
        self.mock_logger = Mock(
            spec=['log', 'warn', 'info', 'debug', 'error', 'warning', 'fatal'])
Пример #3
0
#!/usr/bin/env python

import os, sys
import unittest
from gppylib import gplog
from gpsegstart import GpSegStart
from mock import patch

logger = gplog.get_unittest_logger()


class GpSegStartTestCase(unittest.TestCase):
    @patch('gpsegstart.GpSegStart.getOverallStatusKeys', return_value=[])
    @patch('gpsegstart.gp.GpVersion.local', return_value=None)
    @patch('gpsegstart.base.WorkerPool')
    def test_check_postmasters_01(self, mk1, mk2, mk3):
        db = '1|1|p|p|s|u|mdw|mdw-1|2000|/data/gpseg-1s'
        gpseg = GpSegStart([db], None, 'col1:col2:col3', 'quiescent', None,
                           None, None, None, None, None, None, None)
        result = gpseg.checkPostmasters(False)
        self.assertTrue(result)

    @patch('gpsegstart.GpSegStart.getOverallStatusKeys',
           return_value=['foo1', 'foo2'])
    @patch('gpsegstart.gp.check_pid', return_value=False)
    @patch('gpsegstart.gp.GpVersion.local', return_value=None)
    @patch('gpsegstart.base.WorkerPool')
    def test_check_postmasters_02(self, mk1, mk2, mk3, mk4):
        db = '1|1|p|p|s|u|mdw|mdw-1|2000|/data/gpseg-1s'
        gpseg = GpSegStart([db], None, 'col1:col2:col3', 'quiescent', None,
                           None, None, None, None, None, None, None)
#!/usr/bin/env python

import os, sys
import unittest
from gppylib import gplog
from gpsegstart import GpSegStart
from mock import patch

logger = gplog.get_unittest_logger()

class GpSegStartTestCase(unittest.TestCase):

    @patch('gpsegstart.GpSegStart.getOverallStatusKeys', return_value=[])
    @patch('gpsegstart.gp.GpVersion.local', return_value=None)
    @patch('gpsegstart.base.WorkerPool')
    def test_check_postmasters_01(self, mk1, mk2, mk3):
        db = '1|1|p|p|s|u|mdw|mdw-1|2000|2001|/data/gpseg-1s||'
        gpseg = GpSegStart([db], None, 'col1:col2:col3', 'quiescent', None, None, None, None, None, None, None)
        result = gpseg.checkPostmasters(False)
        self.assertTrue(result)

    @patch('gpsegstart.GpSegStart.getOverallStatusKeys', return_value=['foo1', 'foo2'])
    @patch('gpsegstart.gp.check_pid', return_value=False)
    @patch('gpsegstart.gp.GpVersion.local', return_value=None)
    @patch('gpsegstart.base.WorkerPool')
    def test_check_postmasters_02(self, mk1, mk2, mk3, mk4):
        db = '1|1|p|p|s|u|mdw|mdw-1|2000|2001|/data/gpseg-1s||'
        gpseg = GpSegStart([db], None, 'col1:col2:col3', 'quiescent', None, None, None, None, None, None, None)
        result = gpseg.checkPostmasters(False)
        self.assertFalse(result)