Open
Description
Description
DCR call fails with the following error for MySQL database.
[2025-04-06 08:27:31,319] ERROR - JDBCPersistenceManager An error occurred while commit transactions.
java.sql.SQLException: Can't call commit when autocommit=true
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:67) ~[mysql-connector-java-8.0.29.jar:8.0.29]
at com.mysql.cj.jdbc.ConnectionImpl.commit(ConnectionImpl.java:786) ~[mysql-connector-java-8.0.29.jar:8.0.29]
at jdk.internal.reflect.GeneratedMethodAccessor70.invoke(Unknown Source) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:131) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:107) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:78) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:107) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:78) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:107) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:158) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:107) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:39) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:107) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:78) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:107) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81) ~[jdbc-pool_9.0.76.wso2v1.jar:?]
at com.sun.proxy.$Proxy53.commit(Unknown Source) ~[?:?]
at org.wso2.carbon.identity.core.persistence.JDBCPersistenceManager.commitTransaction(JDBCPersistenceManager.java:205) [org.wso2.carbon.identity.core_5.17.5.303.jar:?]
at org.wso2.carbon.identity.core.util.IdentityDatabaseUtil.commitTransaction(IdentityDatabaseUtil.java:119) [org.wso2.carbon.identity.core_5.17.5.303.jar:?]
at org.wso2.carbon.identity.oauth.dao.OAuthAppDAO.updateOAuthConsumerApp(OAuthAppDAO.java:774) [org.wso2.carbon.identity.oauth_6.4.2.155.jar:?]
at org.wso2.carbon.identity.oauth2.internal.OAuthApplicationMgtListener.updateAuthApplication(OAuthApplicationMgtListener.java:439) [org.wso2.carbon.identity.oauth_6.4.2.155.jar:?]
at org.wso2.carbon.identity.oauth2.internal.OAuthApplicationMgtListener.doPostUpdateApplication(OAuthApplicationMgtListener.java:144) [org.wso2.carbon.identity.oauth_6.4.2.155.jar:?]
at org.wso2.carbon.identity.application.mgt.ApplicationManagementServiceImpl.updateApplication(ApplicationManagementServiceImpl.java:642) [org.wso2.carbon.identity.application.mgt_5.17.5.290.jar:?]
at org.wso2.carbon.apimgt.rest.api.dcr.web.impl.RegistrationServiceImpl.createApplication(RegistrationServiceImpl.java:481) [classes/:?]
at org.wso2.carbon.apimgt.rest.api.dcr.web.impl.RegistrationServiceImpl.register(RegistrationServiceImpl.java:213) [classes/:?]
Please find the same issue reported for IS [1].
Steps to Reproduce
- Setup APIM 3.2.0 with MySQL
- Send a DCR request
curl --location 'https://127.0.0.1:9443/client-registration/v0.17/register' \
--header 'Host: localhost' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic YWRtaW46YWRtaW4=' \
--data '{
"callbackUrl": "www.google.lk",
"clientName": "rest_api_publisher2",
"owner": "admin",
"grantType": "client_credentials password refresh_token",
"saasApp": true
}'
- The error is thrown in the log. However, it does not break any flows since the changes were committed with auto commit
true
.
Version
3.2.0
Environment Details (with versions)
No response