goutamadwant commented on code in PR #19202:
URL: https://github.com/apache/pinot/pull/19202#discussion_r3755324560
##########
pinot-plugins/pinot-stream-ingestion/pinot-kafka-3.0/src/main/java/org/apache/pinot/plugin/stream/kafka30/KafkaPartitionLevelConnectionHandler.java:
##########
@@ -98,16 +99,18 @@ private Properties buildProperties(StreamConfig
streamConfig) {
return consumerProp;
}
- /// Filter properties to only include the specified Kafka configurations.
- /// This prevents "was supplied but isn't a known config" warnings from
Kafka clients.
+ /// Filter properties to include the specified Kafka configurations and the
dynamic config-provider namespace.
+ /// This prevents "was supplied but isn't a known config" warnings without
dropping config-provider settings.
///
/// @param props The properties to filter
/// @param validConfigNames The set of valid configuration names for the
target Kafka client
/// @return A new Properties object containing only the valid configurations
- private Properties filterKafkaProperties(Properties props, Set<String>
validConfigNames) {
+ @VisibleForTesting
+ static Properties filterKafkaProperties(Properties props, Set<String>
validConfigNames) {
Properties filteredProps = new Properties();
for (String key : props.stringPropertyNames()) {
- if (validConfigNames.contains(key)) {
+ if (validConfigNames.contains(key) ||
key.equals(AbstractConfig.CONFIG_PROVIDERS_CONFIG)
+ || key.startsWith(AbstractConfig.CONFIG_PROVIDERS_CONFIG + ".")) {
Review Comment:
@xiangfu0 Addressed in code and documentation. A referenced
`FileConfigProvider` now requires a non-empty
`config.providers.<alias>.param.allowed.paths`. The companion docs also require
a narrow path, the JVM provider-class allowlist, consistent mounts on
controllers and servers, and trusted table-config writers.
I kept cluster-controlled root policy separate because table-level
`allowed.paths` is useful defense in depth but is not a hard multi-tenant
boundary. Docs compare:
https://github.com/pinot-contrib/pinot-docs/compare/latest...goutamadwant:pinot-docs:support-kafka-config-providers-docs?expand=1
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]