From 6e89b39df7119397031dd27062289527e68f772a Mon Sep 17 00:00:00 2001 From: stormliang Date: Tue, 9 Nov 2021 02:20:31 +0000 Subject: [PATCH 1/4] [flex counter] Flex counter threads consume too much CPU resources. #9202 Increase the interval up lmit from 30 seconds to 60 seconds --- counterpoll/main.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/counterpoll/main.py b/counterpoll/main.py index e04575d225..0146cdfd02 100644 --- a/counterpoll/main.py +++ b/counterpoll/main.py @@ -22,7 +22,7 @@ def queue(): """ Queue counter commands """ @queue.command() -@click.argument('poll_interval', type=click.IntRange(100, 30000)) +@click.argument('poll_interval', type=click.IntRange(100, 60000)) def interval(poll_interval): """ Set queue counter query interval """ configdb = ConfigDBConnector() @@ -56,7 +56,7 @@ def port(): """ Queue counter commands """ @port.command() -@click.argument('poll_interval', type=click.IntRange(100, 30000)) +@click.argument('poll_interval', type=click.IntRange(100, 60000)) def interval(poll_interval): """ Set queue counter query interval """ configdb = ConfigDBConnector() @@ -133,7 +133,7 @@ def pg_drop(ctx): ctx.obj.connect() @pg_drop.command() -@click.argument('poll_interval', type=click.IntRange(1000, 30000)) +@click.argument('poll_interval', type=click.IntRange(1000, 60000)) @click.pass_context def interval(ctx, poll_interval): """ @@ -203,7 +203,7 @@ def watermark(): """ Watermark counter commands """ @watermark.command() -@click.argument('poll_interval', type=click.IntRange(1000, 30000)) +@click.argument('poll_interval', type=click.IntRange(1000, 60000)) def interval(poll_interval): """ Set watermark counter query interval for both queue and PG watermarks """ configdb = ConfigDBConnector() @@ -247,7 +247,7 @@ def tunnel(): """ Tunnel counter commands """ @tunnel.command() -@click.argument('poll_interval', type=click.IntRange(100, 30000)) +@click.argument('poll_interval', type=click.IntRange(100, 60000)) def interval(poll_interval): """ Set tunnel counter query interval """ configdb = ConfigDBConnector() From 143dcbba660a0996f4af6eabf2b0e8c42a158736 Mon Sep 17 00:00:00 2001 From: stormliang Date: Wed, 17 Nov 2021 01:47:41 +0000 Subject: [PATCH 2/4] only modify the interval of watermark counter group --- counterpoll/main.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/counterpoll/main.py b/counterpoll/main.py index e04575d225..907c729700 100644 --- a/counterpoll/main.py +++ b/counterpoll/main.py @@ -203,9 +203,15 @@ def watermark(): """ Watermark counter commands """ @watermark.command() -@click.argument('poll_interval', type=click.IntRange(1000, 30000)) +@click.argument('poll_interval', type=click.IntRange(1000, 60000)) def interval(poll_interval): - """ Set watermark counter query interval for both queue and PG watermarks """ + """ + Set watermark counter query interval for both queue and PG watermarks + This counter group causes high CPU usage when polled, + increase the interval up limit to 60 seconds. + This is a short term solution and + should be changed once the performance is enhanced + """ configdb = ConfigDBConnector() configdb.connect() queue_wm_info = {} From 1e62e6561a92455b92db845fd59f84b3c7ed9ede Mon Sep 17 00:00:00 2001 From: stormliang Date: Wed, 17 Nov 2021 01:50:21 +0000 Subject: [PATCH 3/4] fix merge conflict --- counterpoll/main.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/counterpoll/main.py b/counterpoll/main.py index 9f172e98b3..907c729700 100644 --- a/counterpoll/main.py +++ b/counterpoll/main.py @@ -22,7 +22,7 @@ def queue(): """ Queue counter commands """ @queue.command() -@click.argument('poll_interval', type=click.IntRange(100, 60000)) +@click.argument('poll_interval', type=click.IntRange(100, 30000)) def interval(poll_interval): """ Set queue counter query interval """ configdb = ConfigDBConnector() @@ -56,7 +56,7 @@ def port(): """ Queue counter commands """ @port.command() -@click.argument('poll_interval', type=click.IntRange(100, 60000)) +@click.argument('poll_interval', type=click.IntRange(100, 30000)) def interval(poll_interval): """ Set queue counter query interval """ configdb = ConfigDBConnector() @@ -133,7 +133,7 @@ def pg_drop(ctx): ctx.obj.connect() @pg_drop.command() -@click.argument('poll_interval', type=click.IntRange(1000, 60000)) +@click.argument('poll_interval', type=click.IntRange(1000, 30000)) @click.pass_context def interval(ctx, poll_interval): """ @@ -253,7 +253,7 @@ def tunnel(): """ Tunnel counter commands """ @tunnel.command() -@click.argument('poll_interval', type=click.IntRange(100, 60000)) +@click.argument('poll_interval', type=click.IntRange(100, 30000)) def interval(poll_interval): """ Set tunnel counter query interval """ configdb = ConfigDBConnector() From 6c1911b1348b813c71e2c9ce045fffd56df00d82 Mon Sep 17 00:00:00 2001 From: stormliang Date: Wed, 17 Nov 2021 08:31:34 +0000 Subject: [PATCH 4/4] fix commit issue --- counterpoll/main.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/counterpoll/main.py b/counterpoll/main.py index 907c729700..737a96b171 100644 --- a/counterpoll/main.py +++ b/counterpoll/main.py @@ -205,13 +205,7 @@ def watermark(): @watermark.command() @click.argument('poll_interval', type=click.IntRange(1000, 60000)) def interval(poll_interval): - """ - Set watermark counter query interval for both queue and PG watermarks - This counter group causes high CPU usage when polled, - increase the interval up limit to 60 seconds. - This is a short term solution and - should be changed once the performance is enhanced - """ + """ Set watermark counter query interval for both queue and PG watermarks """ configdb = ConfigDBConnector() configdb.connect() queue_wm_info = {}