Skip to content

Commit bb0efa8

Browse files
Merge pull request #1007 from zhaoqin-github/perf2-pike-bug
Listener may be created with existing default pool
2 parents cd21628 + 63aa1be commit bb0efa8

1 file changed

Lines changed: 13 additions & 10 deletions

File tree

f5lbaasdriver/v2/bigip/driver_v2.py

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,6 @@ def get_db_listener():
237237
def _append_pools_monitors(self, context, service, pool):
238238

239239
if not pool:
240-
service['pools'] = []
241240
return
242241

243242
def get_db_pool():
@@ -269,11 +268,7 @@ def get_db_pool():
269268
)
270269

271270
LOG.debug("append pool %s", pool_dict)
272-
service['pools'] = [pool_dict]
273-
274-
# Place an empty member list as the initial value.
275-
# Append_members() can be called later to change this value.
276-
service['members'] = []
271+
service['pools'].append(pool_dict)
277272

278273
if not pool.healthmonitor:
279274
return
@@ -292,7 +287,7 @@ def get_db_healthmonitor():
292287
healthmonitor_dict['pool_id'] = pool.id
293288

294289
LOG.debug("append healthmonitor_dict %s", healthmonitor_dict)
295-
service['healthmonitors'] = [healthmonitor_dict]
290+
service['healthmonitors'].append(healthmonitor_dict)
296291

297292

298293
class LoadBalancerManager(EntityManager):
@@ -465,13 +460,21 @@ def create(self, context, listener):
465460
def append_listeners(context, loadbalancer, service):
466461
self._append_listeners(context, service, listener)
467462

463+
def append_pools_monitors(context, loadbalancer, service):
464+
if listener.default_pool:
465+
for pool in loadbalancer.pools:
466+
if pool.id == listener.default_pool.id:
467+
self._append_pools_monitors(context, service, pool)
468+
break
469+
468470
if cfg.CONF.f5_driver_perf_mode in (2, 3):
469-
# Listener does not have default pool or l7policies.
471+
# Listener may have default pool who are already created.
472+
# Utilize default behavior to append members
473+
# Listener does not have l7policies.
470474
self._call_rpc(
471475
context, lb, listener, 'create_listener',
472476
append_listeners=append_listeners,
473-
append_pools_monitors=lambda *args: None,
474-
append_members=lambda *args: None,
477+
append_pools_monitors=append_pools_monitors,
475478
append_l7policies_rules=lambda *args: None
476479
)
477480
else:

0 commit comments

Comments
 (0)