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

ASF GitHub Bot commented on BEAM-1407:
--------------------------------------

GitHub user XuMingmin opened a pull request:

    https://github.com/apache/beam/pull/2044

    [BEAM-1407] Support multiple Kafka client in KakaIO

    PR for *[Solution 3. Rewrite Consumer method call at runtime].* SpEL is 
used to hide the difference of Kafka client 0.9/0.10.
    
    Additional tests are listed below:
    * Kafka client 0.9.0.1
     1. Kafka9 -> Kafka9   [PASS]  *(means READ from Kafka9, then WRITE to 
Kafka9)*
     2. Kafka9 -> Kafka10  [PASS]
     3. Kafka10 -> Kafka9  [PASS]
     4. Kafka10 -> Kafka10 [PASS]
    * Kafka client 0.10.0, with/without external authentication implementation
     1. Kafka9 -> Kafka9   [FAIL]
     2. Kafka9 -> Kafka10  [FAIL]
     3. Kafka10 -> Kafka9  [FAIL]
     4. Kafka10 -> Kafka10 [PASS]
    
    *As Kakfa client 0.10 is not compatible with Kafka cluster 0.9, the 3 items 
are expected to fail.*   
    


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/XuMingmin/beam master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/beam/pull/2044.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 #2044
    
----
commit 7f6cc88604eae97b444b26adabf8ba4c0eb0f8fe
Author: XuMingmin <mmxu1...@gmail.com>
Date:   2017-02-09T21:36:39Z

    Merge pull request #1 from apache/master
    
    sync up code from apache/beam

commit e15b1cfb17058a6ee008ae54b980921b890ff36c
Author: mingmxu <ming...@ebay.com>
Date:   2017-02-18T07:11:19Z

    add SpEL to hide kafka client difference of 0.9/0.19

commit 57480b361b7f927bb8b6f3398070709b99eaa06c
Author: XuMingmin <mmxu1...@gmail.com>
Date:   2017-02-18T07:19:20Z

    Merge pull request #2 from apache/master
    
    pull latest code

commit fb3a8f137c9ce9ad42ce01973aa8a8776e15c082
Author: mingmxu <ming...@ebay.com>
Date:   2017-02-18T07:32:32Z

    document the change

----


> Support multiple Kafka client in KakaIO
> ---------------------------------------
>
>                 Key: BEAM-1407
>                 URL: https://issues.apache.org/jira/browse/BEAM-1407
>             Project: Beam
>          Issue Type: Improvement
>          Components: sdk-java-extensions
>            Reporter: Xu Mingmin
>            Assignee: Xu Mingmin
>
> enhance KafkaIO to work with Kafka client 0.9 and 0.10, (maybe 0.8 as well 
> ?), 
> 1). to fully leverage new features in each version, like external 
> authentication, timestamp in 0.10;
> 2). hide kafka API changed, to support steamless switch between different 
> cluster versions;
> Scope of change:
> 1). add an abstract API for Kafka Consumer in existing KafkaIO. By default 
> it's kafka 0.9 to keep compatible, with an option for extension;
> 2). Wrapped API for Kafka 0.10, with Kafka message timestamp support;
> 3). wrapped API for Kafka 0.8 (TBD);



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to