GitHub user jmandawg opened a pull request:
https://github.com/apache/camel/pull/1054
CAMEL-10087 Fix for kafka partitioner static initializer in OSGI env
Sorry missed this:
We need to put the same fix (setting classloader to null) for the Producer
as well. The kafka ProducerConfig has a static initializer that creates the
DefaultPartiioner by default no matter what.
Here is the kafka path:
Static initializer:
https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/producer/ProducerConfig.java#L293
Defines default partitioner:
https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/common/config/ConfigDef.java#L110
Creates default instance of partitioner
https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/common/config/ConfigDef.java#L663
Since this is a static it only gets call on the first reference to the
class, so it doesn't take into account what is passed in from the camel-kafka
producer.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jmandawg/camel CAMEL-10087-b
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/camel/pull/1054.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1054
----
commit 6c7ae2d4b8938ed60e2778536f7b92fa55cf1cff
Author: John Moon <[email protected]>
Date: 2016-06-29T18:44:55Z
Fix for kafka partitioner static initializer in OSGI env
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---