]
Barry LaFond resolved TEIIDDES-3107.
------------------------------------
Resolution: Done
Source model for file is not generated properly
-----------------------------------------------
Key: TEIIDDES-3107
URL:
https://issues.jboss.org/browse/TEIIDDES-3107
Project: Teiid Designer
Issue Type: Bug
Affects Versions: 11.1
Environment: Fedora
Reporter: Matej Kralik
Assignee: Barry LaFond
Priority: Blocker
Fix For: 11.1.1
Attachments: FlatFileProject.zip, productdata_data.csv
I generate source and view model from flat file. Preview data works fine. I create VDB
and test it. I use the same query ( _select * from
"ViewModelForFlatFile"."viewTable"_ ) as for the preview but it
failed.
Error:
{code:java}
org.teiid.runtime.client.TeiidClientException: java.lang.RuntimeException: Remote
org.teiid.core.TeiidProcessingException: TEIID30504 SourceModelForFlatFile: Inproper
results returned. Expected 5 columns, but was 2
{code}
Error log from a server:
{code:java}
17:16:30,075 ERROR [org.teiid.CONNECTOR] (Worker1_QueryProcessorQueue1) Connector worker
process failed for atomic-request=lOIYsaWz3vDW.0.3.0: java.lang.AssertionError: Inproper
results returned. Expected 5 columns, but was 2
at
org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleBatch(ConnectorWorkItem.java:439)
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.more(ConnectorWorkItem.java:236)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_121]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[rt.jar:1.8.0_121]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[rt.jar:1.8.0_121]
at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_121]
at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
at com.sun.proxy.$Proxy76.more(Unknown Source)
at
org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:309)
at
org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
at
org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_121]
at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:280)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
at
org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[rt.jar:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[rt.jar:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_121]
{code}
This issue is only when a flat file is local (because remote flat file uses another
function in the source model (invokeHttp)).
The same issue is with XML file.
We noticed that old designer generated ReusltSet for procedure *getTextFiles* in the
Source model with two parameters (file and filePath) but new designer generates ResultSet
with five parameters (file, filePath, lastModified, created, size). This may be a problem.