[teiid-issues] [JBoss JIRA] (TEIID-4730) Problem with Import VDB with Materialized View (external)

Steven Hawkins (JIRA) issues at jboss.org
Fri Feb 3 08:01:00 EST 2017


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

Steven Hawkins commented on TEIID-4730:
---------------------------------------

> So, let's redo on those terms

Yes, that is what I'm trying to do.  That's why I'm avoiding using the old terms as they conceptually don't work well.

> Obviously my patch was to ignore scoping in import case (X.2) and follow SCHEMA scope all the way, Now how does this need to map to none, shared, fully-shared strategy?

To clarify the issues as I see them:

||Scope||X.1||Y.1||X.2||Comment||
|None|A-own|C-own|A-own,B-own,C-own|Not fully implemented|
|VDB|A-own|C-own|A-Shared from/ X.1,B-own,C-own|Does not make sense from a user perspective to share across versions, but not importing.  Also not fully implemented as multiple entries for the same materialization can be created in the status table|
|SCHEMA|A-own|C-own|A-Shared from/ X.1,B-own,C-Shared from/Y.1|Breaks vdb encapsulation and also not fully implemented as multiple entries for the same materialization can be created in the status table|

So instead I'm proposing:

- to fully implement NONE or if we see that as a corner case for now, then to not offer that feature.
- schema sharing maps to "fully shared" - but it would be implemented so that it is vdb encapsulated and there is only 1 materialized table entry in the status table.
- shared by name/version doesn't quite conceptually match up to VDB sharing, but it addresses the deficiency with VDB sharing when importing

> Problem with Import VDB with Materialized View (external)
> ---------------------------------------------------------
>
>                 Key: TEIID-4730
>                 URL: https://issues.jboss.org/browse/TEIID-4730
>             Project: Teiid
>          Issue Type: Bug
>          Components: Common
>    Affects Versions: 9.1.2
>         Environment: * Teiid 9.1.2
> * CentOs 7
> * WildFly 10
>            Reporter: Pedro Inácio
>            Assignee: Ramesh Reddy
>              Labels: CR1
>             Fix For: 9.2
>
>         Attachments: externalMaterializationOrderProblem-vdb.xml, numberingPlan-vdb.xml
>
>
> Having defined a VDB which contains a Model that has External Materialization, when importing this VDB into another that also uses External Materialization, Teiid Server is searching in the wrong place for the view status.
> Example:
> ..
> <import-vdb name="CountryServiceListVDB" version="1" import-data-policies="true"/>
> ...
> <model name="MyView" type="VIRTUAL">
> ...
> 				SELECT cns,
> 					country_code
> 				FROM NumberingPlan.numbering_plan;
> ....
> 		</metadata>
> 	</model>
> *NumberingPlan.numbering_plan is defined in the imported VDB, and is also Materialized.*
> *Warning in Logs: *
> 17:51:45,161 WARN  [org.teiid.MATVIEWS] (Worker8_QueryProcessorQueue10653) n9M6de3y5xHM org.teiid.jdbc.TeiidSQLException: TEIID30328 Unable to evaluate (SELECT mvstatus('NumberingPlan', 'numbering_plan', Valid, LoadState, 'THROW_EXCEPTION') FROM (SELECT 1) AS x LEFT OUTER JOIN NumberingPlanMaterialized.status ON VDBName = 'ExternalMaterializationOrderProblem' AND VDBVersion = '1' AND SchemaName = 'NumberingPlan' AND Name = 'numbering_plan' LIMIT 2): TEIID30328 Unable to evaluate mvstatus('NumberingPlan', 'numbering_plan', Valid, LoadState, 'THROW_EXCEPTION'): TEIID30384 Error while evaluating function mvstatus



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)



More information about the teiid-issues mailing list