Forum Discussion

m9maganti_36891's avatar
m9maganti_36891
Icon for Nimbostratus rankNimbostratus
Sep 04, 2018

Error while updating GTM pool member ratio

Hi,

Pool Member update function is failing when updating ratio. Member has ratio inside it. When I give member.ratio it returns proper ratio value but while updating it behave unexpectedly. Am I missing something? Is there any other way we can modify pool member ratio? I have tried updating ratio using below concept:

Fetch members from pool

def fetch_datacenter_state(pools, pool_name, datacenter_name):

for pool in pools:
    if (pool.name == pool_name):
        print ("Testing Datacenter %s...") % (datacenter_name)
        for member in pool.members_s.get_collection():
            if (member.name == datacenter_name):
                print ("Ration before update: %s") % (member.ratio)
                help(member.update)
                member.update(ratio=10)
                print ("Ration after update: %s") % (member.ratio)

File "/usr/local/lib/python2.7/copy.py", line 257, in _deepcopy_dict y[deepcopy(key, memo)] = deepcopy(value, memo) File "/usr/local/lib/python2.7/copy.py", line 182, in deepcopy rv = reductor(2)

TypeError: can't pickle getset_descriptor objects Result: 1

  • After some investigation I found that replacing

    member.update(ratio=10)
    to
    member.modify(ratio=10)
    solves the problem.