[teiid-issues] [JBoss JIRA] (TEIID-5542) XMLTable path assumptions

Steven Hawkins (Jira) issues at jboss.org
Thu Nov 15 10:11:00 EST 2018


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

Steven Hawkins resolved TEIID-5542.
-----------------------------------
    Resolution: Done


It's a little easier to read prior to the downward reduction:

//root

{code}
  ancestor-or-self document-node()
    descendant element(Q{}root)
{code}

root()/root

{code}
  ancestor-or-self element()
    descendant element()
      childelement(Q{}root)
{code}

Note that the arc when using the root function is looking for an ancestor element - not specifically the document node - and then any descendant.  That is what is causing the path map filter to accept all elements.

So there were two choices for a fix here.  Either scan the path map arcs for something that looks like this and disable projection or attempt to repair (effectively trying to replace root()/ with //).  Or scan the expressions for the root function and disable projection.  The latter was simpler to implement.  So for now document projection will not be allowed when root() is used.



> XMLTable path assumptions
> -------------------------
>
>                 Key: TEIID-5542
>                 URL: https://issues.jboss.org/browse/TEIID-5542
>             Project: Teiid
>          Issue Type: Quality Risk
>          Components: Query Engine
>            Reporter: Steven Hawkins
>            Assignee: Steven Hawkins
>            Priority: Major
>             Fix For: 12.0
>
>
> By the spec, and for example with Postgresql, a column PATH that begins with / or // is not relative to the context item.  Teiid modeled its initial implementation on Oracle where that is the case.  For greater compliance we should add an option to change the handling to be spec compliant.



--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the teiid-issues mailing list