[teiid-issues] [JBoss JIRA] (TEIID-1801) Async Event Processing: Reset and Re-run plan

Mark Addleman (Issue Comment Edited) (JIRA) jira-events at lists.jboss.org
Fri Nov 11 23:35:45 EST 2011


    [ https://issues.jboss.org/browse/TEIID-1801?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12642271#comment-12642271 ] 

Mark Addleman edited comment on TEIID-1801 at 11/11/11 11:33 PM:
-----------------------------------------------------------------

Suppose I have a query that does a left join between a constant data source and a streaming data source such as 
   SELECT constant.pkey, stream.b FROM constant LEFT JOIN stream ON constant.pkey=stream.fkey

In time period zero, constant.pkey is "abc" but stream.fkey produces nothing so the result set is naturally ("abc", null).  In time period one, stream.fkey produces "abc" and stream.b produces "123" but, since the constant data source is not streaming, it produces nothing.  Arguably, there are two possible correct behaviors:  Either produce ("abc", "123") or produce an empty result set.  Based on our discussions, I believe Teiid's behavior would be to produce the empty result set in time period one since the engine doesn't have a concept of constant.

Do I understand correctly?  Is there a large cost in supporting a "constantly" hint so I could express something like:
   SELECT constant.pkey, stream.b FROM /* constantly */ constant LEFT JOIN stream on constant.pkey=stream.fkey

The semantics would be to repeat the initial values from the constant data source every time the join is evaluated.
                
      was (Author: markaddleman):
    Suppose I have a query that does a left join between a constant data source and a streaming data source such as 
   SELECT constant.pkey, stream.b FROM constant LEFT JOIN stream ON constant.pkey=stream.fkey

In time period zero, constant.pkey is "abc" but stream.b produces nothing so the result set is naturally ("abc", null).  In time period one, stream.a produces "123" but, since the constant data source is not streaming, it produces nothing.  Arguably, there are two possible correct behaviors:  Either produce ("abc", "123") or produce an empty result set.  Based on our discussions, I believe Teiid's behavior would be to produce the empty result set in time period one since the engine doesn't have a concept of constant.

Do I understand correctly?  Is there a large cost in supporting a "constantly" hint so I could express something like:
   SELECT constant.pkey, stream.b FROM /* constantly */ constant LEFT JOIN stream on constant.pkey=stream.fkey

The semantics would be to repeat the initial values from the constant data source every time the join is evaluated.
                  
> Async Event Processing:  Reset and Re-run plan
> ----------------------------------------------
>
>                 Key: TEIID-1801
>                 URL: https://issues.jboss.org/browse/TEIID-1801
>             Project: Teiid
>          Issue Type: Feature Request
>            Reporter: Mark Addleman
>            Assignee: Steven Hawkins
>
> In order to processing a stream of events aggregated within a specified time window, the engine should provide some way of specifying the time period (analogous to a window), reset and re-rerun the plan for every time period.  There should also be an engine to translator callback indicating that the plan has been reset as opposed to closed.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the teiid-issues mailing list