From fdeb497c4206e51604c1129c59c3e54bc1434d32 Mon Sep 17 00:00:00 2001 From: ggaborg Date: Tue, 8 Nov 2022 17:14:25 +0200 Subject: [PATCH] DBZ-5782 constants --- .../server/redis/RedisStreamChangeConsumer.java | 13 +++++++++---- .../java/io/debezium/storage/redis/JedisClient.java | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/debezium-server/debezium-server-redis/src/main/java/io/debezium/server/redis/RedisStreamChangeConsumer.java b/debezium-server/debezium-server-redis/src/main/java/io/debezium/server/redis/RedisStreamChangeConsumer.java index eca7edb00..3f17aca79 100644 --- a/debezium-server/debezium-server-redis/src/main/java/io/debezium/server/redis/RedisStreamChangeConsumer.java +++ b/debezium-server/debezium-server-redis/src/main/java/io/debezium/server/redis/RedisStreamChangeConsumer.java @@ -70,7 +70,12 @@ public class RedisStreamChangeConsumer extends BaseChangeConsumer private static final String PROP_WAIT_TIMEOUT = PROP_PREFIX + "wait.timeout.ms"; private static final String PROP_WAIT_RETRY_ENABLED = PROP_PREFIX + "wait.retry.enabled"; private static final String PROP_WAIT_RETRY_DELAY = PROP_PREFIX + "wait.retry.delay.ms"; + + private static final int DEFAULT_MEMORY_THRESHOLD_PERCENTAGE = 85; private static final String PROP_MEMORY_THRESHOLD_PERCENTAGE = PROP_PREFIX + "memory.threshold.percentage"; + private static final String INFO_MEMORY = "memory"; + private static final String INFO_MEMORY_SECTION_MAXMEMORY = "maxmemory"; + private static final String INFO_MEMORY_SECTION_USEDMEMORY = "used_memory"; private static final String MESSAGE_FORMAT_COMPACT = "compact"; private static final String MESSAGE_FORMAT_EXTENDED = "extended"; @@ -134,7 +139,7 @@ else if (MESSAGE_FORMAT_COMPACT.equals(messageFormat)) { String.format("Property %s expects value one of '%s' or '%s'", PROP_MESSAGE_FORMAT, MESSAGE_FORMAT_EXTENDED, MESSAGE_FORMAT_COMPACT)); } - int memoryThreshold = config.getOptionalValue(PROP_MEMORY_THRESHOLD_PERCENTAGE, Integer.class).orElse(85); + int memoryThreshold = config.getOptionalValue(PROP_MEMORY_THRESHOLD_PERCENTAGE, Integer.class).orElse(DEFAULT_MEMORY_THRESHOLD_PERCENTAGE); if (memoryThreshold < 0 || memoryThreshold > 100) { throw new DebeziumException(String.format("Property %s should be between 0 and 100", PROP_MEMORY_THRESHOLD_PERCENTAGE)); } @@ -277,7 +282,7 @@ private boolean canHandleBatch() { } private boolean isMemoryOk(int memoryThreshold) { - String memory = client.info("memory"); + String memory = client.info(INFO_MEMORY); Map infoMemory = new HashMap<>(); try { IoUtil.readLines(new ByteArrayInputStream(memory.getBytes(StandardCharsets.UTF_8)), line -> { @@ -291,9 +296,9 @@ private boolean isMemoryOk(int memoryThreshold) { LOGGER.error("Cannot parse Redis info memory {}", memory, e); return true; } - long maxMemory = Long.parseLong(infoMemory.get("maxmemory")); + long maxMemory = Long.parseLong(infoMemory.get(INFO_MEMORY_SECTION_MAXMEMORY)); if (maxMemory > 0) { - long usedMemory = Long.parseLong(infoMemory.get("used_memory")); + long usedMemory = Long.parseLong(infoMemory.get(INFO_MEMORY_SECTION_USEDMEMORY)); long percentage = 100 * usedMemory / maxMemory; if (percentage >= memoryThreshold) { LOGGER.warn("Used memory percentage of {}% is higher than configured threshold of {}%", percentage, memoryThreshold); diff --git a/debezium-storage/debezium-storage-redis/src/main/java/io/debezium/storage/redis/JedisClient.java b/debezium-storage/debezium-storage-redis/src/main/java/io/debezium/storage/redis/JedisClient.java index 4f062a31d..2e73bee41 100644 --- a/debezium-storage/debezium-storage-redis/src/main/java/io/debezium/storage/redis/JedisClient.java +++ b/debezium-storage/debezium-storage-redis/src/main/java/io/debezium/storage/redis/JedisClient.java @@ -122,7 +122,7 @@ private R tryErrors(Supplier supplier) { @Override public String info(String section) { - return tryErrors(() -> jedis.info("memory")); + return tryErrors(() -> jedis.info(section)); } }