Hi, After few hours of running my job, an error message appeared as below : Exception in component tMysqlOutput_1 com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after statement closed. at sun.reflect.GeneratedConstructorAccessor3.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.Util.getInstance(Util.java:386) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1014) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919) at com.mysql.jdbc.StatementImpl.checkClosed(StatementImpl.java:465) at com.mysql.jdbc.PreparedStatement.clearBatch(PreparedStatement.java:1143) at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1471) I did not have any idea regarding the error. Can anyone help me to clarify the matter. Thanks in advance. fadh
Hi, Due to it is a huge of data, so it is great if your MySQL server support for bulk. Talend provide bulk components tMysqlBulkExec, tMysqlOutputBulk and tMysqlOutputBulkExec. Or you can change MySQL timeout configuration. Best regards Sabrina
Please let me know how to increase time-out or is there any way so that my connection will not timeout even thought my Job is idle for more than 8 hour:
Exception in component tMysqlOutput_1
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.Util.getInstance(Util.java:384)
Hi
praveen13,
Could you please try to investigate the MySQL server variable "wait_timeout" and increase it to a high value, rather than the default of 8 hours, open the configuration file mysq.ini/mysql.cnv and modify the following two parameters or add the following parameters if they do not exist.
wait_timeout=31536000
interactive_timeout=31536000
Let me know if it is OK with you.
Hi xdshi,
Even am facing the same exception.But, i received this kind of error after 40 min of my job started.
may i know other chances of getting this kind of error.
Thanks in advance
Regards,
Rekha
Instead of tMysqlOutput use Instead of tMysqlOutputBulk. I would guess you would see a speed improvement if you write everything to a delimited file before loading to the DB.