[JBoss JIRA] (TEIID-5969) The "already removed" exception in case of copyLobs=true translator property for MSSQL
by Dmitrii Pogorelov (Jira)
[ https://issues.redhat.com/browse/TEIID-5969?page=com.atlassian.jira.plugi... ]
Dmitrii Pogorelov commented on TEIID-5969:
------------------------------------------
[~shawkins] thx a lot for the quick fix, I've already merged your changes. It helped to solve the "already removed" problem.
> The "already removed" exception in case of copyLobs=true translator property for MSSQL
> --------------------------------------------------------------------------------------
>
> Key: TEIID-5969
> URL: https://issues.redhat.com/browse/TEIID-5969
> Project: Teiid
> Issue Type: Quality Risk
> Components: Query Engine
> Affects Versions: 13.1
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
> Fix For: 15.0, 13.1.2, 14.0.1
>
> Original Estimate: 2 hours
> Time Spent: 2 hours
> Remaining Estimate: 0 minutes
>
> We're getting the following exception:
> {code:java}
> 2020-06-10 16:01:45,326 WARN [org.teiid.PROCESSOR] (Worker21_QueryProcessorQueue272) 1bxj3NJqJLpO TEIID30020 Processing exception for request 1bxj3NJqJLpO.10 'TEIID30328 Unable to evaluate convert(ms_dwh.v1.expr1, string): TEIID30384 Error while evaluating function convert'. Originally ExpressionEvaluationException 'already removed' FileStore.java:156. Enable more detailed logging to see the entire stacktrace. {code}
> in the case of MSSQL connector and copyLobs=true in its translator property.
> After debugging I discovered that the error occurred actually because of not enough value in
> MAX_LOB_MEMORY_BYTES which is used in LobManager. The variable depends on
> org.teiid.maxStringLength which is set usually to 4000 by default. But if someone put a data with text field type in MSSQL having more than, say, 20000 symbols then the field won't be read by Teiid at all, Teiid will just throw out the exception mentioned above. Will it be possible to improve LobManager so that it can read Text data dynamically increasing needed memory for the process? Otherwise even setting the org.teiid.maxStringLength to 20000 Teiid can raise the exception because of a Text data with length more than 20000 symbols.
>
> Steps to reproduce:
> # create the v1 table in MSSQL:
> {code:java}
> CREATE TABLE [dbo].[v1](CREATE TABLE [dbo].[v1]( [expr1] [text] NULL, [b] [int] NULL) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] {code}
> 2. insert in the table the following data (I did it via standard MSSQL Server Management Studio):
> {code:java}
> insert into test_dwh.dbo.v1 values (replicate(convert(varchar(max),'a'), 20000), 1) ; {code}
> 3. add MSSQL as a source to Teiid:
> {code:java}
> <datasource jndi-name="java:/mssql-test-dwh" pool-name="mssql-test-dwh" enabled="true" use-java-context="true">
> <connection-url>jdbc:sqlserver://localhost:1433;databaseName=test_dwh</connection-url>
> <driver-class&gt;com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class&gt;
> <driver>com.microsoft.sqlserver</driver>
> <new-connection-sql>SET ANSI_WARNINGS OFF</new-connection-sql>
> <pool>
> <min-pool-size>2</min-pool-size>
> <max-pool-size>70</max-pool-size>
> </pool>
> <security>
> <user-name>*****</user-name>
> <password>*****</password>
> </security>
> <validation>
> <check-valid-connection-sql>select 1</check-valid-connection-sql>
> </validation>
> <timeout>
> <blocking-timeout-millis>120000</blocking-timeout-millis>
> <idle-timeout-minutes>5</idle-timeout-minutes>
> </timeout>
> </datasource>{code}
> 4. add ms model:
> {code:java}
> <model name="ms_dwh">
> <property name="importer.useFullSchemaName" value="false"/>
> <property name="importer.tableTypes" value="TABLE,VIEW"/>
> <property name="importer.importKeys" value="false"/>
> <property name="importer.schemaPattern" value="dbo"/>
> <source name="dwh_ms" translator-name="mySqlserver" connection-jndi-name="java:/mssql-test-dwh"/>
> </model>{code}
> 5. add mySqlserver translator:
> {code:java}
> <translator name="mySqlserver" type="sqlserver">
> <property name="SupportsNativeQueries" value="true"/>
> <property name="copyLobs" value="true"/>
> </translator> {code}
> 6. try to run the following query:
> {code:java}
> select cast(expr1 as string) from ms_dwh.v1 ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 9 months
[JBoss JIRA] (TEIIDSB-195) Provide Connection properties Datasource
by Ramesh Reddy (Jira)
[ https://issues.redhat.com/browse/TEIIDSB-195?page=com.atlassian.jira.plug... ]
Ramesh Reddy updated TEIIDSB-195:
---------------------------------
Original Estimate: 2 days
Remaining Estimate: 2 days
Story Points: 2
> Provide Connection properties Datasource
> ----------------------------------------
>
> Key: TEIIDSB-195
> URL: https://issues.redhat.com/browse/TEIIDSB-195
> Project: Teiid Spring Boot
> Issue Type: Feature Request
> Components: datasource
> Reporter: Ramesh Reddy
> Assignee: Ramesh Reddy
> Priority: Major
> Fix For: 1.6.0
>
> Original Estimate: 2 days
> Remaining Estimate: 2 days
>
> When generating the connection factories JSON file, include the properties that are required for making a connection. This can then be used in design tools like VSCode or in Syndesis
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 9 months
[JBoss JIRA] (TEIIDSB-207) Generate a Teiid Spring Boot project from given YAML based CR file
by Ramesh Reddy (Jira)
[ https://issues.redhat.com/browse/TEIIDSB-207?focusedWorklogId=12451509&pa... ]
Ramesh Reddy logged work on TEIIDSB-207:
----------------------------------------
Author: Ramesh Reddy
Created on: 16/Jun/20 4:09 PM
Start Date: 16/Jun/20 4:09 PM
Worklog Time Spent: 2 days
Issue Time Tracking
-------------------
Remaining Estimate: 1 day (was: 3 days)
Time Spent: 2 days
Worklog Id: (was: 12451509)
> Generate a Teiid Spring Boot project from given YAML based CR file
> ------------------------------------------------------------------
>
> Key: TEIIDSB-207
> URL: https://issues.redhat.com/browse/TEIIDSB-207
> Project: Teiid Spring Boot
> Issue Type: Feature Request
> Components: tools
> Reporter: Ramesh Reddy
> Assignee: Ramesh Reddy
> Priority: Major
> Fix For: 1.6.0
>
> Original Estimate: 3 days
> Time Spent: 2 days
> Remaining Estimate: 1 day
>
> Extend the "vdb-codegen" plugin to generate a full Teiid Spring Boot project based on the VDB defined in YAML CR.
> Currently the plugin already generates the `Application.java` and `DataSource.java` from a given DDL file, but when YAML file is supplied it should also generate the `pom.xml` and `application.properties` to be self-standing full TSB project as in this example https://github.com/teiid/teiid-spring-boot/tree/master/samples/vdb
> The intent behind is to use this for the local building of the project for testing with VSCode Plugin. Based on how this works out, could also be used in Operator work flow.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 9 months
[JBoss JIRA] (TEIIDSB-207) Generate a Teiid Spring Boot project from given YAML based CR file
by Ramesh Reddy (Jira)
[ https://issues.redhat.com/browse/TEIIDSB-207?page=com.atlassian.jira.plug... ]
Ramesh Reddy updated TEIIDSB-207:
---------------------------------
Sprint: DV Sprint 65
> Generate a Teiid Spring Boot project from given YAML based CR file
> ------------------------------------------------------------------
>
> Key: TEIIDSB-207
> URL: https://issues.redhat.com/browse/TEIIDSB-207
> Project: Teiid Spring Boot
> Issue Type: Feature Request
> Components: tools
> Reporter: Ramesh Reddy
> Assignee: Ramesh Reddy
> Priority: Major
> Fix For: 1.6.0
>
> Original Estimate: 3 days
> Remaining Estimate: 3 days
>
> Extend the "vdb-codegen" plugin to generate a full Teiid Spring Boot project based on the VDB defined in YAML CR.
> Currently the plugin already generates the `Application.java` and `DataSource.java` from a given DDL file, but when YAML file is supplied it should also generate the `pom.xml` and `application.properties` to be self-standing full TSB project as in this example https://github.com/teiid/teiid-spring-boot/tree/master/samples/vdb
> The intent behind is to use this for the local building of the project for testing with VSCode Plugin. Based on how this works out, could also be used in Operator work flow.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 9 months
[JBoss JIRA] (TEIIDSB-207) Generate a Teiid Spring Boot project from given YAML based CR file
by Ramesh Reddy (Jira)
[ https://issues.redhat.com/browse/TEIIDSB-207?page=com.atlassian.jira.plug... ]
Work on TEIIDSB-207 started by Ramesh Reddy.
--------------------------------------------
> Generate a Teiid Spring Boot project from given YAML based CR file
> ------------------------------------------------------------------
>
> Key: TEIIDSB-207
> URL: https://issues.redhat.com/browse/TEIIDSB-207
> Project: Teiid Spring Boot
> Issue Type: Feature Request
> Components: tools
> Reporter: Ramesh Reddy
> Assignee: Ramesh Reddy
> Priority: Major
> Fix For: 1.6.0
>
> Original Estimate: 3 days
> Remaining Estimate: 3 days
>
> Extend the "vdb-codegen" plugin to generate a full Teiid Spring Boot project based on the VDB defined in YAML CR.
> Currently the plugin already generates the `Application.java` and `DataSource.java` from a given DDL file, but when YAML file is supplied it should also generate the `pom.xml` and `application.properties` to be self-standing full TSB project as in this example https://github.com/teiid/teiid-spring-boot/tree/master/samples/vdb
> The intent behind is to use this for the local building of the project for testing with VSCode Plugin. Based on how this works out, could also be used in Operator work flow.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 9 months