[teiid-issues] [JBoss JIRA] (TEIID-2094) Projecting node issue

Steven Hawkins (JIRA) jira-events at lists.jboss.org
Sun Jul 8 16:18:12 EDT 2012


     [ https://issues.jboss.org/browse/TEIID-2094?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins updated TEIID-2094:
----------------------------------

    Description: 
If a non-pushed source node (inline view) is located over a projecting node (windowfunctionproject, join, group, or a select node) the resulting construction of the projection/projection indexes will be incorrect or fail - as the input elements will not match the output elements that have been set to the views elements.  For example with the exception:

java.lang.AssertionError: ASSERTION FAILED: expected reference to be not null
	at org.teiid.core.util.Assertion.failed(Assertion.java:73)
	at org.teiid.core.util.Assertion.isNotNull(Assertion.java:100)
	at org.teiid.core.util.Assertion.isNotNull(Assertion.java:92)
	at org.teiid.query.processor.relational.RelationalNode.getProjectionIndexes(RelationalNode.java:371)
	at org.teiid.query.processor.relational.SelectNode.initialize(SelectNode.java:93)


Note that not all nodes should be the first child under a source.  For example, join/group should not appear there (typically it will be one of project/windowfunctionproject/limit/sort/unionall/select).  Other child nodes besides windowfunctionproject/select could have issues, since we are not specifically coding to use a different set of output vs. original elements such as with ProjectNode that holds elements and selectSymbols respectively.

  was:
If a non-pushed source node (inline view) is located over a projecting node (windowfunctionproject, join, group, or a select node) the resulting construction of the projection/projection indexes will be incorrect or fail - as the input elements will not match the output elements that have been set to the views elements.

Note that not all nodes should be the first child under a source.  For example, join/group should not appear there (typically it will be one of project/windowfunctionproject/limit/sort/unionall/select).  Other child nodes besides windowfunctionproject/select could have issues, since we are not specifically coding to use a different set of output vs. original elements such as with ProjectNode that holds elements and selectSymbols respectively.

       Priority: Major  (was: Critical)


Upon further review checked in a fix to just select nodes.  Also downgraded to major since it is more narrow in scope and would typically only happen in dependent join scenarios - otherwise the select would be under a project.  All other node types do not currently have issues, although the case of being a source child must be considered if accessing the node elements.
                
> Projecting node issue
> ---------------------
>
>                 Key: TEIID-2094
>                 URL: https://issues.jboss.org/browse/TEIID-2094
>             Project: Teiid
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: 6.0.0
>            Reporter: Steven Hawkins
>            Assignee: Steven Hawkins
>             Fix For: 8.1
>
>
> If a non-pushed source node (inline view) is located over a projecting node (windowfunctionproject, join, group, or a select node) the resulting construction of the projection/projection indexes will be incorrect or fail - as the input elements will not match the output elements that have been set to the views elements.  For example with the exception:
> java.lang.AssertionError: ASSERTION FAILED: expected reference to be not null
> 	at org.teiid.core.util.Assertion.failed(Assertion.java:73)
> 	at org.teiid.core.util.Assertion.isNotNull(Assertion.java:100)
> 	at org.teiid.core.util.Assertion.isNotNull(Assertion.java:92)
> 	at org.teiid.query.processor.relational.RelationalNode.getProjectionIndexes(RelationalNode.java:371)
> 	at org.teiid.query.processor.relational.SelectNode.initialize(SelectNode.java:93)
> Note that not all nodes should be the first child under a source.  For example, join/group should not appear there (typically it will be one of project/windowfunctionproject/limit/sort/unionall/select).  Other child nodes besides windowfunctionproject/select could have issues, since we are not specifically coding to use a different set of output vs. original elements such as with ProjectNode that holds elements and selectSymbols respectively.

--
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