Optimize Analytic Engine MySQL autocommit problem

Hi,

I ran webMethods on MySQL Community Edition 5.7 and there is a problem with Optimize Analytic Engine. It keeps logging autocommit error:


(OPTIMIZE) [Analytic Engine v10.3.0.0.LastReadingTransactionLogic.UnknownKey] 2019-12-05 15:19:44.300 CET ERROR: 
java.sql.SQLException: Can't call commit when autocommit=true
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:869)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:865)
	at com.mysql.jdbc.ConnectionImpl.commit(ConnectionImpl.java:1537)
	at com.webmethods.sc.database.jdbcpools.connection.JDBCPooledConnection.commit(JDBCPooledConnection.java:687)
	at com.webmethods.bpo.database.wrapped.WrappedConnectionImpl.commit(WrappedConnectionImpl.java:172)
	at com.webmethods.optimize.monitor.common.LastReadingTransactionLogic.persistUpdates(LastReadingTransactionLogic.java:340)
	at com.webmethods.optimize.monitor.common.LastReadingTransactionLogic.performUpdates(LastReadingTransactionLogic.java:310)
	at com.webmethods.optimize.monitor.common.LastReadingTransactionLogic.access$200(LastReadingTransactionLogic.java:30)
	at com.webmethods.optimize.monitor.common.LastReadingTransactionLogic$UpdateLastReadingsTask.call(LastReadingTransactionLogic.java:240)
	at com.webmethods.optimize.monitor.common.LastReadingTransactionLogic$UpdateLastReadingsTask.call(LastReadingTransactionLogic.java:228)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

It is not possible to set autocommit at mysql jdbc url, so it has to be made by configuration or in code.

Any solution to this?

Hi Michal,

did you check the System Requirements Guide for 10.3 which version of MySQL is supported?
In this thread at StackOverflow you will find some options on how to disable autocommit:
https://stackoverflow.com/questions/2280465/how-do-i-turn-off-autocommit-for-a-mysql-client
Most likely option 2 or 3 will do the trick for you.

There should be a note in the wM Database Configuration Guide which is the preferred variant.

Regards,
Holger