[ 
https://issues.apache.org/jira/browse/KAFKA-14760?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17693389#comment-17693389
 ] 

Greg Harris commented on KAFKA-14760:
-------------------------------------

I opened a ticket for the above idea: KAFKA-14762, since it may be pursued 
separately. It may also require a KIP, since it would change the documentation 
about support for upgrades from 0.8.2.

In the meantime, I'll look into duplicating the class or patching the system 
tests to substitute 0.9.0.0 jars instead of the dev version jars.

> Move ThroughputThrottler, break connect-runtime dependency on tools
> -------------------------------------------------------------------
>
>                 Key: KAFKA-14760
>                 URL: https://issues.apache.org/jira/browse/KAFKA-14760
>             Project: Kafka
>          Issue Type: Task
>          Components: KafkaConnect, tools
>            Reporter: Greg Harris
>            Assignee: Greg Harris
>            Priority: Major
>
> Currently there is only one dependency on the `tools` module, 
> `connect-runtime`.
> This dependency is only for one class, the ThroughputThrottler. This class is 
> used by:
> 1. tools main ProducerPerformance
> 2. tools main VerifiableProducer
> 3. runtime main SchemaSourceConnector
> 4. runtime main VerifiableSourceConnector
> 5. runtime test MonitorableSourceConnector
> For KAFKA-14627, I want to be able to have `tools` (test) depend on 
> `connect-runtime` (test). This is because we are adding a connect-specific 
> command-line utility, and wish to re-use some of the existing connect test 
> infrastructure to unit test the new command-line utility. Unfortunately 
> naively adding this new dependency to tools causes a circular dependency that 
> prevents the project from building.
> Instead of refactoring the connect-specific test utilities out to a new 
> package that both runtime and tools can depend on, it appears to make more 
> sense to move the more generic `ThroughputThrottler` class into some common 
> package.
> This common package could be:
> 1. clients
> 2. server common
> 3. some other existing package which would be a new dependency for tools
> 4. a new package consisting of just the `ThroughputThrottler` class
> I'm not sure which one of these makes the most sense, and would appreciate 
> guidance on what would make the most sense for ownership and maintenance.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to