@@ -578,82 +578,23 @@ def get_non_host_dbs(dbs):
578
578
else :
579
579
return dbs [1 :]
580
580
581
-
582
- @staticmethod
583
- def init_namespace_sync_d_interface_tables (dbs ):
584
- if_name_map = {}
585
- if_alias_map = {}
586
- if_id_map = {}
587
- oid_sai_map = {}
588
- oid_name_map = {}
589
-
590
- """
591
- all_ns_db - will have db_conn to all namespace DBs and
592
- global db. First db in the list is global db.
593
- Ignore first global db to get interface tables if there
594
- are multiple namespaces.
595
- """
596
- Namespace .connect_namespace_dbs (dbs )
597
- for db_conn in Namespace .get_non_host_dbs (dbs ):
598
- if_name_map_ns , \
599
- if_alias_map_ns , \
600
- if_id_map_ns , \
601
- oid_sai_map_ns , \
602
- oid_name_map_ns = init_sync_d_interface_tables (db_conn )
603
- if_name_map .update (if_name_map_ns )
604
- if_alias_map .update (if_alias_map_ns )
605
- if_id_map .update (if_id_map_ns )
606
- oid_sai_map .update (oid_sai_map_ns )
607
- oid_name_map .update (oid_name_map_ns )
608
-
609
- return if_name_map , if_alias_map , if_id_map , oid_sai_map , oid_name_map
610
-
611
581
@staticmethod
612
- def init_namespace_sync_d_lag_tables (dbs ):
613
-
614
- lag_name_if_name_map = {}
615
- if_name_lag_name_map = {}
616
- oid_lag_name_map = {}
617
-
618
- """
619
- all_ns_db - will have db_conn to all namespace DBs and
620
- global db. First db in the list is global db.
621
- Ignore first global db to get lag tables if
622
- there are multiple namespaces.
623
- """
624
- Namespace .connect_namespace_dbs (dbs )
625
- for db_conn in Namespace .get_non_host_dbs (dbs ):
626
- lag_name_if_name_map_ns , \
627
- if_name_lag_name_map_ns , \
628
- oid_lag_name_map_ns = init_sync_d_lag_tables (db_conn )
629
- lag_name_if_name_map .update (lag_name_if_name_map_ns )
630
- if_name_lag_name_map .update (if_name_lag_name_map_ns )
631
- oid_lag_name_map .update (oid_lag_name_map_ns )
632
-
633
- return lag_name_if_name_map , if_name_lag_name_map , oid_lag_name_map
634
-
635
- @staticmethod
636
- def init_namespace_sync_d_queue_tables (dbs ):
637
- port_queues_map = {}
638
- queue_stat_map = {}
639
- port_queue_list_map = {}
640
-
641
- """
642
- all_ns_db - will have db_conn to all namespace DBs and
643
- global db. First db in the list is global db.
644
- Ignore first global db to get queue tables if there
645
- are multiple namespaces.
646
- """
647
- Namespace .connect_namespace_dbs (dbs )
582
+ def get_sync_d_from_all_namespace (per_namespace_func , dbs ):
583
+ # return merged tuple of dictionaries retrieved from per
584
+ # namespace functions.
585
+ result_map = {}
586
+ # list of return values
587
+ result_list = []
648
588
for db_conn in Namespace .get_non_host_dbs (dbs ):
649
- port_queues_map_ns , \
650
- queue_stat_map_ns , \
651
- port_queue_list_map_ns = init_sync_d_queue_tables (db_conn )
652
- port_queues_map .update (port_queues_map_ns )
653
- queue_stat_map .update (queue_stat_map_ns )
654
- port_queue_list_map .update (port_queue_list_map_ns )
655
-
656
- return port_queues_map , queue_stat_map , port_queue_list_map
589
+ ns_tuple = per_namespace_func (db_conn )
590
+ for idx in range (len (ns_tuple )):
591
+ if idx not in result_map :
592
+ result_map [idx ] = ns_tuple [idx ]
593
+ else :
594
+ result_map [idx ].update (ns_tuple [idx ])
595
+ for idx , ns_tuple_dict in result_map .items ():
596
+ result_list .append (ns_tuple_dict )
597
+ return result_list
657
598
658
599
@staticmethod
659
600
def dbs_get_bridge_port_map (dbs , db_name ):
0 commit comments