Github user gyfora commented on the pull request:

    https://github.com/apache/flink/pull/2051#issuecomment-222606282
  
    I will gradually add some questions/comments as I go :)
    
    1. Do we really need a QueryableStateStream exposed in the API? As you said 
this is just a pretty basic sink that anyone can probably inline who knows 
Flink enough to use the States. And I am guessing looking inside other 
operators is probably the most interesting use-case for this new feature. 
    
    (2. If we decide to keep the QueryableStateStream could it be just 
implemented as a simple RichSink? stream.addSink(...) instead of adding another 
operator to the runtime layer)
    
     3. I think it would be great to make the KvStateClient somehow aware of 
the types, because passing keynamespace byte arrays will be confusing for users 
as they will have no idea what the namespace is. The namespaces are pretty 
internal to the system. Maybe we could allow users to register serializers for 
state ids in the KvStateClient so they would not need to manually pass byte 
arrays and they could work with the actual keys. Also if they don't want to 
specify the namespace, we could then serialize it with the VoidSerializer as it 
usually happens in the runtime in most cases.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to