From f9864add77dc064eaba7536b87b2fdee91cc6599 Mon Sep 17 00:00:00 2001 From: bvarghese1 Date: Wed, 24 Aug 2022 12:54:04 -0700 Subject: [PATCH] minor: Update error message for retention config --- .../io/confluent/ksql/topic/TopicCreateInjector.java | 6 ++++-- .../confluent/ksql/topic/TopicCreateInjectorTest.java | 10 ++++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/ksqldb-engine/src/main/java/io/confluent/ksql/topic/TopicCreateInjector.java b/ksqldb-engine/src/main/java/io/confluent/ksql/topic/TopicCreateInjector.java index c283bd53d52f..f13be80fae2d 100644 --- a/ksqldb-engine/src/main/java/io/confluent/ksql/topic/TopicCreateInjector.java +++ b/ksqldb-engine/src/main/java/io/confluent/ksql/topic/TopicCreateInjector.java @@ -209,7 +209,9 @@ private void throwIfRetentionPresentForTable( ) { if (topicCleanUpPolicy.equals(TopicConfig.CLEANUP_POLICY_COMPACT) && retentionInMillis.isPresent()) { - throw new KsqlException("Invalid config variable in the WITH clause: RETENTION_MS"); + throw new KsqlException( + "Invalid config variable in the WITH clause: RETENTION_MS." + + " Non-windowed tables do not support retention."); } } @@ -246,7 +248,7 @@ private TopicProperties createTopic( config.putAll(additionalTopicConfigs); // Note: The retention.ms config has no effect if cleanup.policy=compact - // cleanup.policy=compact is set for topics that are backed by tables + // config is set for topics that are backed by tables if (topicCleanUpPolicy.equals(TopicConfig.CLEANUP_POLICY_COMPACT)) { config.remove(TopicConfig.RETENTION_MS_CONFIG); } diff --git a/ksqldb-engine/src/test/java/io/confluent/ksql/topic/TopicCreateInjectorTest.java b/ksqldb-engine/src/test/java/io/confluent/ksql/topic/TopicCreateInjectorTest.java index 46b598fb8bf3..c7322d4c0964 100644 --- a/ksqldb-engine/src/test/java/io/confluent/ksql/topic/TopicCreateInjectorTest.java +++ b/ksqldb-engine/src/test/java/io/confluent/ksql/topic/TopicCreateInjectorTest.java @@ -508,7 +508,10 @@ public void shouldThrowIfRetentionConfigPresentInCreateTable() { ); // Then: - assertThat(e.getMessage(), containsString("Invalid config variable in the WITH clause: RETENTION_MS")); + assertThat( + e.getMessage(), + containsString("Invalid config variable in the WITH clause: RETENTION_MS." + + " Non-windowed tables do not support retention.")); } @Test @@ -523,7 +526,10 @@ public void shouldThrowIfRetentionConfigPresentInCreateTableAs() { ); // Then: - assertThat(e.getMessage(), containsString("Invalid config variable in the WITH clause: RETENTION_MS")); + assertThat( + e.getMessage(), + containsString("Invalid config variable in the WITH clause: RETENTION_MS." + + " Non-windowed tables do not support retention.")); } private ConfiguredStatement givenStatement(final String sql) {