[jira] [Created] (KAFKA-12259) Consolidated Status endpoint return 500 whe config provider can't find a config

2021-01-29 Thread Magesh kumar Nandakumar (Jira)
Magesh kumar Nandakumar created KAFKA-12259:
---

 Summary: Consolidated Status endpoint return 500 whe config 
provider can't find a config
 Key: KAFKA-12259
 URL: https://issues.apache.org/jira/browse/KAFKA-12259
 Project: Kafka
  Issue Type: Bug
Reporter: Magesh kumar Nandakumar


The consolidated connectors endpoint connectors?expand=status return a `500` 
error when any of the connector's has an exception from the config provider.  
[https://github.com/apache/kafka/blob/e9edf104866822d9e6c3b637ffbf338767b5bf27/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/AbstractHerder.java#L287]

 The status endpoint doesn't need the complete list of configs and just 
requires the Connector Class to infer if it's a `Source` or a `Sink`. The 
failed connector status should be returned as `Failed` instead of the endpoint 
returning a 500.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (KAFKA-8974) Sink Connectors can't handle topic list with whitespaces

2019-10-03 Thread Magesh kumar Nandakumar (Jira)
Magesh kumar Nandakumar created KAFKA-8974:
--

 Summary: Sink Connectors can't handle topic list with whitespaces
 Key: KAFKA-8974
 URL: https://issues.apache.org/jira/browse/KAFKA-8974
 Project: Kafka
  Issue Type: Bug
  Components: KafkaConnect
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


Sink connector allows the user to configure`topics` config which is a 
comma-separated list of topics. When the user inadvertently includes white 
spaces in the coman separated list like `topic1, topic2` the connector doesn't 
process `topic2` correctly. The fix is to trim the individual items before 
creating the consumer subscribption



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (KAFKA-8819) Plugin path for converters not working as intended

2019-08-19 Thread Magesh kumar Nandakumar (Jira)
Magesh kumar Nandakumar created KAFKA-8819:
--

 Summary: Plugin path for converters not working as intended
 Key: KAFKA-8819
 URL: https://issues.apache.org/jira/browse/KAFKA-8819
 Project: Kafka
  Issue Type: Bug
  Components: KafkaConnect
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


KafakConnect allows all plugins to be available via a plugin path mechanism. 
This allows for classpath isolation. This is not working as designed under the 
following circumstances for Converters

 

I have 2 directories under plugin path `connector1` and `connector2`. I intend 
to use AvroConverter and its available in both the plugin directories. Under 
these circumstances, the Worker attempts to create the Converter available in 
the plugin director first which should ideally be deterministic but it's not 
because of the following reasons:-

 

[https://github.com/apache/kafka/blob/aa4ba8eee8e6f52a9d80a98fb2530b5bcc1b9a11/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/Worker.java#L421]
 would lead to all configs of type Class to be loaded and this would mean that 
they are not loaded in the context of the connectors plugin loader. IIUC, the 
current loaded would be the DelegatingClassLoader . This would mean that the 
AvroConverter could potentially be loaded from connector2 plugin path while 
loading the class. This should be made deterministic as intended. Also, there 
could be instances where the Converter itself could potentially be using 
ServiceLoader and for that to work when the Converter is created & configured 
the current class loader should be set to the one corresponding to the 
converter.

 

 

 



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Created] (KAFKA-8352) Connect System Tests are failing with 404

2019-05-10 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-8352:
--

 Summary: Connect System Tests are failing with 404
 Key: KAFKA-8352
 URL: https://issues.apache.org/jira/browse/KAFKA-8352
 Project: Kafka
  Issue Type: Bug
  Components: KafkaConnect
Affects Versions: 2.3.0
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar
 Fix For: 2.3.0


[https://github.com/apache/kafka/pull/6651] modified the way how connect Rest 
Server was started. As a result, the connect system tests are failing with a 
404 error.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-8320) Connect Error handling is using the RetriableException from common package

2019-05-03 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-8320:
--

 Summary: Connect Error handling is using the RetriableException 
from common package
 Key: KAFKA-8320
 URL: https://issues.apache.org/jira/browse/KAFKA-8320
 Project: Kafka
  Issue Type: Bug
  Components: KafkaConnect
Affects Versions: 2.0.0
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


When a SourceConnector throws 

org.apache.kafka.connect.errors.RetriableException during the poll, connect 
runtime is supposed to ignore the error and retry per 
[https://cwiki.apache.org/confluence/display/KAFKA/KIP-298%3A+Error+Handling+in+Connect]
 . When the conenctors throw the execption its not handled gracefully. 

WorkerSourceTask is catching the execption from wrog package 
`org.apache.kafka.common.errors`. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-8312) Rest advertised name is required while setting the listener to 0.0.0.0

2019-05-01 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-8312:
--

 Summary: Rest advertised name is required while setting the 
listener to 0.0.0.0
 Key: KAFKA-8312
 URL: https://issues.apache.org/jira/browse/KAFKA-8312
 Project: Kafka
  Issue Type: Improvement
  Components: KafkaConnect
Affects Versions: 1.1.0
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


[https://cwiki.apache.org/confluence/display/KAFKA/KIP-208%3A+Add+SSL+support+to+Kafka+Connect+REST+interface]
 added the support for SSL and as part of it introduced a listener config. 
Prior to the change, one could specify not specify a `host.name` config and 
they would bind to default interface and this worked well for not requiring to 
configure the `rest.advertised.host.name` explicitly. If one has to use https 
they could still bind to default interface by not specifying the hostname but 
when you use 0.0.0.0 as the host in listeners, you are required to set the 
advertised.host.name explicitly. Connect framework can  either use 
InetAddress.getLocalHost().getCanonicalHostName() as the default value or use 
the above only when the listeners host is 0.0.0.0. This might be an useful 
improvement while configuring connectors to listen on all network interfaces.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-8265) Connect Client Config Override policy

2019-04-19 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-8265:
--

 Summary: Connect Client Config Override policy
 Key: KAFKA-8265
 URL: https://issues.apache.org/jira/browse/KAFKA-8265
 Project: Kafka
  Issue Type: New Feature
  Components: KafkaConnect
Reporter: Magesh kumar Nandakumar


Right now, each source connector and sink connector inherit their client 
configurations from the worker properties. Within the worker properties, all 
configurations that have a prefix of "producer." or "consumer." are applied to 
all source connectors and sink connectors respectively.

We should also provide connector-level overrides whereby connector properties 
that are prefixed with "producer." and "consumer." are used to feed into the 
producer and consumer clients embedded within source and sink connectors 
respectively. The prefixes will be removed via a String#substring() call, and 
the remainder of the connector property key will be used as the client 
configuration key. The value is fed directly to the client as the configuration 
value.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-7826) Connect Standalone System tests are failing

2019-01-15 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-7826:
--

 Summary: Connect Standalone System tests are failing
 Key: KAFKA-7826
 URL: https://issues.apache.org/jira/browse/KAFKA-7826
 Project: Kafka
  Issue Type: Bug
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


Connect standalone tests are failing since the rest servers are not started. 
The refactor done to add integration tests removed the rest start effectively 
affecting the standalone mode



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-7686) Remove PowerMock from Connect Tests

2018-11-28 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-7686:
--

 Summary: Remove PowerMock from Connect Tests
 Key: KAFKA-7686
 URL: https://issues.apache.org/jira/browse/KAFKA-7686
 Project: Kafka
  Issue Type: Task
  Components: KafkaConnect
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


Remove PowerMock from Connect Tests



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-7594) Make the time out for connect service to be dynamic

2018-11-05 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-7594:
--

 Summary: Make the time out for connect service to be dynamic
 Key: KAFKA-7594
 URL: https://issues.apache.org/jira/browse/KAFKA-7594
 Project: Kafka
  Issue Type: Test
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


Currently, the timeout for Connect service to be started in the ducktape tests 
are hardcoded at 60 sec. The proposal is to make it configurable via the 
service init. The default would still be 60 seconds. This will allow downstream 
connectors to pass their own timeout values.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-7551) Refactor to create both producer & consumer in Worker

2018-10-25 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-7551:
--

 Summary: Refactor to create both producer & consumer in Worker
 Key: KAFKA-7551
 URL: https://issues.apache.org/jira/browse/KAFKA-7551
 Project: Kafka
  Issue Type: Task
  Components: KafkaConnect
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar
 Fix For: 2.2.0


In distributed mode,  the producer is created in the Worker and the consumer is 
created in the WorkerSinkTask. The proposal is to refactor it so that both of 
them are created in Worker. This will not affect any functionality and is just 
a refactoring to make the code consistent.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-7068) ConfigTransformer doesn't handle null values

2018-06-17 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-7068:
--

 Summary: ConfigTransformer doesn't handle null values
 Key: KAFKA-7068
 URL: https://issues.apache.org/jira/browse/KAFKA-7068
 Project: Kafka
  Issue Type: Bug
  Components: KafkaConnect
Affects Versions: 2.0.0
Reporter: Magesh kumar Nandakumar
 Fix For: 2.0.0


ConfigTransformer fails with NPE when the input configs have keys with null 
values. This is a blocker for 2.0.0 since connectors configs can have null 
values.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-7067) ConnectRestApiTest fails assertion

2018-06-17 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-7067:
--

 Summary: ConnectRestApiTest fails assertion
 Key: KAFKA-7067
 URL: https://issues.apache.org/jira/browse/KAFKA-7067
 Project: Kafka
  Issue Type: Bug
  Components: KafkaConnect
Affects Versions: 2.0.0
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar
 Fix For: 2.0.0


ConnectRestApiTest fails assertion for the test_rest_api. The test needs to be 
updated to include the new configs added in 2.0 in the expected result.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-7039) DelegatingClassLoader creates plugin instance even if its not Versioned

2018-06-11 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-7039:
--

 Summary: DelegatingClassLoader creates plugin instance even if its 
not Versioned
 Key: KAFKA-7039
 URL: https://issues.apache.org/jira/browse/KAFKA-7039
 Project: Kafka
  Issue Type: Bug
  Components: KafkaConnect
Affects Versions: 2.0.0
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar
 Fix For: 2.0.0


The versioned interface was introduced as part of 
[KIP-285|https://cwiki.apache.org/confluence/display/KAFKA/KIP-285%3A+Connect+Rest+Extension+Plugin].
 DelegatingClassLoader is now attempting to create an instance of all the 
plugins, even if it's not required.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-6997) Kafka run class doesn't exclude test-sources jar

2018-06-05 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-6997:
--

 Summary: Kafka run class doesn't exclude test-sources jar
 Key: KAFKA-6997
 URL: https://issues.apache.org/jira/browse/KAFKA-6997
 Project: Kafka
  Issue Type: Improvement
  Components: KafkaConnect
Affects Versions: 2.0.0
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar
 Fix For: 2.0.0


kafka-run-class.sh has a flag INCLUDE_TEST_JAR. This doesn't exclude 
test-sources jar files when the flag is set to false. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-6991) Connect Rest Extension Plugin issue with Class Loader

2018-06-04 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-6991:
--

 Summary: Connect Rest Extension Plugin issue with Class Loader
 Key: KAFKA-6991
 URL: https://issues.apache.org/jira/browse/KAFKA-6991
 Project: Kafka
  Issue Type: Improvement
  Components: KafkaConnect
Affects Versions: 2.0.0
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar
 Fix For: 2.0.0


KAFKA-6776 implementation has 2 issues with the class loader.
 # If a RestExtension plugin is available in the classpath, then the plugin 
gets associated with all the plugin class loaders. This is happening because 
the Manifest resource is searched in the parent class loader as well by 
default. 
 # The class name associated with the plugin class loader is incorrect. It 
should be the implementation class instead of the interface.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Created] (KAFKA-6776) Connect Rest Extension Plugin

2018-04-10 Thread Magesh kumar Nandakumar (JIRA)
Magesh kumar Nandakumar created KAFKA-6776:
--

 Summary: Connect Rest Extension Plugin
 Key: KAFKA-6776
 URL: https://issues.apache.org/jira/browse/KAFKA-6776
 Project: Kafka
  Issue Type: Improvement
  Components: KafkaConnect
Reporter: Magesh kumar Nandakumar
Assignee: Magesh kumar Nandakumar


This covers the connect Rest extension plugin covered at KIP-285  
https://cwiki.apache.org/confluence/display/KAFKA/KIP+285+-+Connect+Rest+Extension+Plugin



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)