Can anyone reproduce the following error when using MySQL/MariaDB as input?
Open the .metadata/.log file to see errors
!STACK 0 java.lang.StringIndexOutOfBoundsException: String index out of range: 4 at java.lang.String.charAt(Unknown Source) at org.mariadb.jdbc.internal.common.AbstractValueObject.getTimestamp(AbstractValueObject.java:245) at org.mariadb.jdbc.MySQLResultSet.getTimestamp(MySQLResultSet.java:3506) at org.talend.sqlbuilder.dataset.dataset.DataSet.initialize(DataSet.java:260) at org.talend.sqlbuilder.dataset.dataset.DataSet.<init>(DataSet.java:71) at org.talend.sqlbuilder.sqlcontrol.SQLExecution.doExecution(SQLExecution.java:165) at org.talend.sqlbuilder.sqlcontrol.AbstractSQLExecution$LocalThread.run(AbstractSQLExecution.java:66)
Solved! Go to Solution.
When I view the schema in DI I don't have any columns set with a row length of 4 but when I view the schema in MySQL I have 1 column of length 4 using the "Year" database datatype which in DI is listed as date with Date Pattern as "dd-MMM-yyyy" and length set as zero. Should that be just "yyyy"
Two confusing parts
so why would there be an error when talend DI is responsible for identifying the schema used by the database?
Editing the table schema under Metadata ->MyMariaDB->tables from year to string allowed the MySQLinput to work.
Would you class this as a bug in Talend DI? in that it doesn't know to use the string data type for MariaDB Year?
Also keeping it as date with a date pattern of "yyyy" did not resolve the issue
Talend named a Leader.
Kickstart your first data integration and ETL projects.
Watch the recorded webinar!
Part 2 of a series on Context Variables
Learn how to do cool things with Context Variables
Find out how to migrate from one database to another using the Dynamic schema