I think the discussion on Streams DSL refactoring will render this KIP obsolete.

I'll leave is as under discussion until something is agreed and then move it to discarded.

Cheers,

Michał


On 03/06/17 10:02, Michal Borowiecki wrote:

I agree maintaining backwards-compatibility here adds a lot of overhead.

I haven't so far found a way to reconcile these elegantly.

Whichever way we go it's better to take the pain sooner rather than later. Kafka 0.11.0.0 (through KAFKA-5045 <https://issues.apache.org/jira/browse/KAFKA-5045>/KIP-114) increased the surface affected by the lack of fully type-parametrised suppliers noticeably.

Cheers,

Michał


On 03/06/17 09:43, Damian Guy wrote:
Hmm, i guess this won't work due to adding the additional <K,V> to the StateStoreSupplier params on reduce, count, aggregate etc.

On Sat, 3 Jun 2017 at 09:06 Damian Guy <damian....@gmail.com <mailto:damian....@gmail.com>> wrote:

    Hi Michal,

    Thanks for the KIP - is there a way we can do this without having
    to introduce the new Typed.. Interfaces, overloaded methods etc?
    Is it possible that we just need to provide a couple of new
    methods on PersistentKeyValueFactory for windowed and
    sessionWindowed to return interfaces like you've introduced in
    TypedStores?
    I admit i haven't looked in much detail if that would work.

    My concern is that this is duplicating a bunch of code and
    increasing the surface area for what is minimal benefit. It is
    one of those cases where i'd love to not have to maintain
    backward compatibility.

    Thanks,
    Damian

    On Fri, 2 Jun 2017 at 08:20 Michal Borowiecki
    <michal.borowie...@openbet.com
    <mailto:michal.borowie...@openbet.com>> wrote:

        Thanks Matthias,

        I appreciate people are busy now preparing the 0.11 release.

        One thing I would also appreciate input on is perhaps a
        better name for the new TypedStores class, I just picked it
        quickly but don't really like it.

        Perhaps StateStores would make for a better name?

        Cheers,
        Michal


        On 02/06/17 07:18, Matthias J. Sax wrote:
        Thanks for the update Michal.

        I did skip over the PR. Looks good to me, as far as I can tell. Maybe
        Damian, Xavier, or Ismael can comment on this. Would be good to get
        confirmation that the change is backward compatible.


        -Matthias


        On 5/27/17 11:11 AM, Michal Borowiecki wrote:
        Hi all,

        I've updated the KIP to reflect the proposed backwards-compatible 
approach:

        
https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=69408481


        Given the vast area of APIs affected, I think the PR is easier to read
        than the code excerpts in the KIP itself:
        https://github.com/apache/kafka/pull/2992/files

        Thanks,
        Michał

        On 07/05/17 10:16, Eno Thereska wrote:
        I like this KIP in general and I agree it’s needed. Perhaps Damian can 
comment on the session store issue?

        Thanks
        Eno
        On May 6, 2017, at 10:32 PM, Michal 
Borowiecki<michal.borowie...@openbet.com>
        <mailto:michal.borowie...@openbet.com>  wrote:

        Hi Matthias,

        Agreed. I tried your proposal and indeed it would work.

        However, I think to maintain full backward compatibility we would also 
need to deprecate Stores.create() and leave it unchanged, while providing a new 
method that returns the more strongly typed Factories.

        ( This is because PersistentWindowFactory and PersistentSessionFactory cannot extend the existing 
PersistentKeyValueFactory interface, since their build() methods will be returning 
TypedStateStoreSupplier<WindowStore<K, V>> and TypedStateStoreSupplier<SessionStore<K, V>> 
respectively, which are NOT subclasses of TypedStateStoreSupplier<KeyValueStore<K, V>>. I do not see 
another way around it. Admittedly, my type covariance skills are rudimentary. Does anyone see a better way around 
this? )

        Since create() takes only the store name as argument, and I don't see 
what we could overload it with, the new method would need to have a different 
name.

        Alternatively, since create(String) is the only method in Stores, we 
could deprecate the entire class and provide a new one. That would be my 
preference. Any ideas what to call it?



        All comments and suggestions appreciated.



        Cheers,

        Michał


        On 04/05/17 21:48, Matthias J. Sax wrote:
        I had a quick look into this.

        With regard to backward compatibility, I think it would be required do
        introduce a new type `TypesStateStoreSupplier` (that extends
        `StateStoreSupplier`) and to overload all methods that take a
        `StateStoreSupplier` that accept the new type instead of the current 
one.

        This would allow `.build` to return a `TypedStateStoreSupplier` and
        thus, would not break any code. As least if I did not miss anything with
        regard to some magic of type inference using generics (I am not an
        expert in this field).


        -Matthias

        On 5/4/17 11:32 AM, Matthias J. Sax wrote:
        Did not have time to have a look. But backward compatibility is a must
        from my point of view.

        -Matthias


        On 5/4/17 12:56 AM, Michal Borowiecki wrote:
        Hello,

        I've updated the KIP with missing information.

        I would especially appreciate some comments on the compatibility aspects
        of this as the proposed change is not fully backwards-compatible.

        In the absence of comments I shall call for a vote in the next few days.

        Thanks,

        Michal


        On 30/04/17 23:11, Michal Borowiecki wrote:
        Hi community!

        I have just drafted KIP-147: Add missing type parameters to
        StateStoreSupplier factories and KGroupedStream/Table methods
        
<https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=69408481>
        <https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=69408481>  
<https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=69408481>
        
<https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=69408481>

        Please let me know if this a step in the right direction.

        All comments welcome.

        Thanks,
        Michal
-- Signature
        <http://www.openbet.com/> <http://www.openbet.com/>  
<http://www.openbet.com/> <http://www.openbet.com/>        Michal Borowiecki
        Senior Software Engineer L4
                T:      +44 208 742 1600 <tel:+44%2020%208742%201600>

                
                +44 203 249 8448 <tel:+44%2020%203249%208448>

                
                
                E:      michal.borowie...@openbet.com
        <mailto:michal.borowie...@openbet.com>  
<mailto:michal.borowie...@openbet.com>
        <mailto:michal.borowie...@openbet.com>
                W:      www.openbet.com <http://www.openbet.com>  <http://www.openbet.com/> 
<http://www.openbet.com/>  <http://www.openbet.com/> <http://www.openbet.com/>  
<http://www.openbet.com/> <http://www.openbet.com/>

                
                OpenBet Ltd

                Chiswick Park Building 9

                566 Chiswick High Rd

                London

                W4 5XT

                UK

                
        <https://www.openbet.com/email_promo>
        <https://www.openbet.com/email_promo>  
<https://www.openbet.com/email_promo>
        <https://www.openbet.com/email_promo>

        This message is confidential and intended only for the addressee. If
        you have received this message in error, please immediately notify the
        postmas...@openbet.com <mailto:postmas...@openbet.com>  
<mailto:postmas...@openbet.com>
        <mailto:postmas...@openbet.com>  <mailto:postmas...@openbet.com>
        <mailto:postmas...@openbet.com>  <mailto:postmas...@openbet.com>
        <mailto:postmas...@openbet.com>  and delete it
        from your system as well as any copies. The content of e-mails as well
        as traffic data may be monitored by OpenBet for employment and
        security purposes. To protect the environment please do not print this
        e-mail unless necessary. OpenBet Ltd. Registered Office: Chiswick Park
        Building 9, 566 Chiswick High Road, London, W4 5XT, United Kingdom. A
        company registered in England and Wales. Registered no. 3134634. VAT
        no. GB927523612

-- Signature
        <http://www.openbet.com/> <http://www.openbet.com/>  
<http://www.openbet.com/> <http://www.openbet.com/>        Michal Borowiecki
        Senior Software Engineer L4
                T:      +44 208 742 1600 <tel:+44%2020%208742%201600>

                
                +44 203 249 8448 <tel:+44%2020%203249%208448>

                
                
                E:      michal.borowie...@openbet.com
        <mailto:michal.borowie...@openbet.com>  
<mailto:michal.borowie...@openbet.com>
        <mailto:michal.borowie...@openbet.com>
                W:      www.openbet.com <http://www.openbet.com>  <http://www.openbet.com/> 
<http://www.openbet.com/>  <http://www.openbet.com/> <http://www.openbet.com/>  
<http://www.openbet.com/> <http://www.openbet.com/>

                
                OpenBet Ltd

                Chiswick Park Building 9

                566 Chiswick High Rd

                London

                W4 5XT

                UK

                
        <https://www.openbet.com/email_promo>
        <https://www.openbet.com/email_promo>  
<https://www.openbet.com/email_promo>
        <https://www.openbet.com/email_promo>

        This message is confidential and intended only for the addressee. If you
        have received this message in error, please immediately notify the
        postmas...@openbet.com <mailto:postmas...@openbet.com>  
<mailto:postmas...@openbet.com>
        <mailto:postmas...@openbet.com>  <mailto:postmas...@openbet.com>
        <mailto:postmas...@openbet.com>  <mailto:postmas...@openbet.com>
        <mailto:postmas...@openbet.com>  and delete it
        from your system as well as any copies. The content of e-mails as well
        as traffic data may be monitored by OpenBet for employment and security
        purposes. To protect the environment please do not print this e-mail
        unless necessary. OpenBet Ltd. Registered Office: Chiswick Park Building
        9, 566 Chiswick High Road, London, W4 5XT, United Kingdom. A company
        registered in England and Wales. Registered no. 3134634. VAT no.
        GB927523612

-- <obet_logo_tiny.gif><http://www.openbet.com/> <http://www.openbet.com/> Michal Borowiecki
        Senior Software Engineer L4
        <halfcircle_tiny.gif>     T:      +44 208 742 1600 
<tel:+44%2020%208742%201600>


        +44 203 249 8448 <tel:+44%2020%203249%208448>


<halfcircle_tiny.gif> E: michal.borowie...@openbet.com
        <mailto:michal.borowie...@openbet.com>  
<mailto:michal.borowie...@openbet.com>
        <mailto:michal.borowie...@openbet.com>
        <halfcircle_tiny.gif>     W:      www.openbet.com <http://www.openbet.com>  
<http://www.openbet.com/> <http://www.openbet.com/> 
        <halfcircle_tiny.gif>     OpenBet Ltd

        Chiswick Park Building 9

        566 Chiswick High Rd

        London

        W4 5XT

        UK

        <sig_promo_img.gif><https://www.openbet.com/email_promo>
        <https://www.openbet.com/email_promo>
        This message is confidential and intended only for the addressee. If you have 
received this message in error, please immediately notify thepostmas...@openbet.com 
<mailto:postmas...@openbet.com>  <mailto:postmas...@openbet.com>
        <mailto:postmas...@openbet.com>  and delete it from your system as well 
as any copies. The content of e-mails as well as traffic data may be monitored by 
OpenBet for employment and security purposes. To protect the environment please do 
not print this e-mail unless necessary. OpenBet Ltd. Registered Office: Chiswick Park 
Building 9, 566 Chiswick High Road, London, W4 5XT, United Kingdom. A company 
registered in England and Wales. Registered no. 3134634. VAT no. GB927523612
-- Signature
        <http://www.openbet.com/> <http://www.openbet.com/>         Michal 
Borowiecki
        Senior Software Engineer L4
                T:      +44 208 742 1600 <tel:+44%2020%208742%201600>

                
                +44 203 249 8448 <tel:+44%2020%203249%208448>

                
                
                E:      michal.borowie...@openbet.com
        <mailto:michal.borowie...@openbet.com>
                W:      www.openbet.com <http://www.openbet.com>  
<http://www.openbet.com/> <http://www.openbet.com/>

                
                OpenBet Ltd

                Chiswick Park Building 9

                566 Chiswick High Rd

                London

                W4 5XT

                UK

                
        <https://www.openbet.com/email_promo>
        <https://www.openbet.com/email_promo>

        This message is confidential and intended only for the addressee. If you
        have received this message in error, please immediately notify the
        postmas...@openbet.com <mailto:postmas...@openbet.com>  
<mailto:postmas...@openbet.com> <mailto:postmas...@openbet.com>  and delete it
        from your system as well as any copies. The content of e-mails as well
        as traffic data may be monitored by OpenBet for employment and security
        purposes. To protect the environment please do not print this e-mail
        unless necessary. OpenBet Ltd. Registered Office: Chiswick Park Building
        9, 566 Chiswick High Road, London, W4 5XT, United Kingdom. A company
        registered in England and Wales. Registered no. 3134634. VAT no.
        GB927523612


-- <http://www.openbet.com/> Michal Borowiecki
        Senior Software Engineer L4
                T:      +44 208 742 1600 <tel:+44%2020%208742%201600>

                
                +44 203 249 8448 <tel:+44%2020%203249%208448>

                
                
                E:      michal.borowie...@openbet.com
        <mailto:michal.borowie...@openbet.com>
                W:      www.openbet.com <http://www.openbet.com/>

                
                OpenBet Ltd

                Chiswick Park Building 9

                566 Chiswick High Rd

                London

                W4 5XT

                UK

                
        <https://www.openbet.com/email_promo>

        This message is confidential and intended only for the
        addressee. If you have received this message in error, please
        immediately notify the postmas...@openbet.com
        <mailto:postmas...@openbet.com> and delete it from your
        system as well as any copies. The content of e-mails as well
        as traffic data may be monitored by OpenBet for employment
        and security purposes. To protect the environment please do
        not print this e-mail unless necessary. OpenBet Ltd.
        Registered Office: Chiswick Park Building 9, 566 Chiswick
        High Road, London, W4 5XT, United Kingdom. A company
        registered in England and Wales. Registered no. 3134634. VAT
        no. GB927523612


--
Signature
<http://www.openbet.com/>         Michal Borowiecki
Senior Software Engineer L4
        T:      +44 208 742 1600

        
        +44 203 249 8448

        
        
        E:      michal.borowie...@openbet.com
        W:      www.openbet.com <http://www.openbet.com/>

        
        OpenBet Ltd

        Chiswick Park Building 9

        566 Chiswick High Rd

        London

        W4 5XT

        UK

        
<https://www.openbet.com/email_promo>

This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmas...@openbet.com <mailto:postmas...@openbet.com> and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by OpenBet for employment and security purposes. To protect the environment please do not print this e-mail unless necessary. OpenBet Ltd. Registered Office: Chiswick Park Building 9, 566 Chiswick High Road, London, W4 5XT, United Kingdom. A company registered in England and Wales. Registered no. 3134634. VAT no. GB927523612


--
Signature
<http://www.openbet.com/>         Michal Borowiecki
Senior Software Engineer L4
        T:      +44 208 742 1600

        
        +44 203 249 8448

        
        
        E:      michal.borowie...@openbet.com
        W:      www.openbet.com <http://www.openbet.com/>

        
        OpenBet Ltd

        Chiswick Park Building 9

        566 Chiswick High Rd

        London

        W4 5XT

        UK

        
<https://www.openbet.com/email_promo>

This message is confidential and intended only for the addressee. If you have received this message in error, please immediately notify the postmas...@openbet.com <mailto:postmas...@openbet.com> and delete it from your system as well as any copies. The content of e-mails as well as traffic data may be monitored by OpenBet for employment and security purposes. To protect the environment please do not print this e-mail unless necessary. OpenBet Ltd. Registered Office: Chiswick Park Building 9, 566 Chiswick High Road, London, W4 5XT, United Kingdom. A company registered in England and Wales. Registered no. 3134634. VAT no. GB927523612

Reply via email to