]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Comment regarding impossibility of a/synchronous delivery per topic
authorTerry Burton <tez@terryburton.co.uk>
Wed, 2 Apr 2025 23:53:17 +0000 (00:53 +0100)
committerMatthew Newton <matthew-git@newtoncomputing.co.uk>
Thu, 1 May 2025 15:57:42 +0000 (16:57 +0100)
src/modules/rlm_kafka/rlm_kafka.c

index 76737d0263392e850cdd3565d9b2bcdecd8ab751..8c1b1c5a5a1573b6371427cdd9b5008cbe7e9cd6 100644 (file)
@@ -103,6 +103,19 @@ static const CONF_PARSER stats_config[] = {
        CONF_PARSER_TERMINATOR
 };
 
+/*
+ *  It would be nice to have a/synchronous delivery be a property set for each
+ *  topic, but unfortunately this is not possible.
+ *
+ *  High-throughput asynchronous requires a sufficiently large linger.ms to
+ *  ensure batched message delivery.
+ *
+ *  Synchronous delivery requires linger.ms = 0 to avoid unnecessary delays.
+ *
+ *  However, linger.ms is a global property, and rd_kafka_flush() purges the
+ *  queue of all topics.
+ *
+ */
 static const CONF_PARSER module_config[] = {
        { "bootstrap-servers", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_kafka_t, bootstrap), NULL },
        { "topic", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_kafka_t, topic), NULL },