Github user rtudoran commented on the issue:

    https://github.com/apache/flink/pull/4380
  
    @fhueske
    
    Hi, I saw your remark for "If a query specifies ORDER BY ... FETCH x ROWS 
ONLY, then the query must emit exactly x rows (given that the result has at 
least x rows) and not x rows for the same sort key"
    
    To some extend we had this discussion before when we started this topic. 
Yes - offset/fetch refer to global/absolute values - there must be 5 elements 
emitted overall if we have offset 1 and fetch 5. However, as you are saying it 
is not particularly useful if we enable this for the stream. Take 5 elements 
and then do not emit anything. This was the reason why the conclusion of the 
initial discussions on this topic was to have the mandatory orderby time...and 
then basically the restrictions of offset/fetch will re-apply for each 
timestamp. That was also the reason why we were retracting the previously 
emitted results and send the updated results.
    Hence if you want to write a sql query over the stream to take the top 5 
results based on some sort you would write
    
    Select * from stream1  Order by rowtime, field1 Limit 5
    ...this would  ensure that at moment 1 you get the top 5 results
    ...then at moment 2 you get an update that these 5 results are not relevant 
anymore (as time changed) and you get the top 5 results relevant at that moment.
    
    Please reconsider this. I think this is the behavior that we need (and the 
one we discussed that is compatible with SQL semantics ... and also relevant). 
Without this and just having a function that selects at some point x results 
and then does nothing (or skips y results and then nothing for the rest of the 
existence)...i do not see the relevance. While, with this syntax or some 
similar syntax...we would still need to support such functionality also via 
SQL. 
    



---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to