kafka-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gwen Shapira (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (KAFKA-1822) Add "echo" request
Date Mon, 22 Dec 2014 17:21:13 GMT

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

Gwen Shapira commented on KAFKA-1822:

Thanks for the headsup about Heartbeat, [~joestein].

I checked and it looks like:
1. Heartbeat doesn't have a handler yet in KafkaApis (i.e. actually using Heartbeat will result
in unknown API exception at the moment).
2. The good news is that once its implemented - there's no reason not to use it in brokers
as well. Brokers *are* consumers, after all.
3. However,it looks like the handler will have a pretty strong dependency on the controller
(based on the plan in: https://cwiki.apache.org/confluence/display/KAFKA/Kafka+0.9+Consumer+Rewrite+Design).

I'm looking for an event that will allow testing the SocketServer + RequestChannel + APIs
pretty much independently of anything else (since we are looking at multiple modifications
at these specific layers in the 0.9 timeframe).

> Add "echo" request
> ------------------
>                 Key: KAFKA-1822
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1822
>             Project: Kafka
>          Issue Type: Improvement
>          Components: core
>            Reporter: Gwen Shapira
>            Assignee: Gwen Shapira
>             Fix For: 0.8.3
> Currently there is no simple way to generate a request and validate we receive a response
without adding a lot of dependencies for the test.
> Kafka request classes have quite a few dependencies, so they are not really usable when
testing infrastructure components or clients.
> Generating a byte-array with meaningless request key id as it is done in SocketServerTest
results in unknown request exception that must be handled. 
> I suggest adding an EchoRequest, EchoResponse and EchoHandler. The Request will be the
usual header and a bytearray. The Response will be a response header and the same bytearray
echoed back.
> Should be useful for client developers and when testing infrastructure changes.

This message was sent by Atlassian JIRA

View raw message