]
Barry LaFond commented on TEIIDDES-2897:
----------------------------------------
It appears the basic Teiid DDL Sequencer strips double-quotes off of identifiers. The
StandardDdlParser in Modeshape does the same thing.
So not sure how to fix this except to look for reserved words in the Parser and keep the
double-quotes in the AstNode OR we perform the reserved word check whenever we export from
MS or import as DDL via Modeshape.
Vertica Translator - Missing Quotes on Reserved Words.
------------------------------------------------------
Key: TEIIDDES-2897
URL:
https://issues.jboss.org/browse/TEIIDDES-2897
Project: Teiid Designer
Issue Type: Bug
Components: Import/Export
Reporter: Ted Jones
Attachments: firstError.txt
During import, the example in question, returns a column in the DDL that is
double-quoted.
Currently the DDL parsing (and/or Designer) is removing the double quotes. They need to
be preserved.
Previewing a Vertica table results in the following error:
10:46:53,873 WARN [org.teiid.RUNTIME] (teiid-async-threads - 1) TEIID50036 VDB
PREVIEW-7288da00-a070-45c9-9762-671d641ed431.1 model "rhel_iot_data" metadata
failed to load. Reason:TEIID30386 org.teiid.api.exception.query.QueryParserException:
TEIID31100 Parsing error: Encountered "'Integer'), [*]date[*] date
OPTIONS" at line 5, column 9.
Was expecting: "constraint" | "foreign" | "primary" |
"unique" | id: org.teiid.metadata.ParseException: TEIID30386
org.teiid.api.exception.query.QueryParserException: TEIID31100 Parsing error: Encountered
"'Integer'), [*]date[*] date OPTIONS" at line 5, column 9.
Was expecting: "constraint" | "foreign" | "primary" |
"unique" | id
at org.teiid.query.parser.QueryParser.parseDDL(QueryParser.java:472)
[teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
at org.teiid.metadata.MetadataFactory.parse(MetadataFactory.java:768)
[teiid-api-8.12.5.redhat-8.jar:8.12.5.redhat-8]
at
org.teiid.query.metadata.DDLMetadataRepository.loadMetadata(DDLMetadataRepository.java:40)
[teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
at
org.teiid.runtime.AbstractVDBDeployer$MetadataRepositoryWrapper.loadMetadata(AbstractVDBDeployer.java:84)
[teiid-runtime-8.12.5.redhat-8.jar:8.12.5.redhat-8]
at
org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
[teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
at org.teiid.jboss.VDBService$6.run(VDBService.java:395)
[teiid-jboss-integration-8.12.5.redhat-8.jar:8.12.5.redhat-8]
at org.teiid.jboss.VDBService$7.run(VDBService.java:446)
[teiid-jboss-integration-8.12.5.redhat-8.jar:8.12.5.redhat-8]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[rt.jar:1.8.0_65]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[rt.jar:1.8.0_65]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_65]
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Caused by: org.teiid.api.exception.query.QueryParserException: TEIID31100 Parsing error:
Encountered "'Integer'), [*]date[*] date OPTIONS" at line 5, column 9.
Was expecting: "constraint" | "foreign" | "primary" |
"unique" | id
at org.teiid.query.parser.QueryParser.convertParserException(QueryParser.java:214)
[teiid-engine-8.12.5.redhat-8.jar:8.12.5.redhat-8]
... 11 more