[teiid-issues] [JBoss JIRA] (TEIID-4703) The Oracle translator did not limit the number of values in "IN" clause, which were required by Oracle database.

Steven Hawkins (JIRA) issues at jboss.org
Sat Jan 21 08:48:00 EST 2017


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

Steven Hawkins commented on TEIID-4703:
---------------------------------------

Ideally you could provide something that is sanitized.  Starting with a representative user query and the translator configuration from the VDB would be a good start.  For whole logs if it's not appropriate to post here, you can reach out through jboss.org - https://developer.jboss.org/people/shawkins

> The Oracle translator did not limit the number of values in "IN" clause, which were required by Oracle database.
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: TEIID-4703
>                 URL: https://issues.jboss.org/browse/TEIID-4703
>             Project: Teiid
>          Issue Type: Bug
>    Affects Versions: 8.13.4
>            Reporter: SHI HONG CHIN
>            Assignee: Steven Hawkins
>
> Database: Oracle + Firebird + Microsoft SQL Server.
> Oracle limit the maximum number of values in "IN" clause to 1000.
> In teiid, I am using the built-in Oracle translator.
> When running some SQL queries, Oracle database reported an error "No more data to read from socket". I had set the log level of Teiid to "ALL". According to the WildFly log files, Teiid executed a query with more than 10000 values in the "IN" clause.
> I tried to copy the whole SQL from WildFly log file into Oracle SQL Developer and execute it, the same error occurred. Then, I tried to edit the query by delete many values from the "IN" clause and then run the query again, and the query success.
> For teiid, as a workaround, I overrided the oracle translator and set the property of "MaxInCriteriaSize" to 50. After that, all SQL queries run success without any issue.
> I suggest that, by default, the built-in Oracle translator limit the number of values in "IN" clause to maximum 1000 values, and this behavior can be changed through properties.



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


More information about the teiid-issues mailing list