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> 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>
>>>>>>>
>>>>>>> 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/>     Michal 
>>>>>>> Borowiecki
>>>>>>> Senior Software Engineer L4
>>>>>>>         T:      +44 208 742 1600
>>>>>>>
>>>>>>>         
>>>>>>>         +44 203 249 8448
>>>>>>>
>>>>>>>         
>>>>>>>          
>>>>>>>         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
>>>>>>>
>>>>>> -- 
>>>>>> Signature
>>>>>> <http://www.openbet.com/> <http://www.openbet.com/>      Michal 
>>>>>> Borowiecki
>>>>>> Senior Software Engineer L4
>>>>>>  T:      +44 208 742 1600
>>>>>>
>>>>>>  
>>>>>>  +44 203 249 8448
>>>>>>
>>>>>>  
>>>>>>   
>>>>>>  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
>>>>>>
>>> -- 
>>> <obet_logo_tiny.gif> <http://www.openbet.com/>      Michal Borowiecki
>>> Senior Software Engineer L4
>>> <halfcircle_tiny.gif>       T:      +44 208 742 1600
>>>
>>>
>>> +44 203 249 8448
>>>
>>>
>>>  
>>> <halfcircle_tiny.gif>       E:      michal.borowie...@openbet.com 
>>> <mailto:michal.borowie...@openbet.com>
>>> <halfcircle_tiny.gif>       W:      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>
>>> 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
> 

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to