krishvishal opened a new issue, #4509:
URL: https://github.com/apache/iggy/issues/4509

   Follow-up to #3546. #4398 says this comes in a later pull request.
   
   ## Summary
   
   IncrementalAlterConfigs (44) is not served and is not advertised. Kafka 4.0 
removed `Admin.alterConfigs`, and `kafka-configs --alter` sends key 44 only. A 
Java 4.x client or tool therefore cannot change any topic configuration through 
the gateway. The Java client and librdkafka fail locally, because the key is 
not advertised. They do not fall back to AlterConfigs (33).
   
   Who hits it:
   
   - `kafka-configs --alter` from Kafka 4.x, and Java 4.x 
`Admin.incrementalAlterConfigs`.
   - ksqlDB, which alters its command topic at startup.
   - MirrorMaker 2 into the gateway, which syncs topic configurations with key 
44. Its source connector goes `FAILED`.
   - kafka-ui, which picks its alter API from the broker version.
   
   ## Depends on
   
   - #4508 for keys other than `retention.ms`
   
   ## Scope
   
   - [ ] IncrementalAlterConfigs v0-1 for topic resources, with `SET`, 
`DELETE`, `APPEND` and `SUBTRACT` as Kafka defines them
   - [ ] The same validation as AlterConfigs. With SASL on, the same 
`manage_topics` test
   - [ ] `validate_only` runs every check and writes nothing
   - [ ] Advertise the key, and update `gateways/kafka/docs/CONFIGS.md`
   
   ## Acceptance criteria
   
   - [ ] `kafka-configs --alter --add-config retention.ms=...` from Kafka 4.x 
changes the topic, and a describe shows the new value
   - [ ] MirrorMaker 2 syncs topic configurations into the gateway, and its 
connector stays `RUNNING`
   
   ## References
   
   - Kafka 4.0 removes `Admin.alterConfigs`: 
[upgrade.md:358](https://github.com/apache/kafka/blob/b15258c7398889248d7fbf2a2218cc01346ebf92/docs/getting-started/upgrade.md#L358)
   - `kafka-configs` uses `incrementalAlterConfigs` only: 
[ConfigCommand.java:604-611](https://github.com/apache/kafka/blob/b15258c7398889248d7fbf2a2218cc01346ebf92/tools/src/main/java/org/apache/kafka/tools/ConfigCommand.java#L604-L611)
   - MirrorMaker 2: 
[MirrorSourceConnector.java:598-633](https://github.com/apache/kafka/blob/b15258c7398889248d7fbf2a2218cc01346ebf92/connect/mirror/src/main/java/org/apache/kafka/connect/mirror/MirrorSourceConnector.java#L598-L633)
   - ksqlDB: 
[KsqlInternalTopicUtils.java](https://github.com/confluentinc/ksql/blob/b665cf557f9bd29985cc52dc087271f256d36e1d/ksqldb-rest-app/src/main/java/io/confluent/ksql/rest/util/KsqlInternalTopicUtils.java)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to