Skip to main content
Announcements
See what Drew Clarke has to say about the Qlik Talend Cloud launch! READ THE BLOG
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

tOracleOuput - ArrayIndexOutOfBoundsException

I've just installed Talend Studio version 5.3.1
I have a job which runs fine in version 4.2
Using tOracleOutput to insert in a 11.2.0.3.0 version database, I now have this error :
Exception in component tOracleOutput_1
java.lang.ArrayIndexOutOfBoundsException: -32663
at oracle.jdbc.driver.OraclePreparedStatement.setupBindBuffers(OraclePreparedStatement.java:2673)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:10689)
at atq.stakeholder_0_1.Stakeholder.tOracleInput_1Process(Stakeholder.java:3801)
at atq.stakeholder_0_1.Stakeholder.tOracleInput_12Process(Stakeholder.java:2427)
at atq.stakeholder_0_1.Stakeholder.tCreateTable_1Process(Stakeholder.java:1198)
at atq.stakeholder_0_1.Stakeholder.runJobInTOS(Stakeholder.java:15487)
at atq.stakeholder_0_1.Stakeholder.main(Stakeholder.java:15281)
The buffer size for the tOracleOutput component is 10000. The first commit is done, but after 20000 (the 2nd commit) the error is triggered.
I've tried updating the ojdbc but it had no impact.
I know that there is a workaround by using a buffer size of 1000, but it is not a solution for me.
I want to know if there is a better solution or if I am missing something.
Thank you for your time.
Labels (5)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

Hi,
We are not able to see the response for the solution can you share the once again...
Thanks
Rick

View solution in original post

9 Replies
Anonymous
Not applicable
Author

Got a reply from Talend support.
"After further investigating this issue it seems that this is a limitation of the OJDBC driver.
You would need to overwrite the ojdbc14 diver within the studio with the attached driver."
Everything is working now.
Anonymous
Not applicable
Author

I am still having this issue that is described in the original post.
I don't know how to 'overwrite' the ojdbc driver.
However, I do have both ojdbc6.jar and ojdbc14.jar in the following folders/locations:
TOS/lib/java
oracle/product/.../jdbc/lib
My version of TalenD DI (5.4.1.r111943) is requiring the ojdbc6.jar for my tOracleOutput(s) that are connections to an Oracle 10.2.0.2 database. I am unable to process more than 10000 rows of data for any Oracle output. Some help would be greatly appreciated. I have another environment that is running TalenD DI (5.2.0.92826) some exact jobs and connections to the same Oracle DB 10.2.0.2 and it works just fine. Locations of the ojdbc#.jar files is identical.
Error:
Exception in component tOracleOutput_1
java.lang.ArrayIndexOutOfBoundsException: -32703
at oracle.jdbc.driver.OraclePreparedStatement.setupBindBuffers(OraclePreparedStatement.java:2677)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:9270)
at oracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:210)
Anonymous
Not applicable
Author

Hi bfausett ,
Here is a response in your another topic https://community.talend.com/t5/Design-and-Development/ArrayIndexOutOfBoundsException-TOS5-4-tOracle..., please have a look at it.
Best regards
Sabrina
Anonymous
Not applicable
Author

Hi,
We are not able to see the response for the solution can you share the once again...
Thanks
Rick
Anonymous
Not applicable
Author

Hello,

Here is a related topic:https://community.talend.com/t5/Design-and-Development/tOracleInput-ArrayIndexOutOfBoundsException/m....

Feel free to post your issue here with more detailed information.

Best regards

Sabrina

Anonymous
Not applicable
Author

Hi @xdshi,

 

Thanks in advance,

 

I have tried  the solutions which are provided in previous link  but its not useful enough to fix the issue which i am facing ,Kindly see the attched error details  for  the same.

I am using ojdbc6.jar and TOS 6.1.1. still facing the same issue again and again, The  job is failing whenever i tried to execute the same as standalone job on unix box.

 

 

Error Details :

 

 

Exception in component tOracleOutput_1
java.lang.ArrayIndexOutOfBoundsException: -32453
@AToracle.jdbc.driver.OraclePreparedStatement.setupBindBuffers(OraclePreparedStatement.java:2677)
@AToracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:9270)
@AToracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:210)

 

Thanks 

Rick

 

 

manodwhb
Creator III
Creator III

Anonymous
Not applicable
Author

Thanks for the info will try and confirm
Anonymous
Not applicable
Author

Hi, 

 

my solution was setting a number less than 10000 in commit size. In tOracleOutput--> Advanced Settings: Use Batch  BatchSize=500 (you can try empirically another number) See the image attached. 

 

Best regards

jaiko


0683p000009M7w3.png


java.lang.ArrayIndexOutOfBoundsException -32573.png