Beispiel #1
0
    def test_count_replica(self, create_partition):
        p10 = create_partition('t1', 0)
        p11 = create_partition('t1', 1)
        p12 = create_partition('t1', 2)
        p13 = create_partition('t1', 3)
        b1 = create_broker('b1', [p10, p11, p12])
        b2 = create_broker('b2', [p10, p13])
        rg = ReplicationGroup('test_rg', set([b1, b2]))

        assert rg.count_replica(p10) == 2
        assert rg.count_replica(p11) == 1
        assert rg.count_replica(p12) == 1
        assert rg.count_replica(p13) == 1
        assert rg.count_replica(create_partition('t1', 4)) == 0
Beispiel #2
0
    def test_count_replica(self, create_partition):
        p10 = create_partition('t1', 0)
        p11 = create_partition('t1', 1)
        p12 = create_partition('t1', 2)
        p13 = create_partition('t1', 3)
        b1 = create_broker('b1', [p10, p11, p12])
        b2 = create_broker('b2', [p10, p13])
        rg = ReplicationGroup('test_rg', set([b1, b2]))

        assert rg.count_replica(p10) == 2
        assert rg.count_replica(p11) == 1
        assert rg.count_replica(p12) == 1
        assert rg.count_replica(p13) == 1
        assert rg.count_replica(create_partition('t1', 4)) == 0
Beispiel #3
0
    def test_move_partition(self, create_partition):
        p10 = create_partition('t1', 0)
        p11 = create_partition('t1', 1)
        p20 = create_partition('t2', 0)
        b1 = create_broker('b1', [p10, p20, p11])
        b2 = create_broker('b2', [p10, p11])
        # 2 p1 replicas are in rg_source
        rg_source = ReplicationGroup('rg1', set([b1, b2]))
        b3 = create_broker('b3', [p10, p11])
        b4 = create_broker('b4', [p20])
        # 1 p1 replica is in rg_dest
        rg_dest = ReplicationGroup('rg2', set([b3, b4]))

        # Move partition p1 from rg1 to rg2
        rg_source.move_partition(rg_dest, p10)

        # partition-count of p1 for rg1 should be 1
        assert rg_source.count_replica(p10) == 1
        # partition-count of p1 for rg2 should be 2
        assert rg_dest.count_replica(p10) == 2
        # Rest of the partitions are untouched
        assert rg_source.count_replica(p20) == 1
        assert rg_dest.count_replica(p20) == 1
        assert rg_source.count_replica(p11) == 2
        assert rg_dest.count_replica(p11) == 1
Beispiel #4
0
    def test_move_partition(self, create_partition):
        p10 = create_partition('t1', 0)
        p11 = create_partition('t1', 1)
        p20 = create_partition('t2', 0)
        b1 = create_broker('b1', [p10, p20, p11])
        b2 = create_broker('b2', [p10, p11])
        # 2 p1 replicas are in rg_source
        rg_source = ReplicationGroup('rg1', set([b1, b2]))
        b3 = create_broker('b3', [p10, p11])
        b4 = create_broker('b4', [p20])
        # 1 p1 replica is in rg_dest
        rg_dest = ReplicationGroup('rg2', set([b3, b4]))

        # Move partition p1 from rg1 to rg2
        rg_source.move_partition(rg_dest, p10)

        # partition-count of p1 for rg1 should be 1
        assert rg_source.count_replica(p10) == 1
        # partition-count of p1 for rg2 should be 2
        assert rg_dest.count_replica(p10) == 2
        # Rest of the partitions are untouched
        assert rg_source.count_replica(p20) == 1
        assert rg_dest.count_replica(p20) == 1
        assert rg_source.count_replica(p11) == 2
        assert rg_dest.count_replica(p11) == 1