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>
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> <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 <+44%2020%208742%201600>
>
>       
>       +44 203 249 8448 <+44%2020%203249%208448>
>
>       
>       
>       E:      michal.borowie...@openbet.com 
> <mailto:michal.borowie...@openbet.com> <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/>
>
>       
>       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 
> thepostmas...@openbet.com <mailto:postmas...@openbet.com> 
> <postmas...@openbet.com> <mailto:postmas...@openbet.com> 
> <postmas...@openbet.com> <mailto:postmas...@openbet.com> 
> <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 <+44%2020%208742%201600>
>
>       
>       +44 203 249 8448 <+44%2020%203249%208448>
>
>       
>       
>       E:      michal.borowie...@openbet.com 
> <mailto:michal.borowie...@openbet.com> <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/>
>
>       
>       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 
> thepostmas...@openbet.com <mailto:postmas...@openbet.com> 
> <postmas...@openbet.com> <mailto:postmas...@openbet.com> 
> <postmas...@openbet.com> <mailto:postmas...@openbet.com> 
> <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 <+44%2020%208742%201600>
>
> +44 203 249 8448 <+44%2020%203249%208448>
>
>
>
> <halfcircle_tiny.gif> E:      michal.borowie...@openbet.com 
> <mailto:michal.borowie...@openbet.com> <michal.borowie...@openbet.com>
> <halfcircle_tiny.gif> W:      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 the 
> postmas...@openbet.com <mailto:postmas...@openbet.com> 
> <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%2020%208742%201600>
>
>       
>       +44 203 249 8448 <+44%2020%203249%208448>
>
>       
>       
>       E:      michal.borowie...@openbet.com
>       W:      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 
> thepostmas...@openbet.com <mailto:postmas...@openbet.com> 
> <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 <+44%2020%208742%201600>
>
>
> +44 203 249 8448 <+44%2020%203249%208448>
>
>
>
> E: michal.borowie...@openbet.com
> W: 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 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