From 975ba136f85f0dc781c57db8c0696cf63bd9b628 Mon Sep 17 00:00:00 2001
From: Vadym Hlushko <vadymh@nvidia.com>
Date: Wed, 28 Sep 2022 09:25:24 +0300
Subject: [PATCH] [watermarkstat] Add new warning message for the
 'q_shared_multi' counters in case if they not in COUNTES_DB

Signed-off-by: Vadym Hlushko <vadymh@nvidia.com>
---
 scripts/watermarkstat | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/scripts/watermarkstat b/scripts/watermarkstat
index d9dc800c8d..ef5b8bc8cb 100755
--- a/scripts/watermarkstat
+++ b/scripts/watermarkstat
@@ -201,7 +201,7 @@ class Watermarkstat(object):
 
         return pg_index
 
-    def build_header(self, wm_type):
+    def build_header(self, wm_type, counter_type):
         if wm_type is None:
             print("Header info is not available!", file=sys.stderr)
             sys.exit(1)
@@ -220,8 +220,12 @@ class Watermarkstat(object):
                     min_idx = element_idx
 
         if min_idx == sys.maxsize:
-            print("Object map is empty!", file=sys.stderr)
-            sys.exit(1)
+            if counter_type != 'q_shared_multi':
+                print("Object map is empty!", file=sys.stderr)
+                sys.exit(1)
+            else:
+                print("Object map from the COUNTERS_DB is empty because the multicast queues are not configured in the CONFIG_DB!")
+                sys.exit(0)
 
         self.min_idx = min_idx
         self.header_list += ["{}{}".format(wm_type["header_prefix"], idx) for idx in range(self.min_idx, max_idx + 1)]
@@ -261,7 +265,7 @@ class Watermarkstat(object):
                     data = STATUS_NA
                 table.append((buf_pool, data))
         else:
-            self.build_header(type)
+            self.build_header(type, key)
             # Get stat for each port
             for port in natsorted(self.counter_port_name_map):
                 row_data = list()