]
Steven Hawkins commented on TEIID-4730:
---------------------------------------
I should take a step back. The root problem is that NONE should mean that every VDB
maintains it's own materialization. It seems like we did not fully implement that
concept. So what's being talked about here include:
1. Implement NONE
2. Address an inherent issue with SCHEMA sharing - namely that it is not compatible with
VDB sharing / well encapsulated.
3. Try to simplify the settings, by effectively removing the notion of NONE and
automatically use the notion of SCHEMA sharing for importing vdbs. This has a couple of
issues - namely that if the user isn't explicitly aware that schema sharing is a
possibility then there could be collisions, but that's really the same problem as #2
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