MySQL PacketTooBigException

1
0
-1

Hello,

Now Bonita won't start with a fresh Tomcat+Bonita Bundle install.

The root cause reported is com.mysql.jdbc.PacketTooBigException: Packet for query is too large (4227663 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable.

But the MySql server instance is configured with max_allowed_packet = 67108864 (64 MBytes)!

Thank you.

Stack trace follows:

2017-07-12 00:26:02.097 -0400 INFO: org.bonitasoft.engine.EngineInitializer Initializing Bonita Engine...
2017-07-12 00:26:17.908 -0400 INFO: org.bonitasoft.engine.EngineInitializer First run on this platform, initializing it...
2017-07-12 00:26:22.399 -0400 INFO: org.bonitasoft.engine.EngineInitializer Platform initialized successfully.
2017-07-12 00:26:22.399 -0400 INFO: org.bonitasoft.engine.EngineInitializer Starting node...
2017-07-12 00:26:23.282 -0400 WARNING: org.hibernate.engine.jdbc.spi.SqlExceptionHelper SQL Error: 0, SQLState: S1000
2017-07-12 00:26:23.286 -0400 SEVERE: org.hibernate.engine.jdbc.spi.SqlExceptionHelper Packet for query is too large (4227663 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable.
2017-07-12 00:26:23.297 -0400 SEVERE: org.bonitasoft.engine.EngineInitializer Exception while initializing the engine: 
org.bonitasoft.engine.platform.StartNodeException: Platform starting failed.
    at org.bonitasoft.engine.api.impl.PlatformAPIImpl.startNode(PlatformAPIImpl.java:211)
    at org.bonitasoft.engine.EngineInitializer.initializeEngine(EngineInitializer.java:79)
    at org.bonitasoft.engine.api.internal.servlet.EngineInitializerListener.contextInitialized(EngineInitializerListener.java:33)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5118)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5634)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:679)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1966)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:748)
Caused by: org.bonitasoft.engine.exception.UpdateException: Unable to start service: org.bonitasoft.engine.page.impl.PageServiceImpl
    at org.bonitasoft.engine.api.impl.transaction.SetServiceState.call(SetServiceState.java:81)
    at org.bonitasoft.engine.api.impl.transaction.SetServiceState.call(SetServiceState.java:40)
    at org.bonitasoft.engine.transaction.JTATransactionServiceImpl.executeInTransaction(JTATransactionServiceImpl.java:274)
    at org.bonitasoft.engine.api.impl.PlatformAPIImpl.startServicesOfTenants(PlatformAPIImpl.java:397)
    at org.bonitasoft.engine.api.impl.PlatformAPIImpl.startNode(PlatformAPIImpl.java:195)
    ... 15 more
Caused by: org.bonitasoft.engine.persistence.SBonitaReadException: org.hibernate.exception.GenericJDBCException: could not execute statement
    at org.bonitasoft.engine.persistence.AbstractHibernatePersistenceService.selectOne(AbstractHibernatePersistenceService.java:434)
    at org.bonitasoft.engine.persistence.AbstractHibernatePersistenceService.selectOne(AbstractHibernatePersistenceService.java:361)
    at org.bonitasoft.engine.page.impl.PageServiceImpl.getPageByName(PageServiceImpl.java:346)
    at org.bonitasoft.engine.page.impl.PageServiceImpl.importProvidedPage(PageServiceImpl.java:636)
    at org.bonitasoft.engine.page.impl.PageServiceImpl.importProvidedPage(PageServiceImpl.java:628)
    at org.bonitasoft.engine.page.impl.PageServiceImpl.start(PageServiceImpl.java:618)
    at org.bonitasoft.engine.api.impl.transaction.StartServiceStrategy.changeState(StartServiceStrategy.java:33)
    at org.bonitasoft.engine.api.impl.transaction.SetServiceState.call(SetServiceState.java:79)
    ... 19 more
Caused by: org.hibernate.exception.GenericJDBCException: could not execute statement
    at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:54)
    at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:126)
    at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:112)
    at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:211)
    at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:62)
    at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3124)
    at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3581)
    at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:104)
    at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:465)
    at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:351)
    at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:350)
    at org.hibernate.event.internal.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:67)
    at org.hibernate.internal.SessionImpl.autoFlushIfRequired(SessionImpl.java:1227)
    at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1293)
    at org.hibernate.internal.QueryImpl.list(QueryImpl.java:103)
    at org.hibernate.internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:966)
    at org.bonitasoft.engine.persistence.AbstractHibernatePersistenceService.selectOne(AbstractHibernatePersistenceService.java:430)
    ... 26 more
Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (4227663 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable.
    at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3868)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2551)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2731)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2818)
    at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2157)
    at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2460)
    at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2377)
    at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2361)
    at com.mysql.jdbc.jdbc2.optional.PreparedStatementWrapper.executeUpdate(PreparedStatementWrapper.java:875)
    at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at bitronix.tm.resource.jdbc.BaseProxyHandlerClass.invoke(BaseProxyHandlerClass.java:64)
    at com.sun.proxy.$Proxy41.executeUpdate(Unknown Source)
    at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:208)
    ... 39 more

2017-07-12 00:26:23.299 -0400 INFO: org.bonitasoft.engine.EngineInitializer Initialization of Bonita Engine done! ( took 21200ms)
2017-07-12 00:26:23.467 -0400 SEVERE: org.bonitasoft.engine.api.impl.ServerAPIImpl THREAD_ID=15 | HOSTNAME=ip-172-31-58-110 | Node not started. Method 'org.bonitasoft.engine.api.PlatformAPI.getClientPlatformConfigurations' cannot be called until node has been started (PlatformAPI.startNode()). Exact class: org.bonitasoft.engine.api.impl.PlatformAPIImpl
2017-07-12 00:26:23.469 -0400 SEVERE: org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/bonita] Exception sending context initialized event to listener instance of class org.bonitasoft.console.common.server.servlet.PlatformTenantListener
org.bonitasoft.engine.platform.NodeNotStartedException: USERNAME=local | The current node has not been started yet. Method PlatformAPI.startNode() must be called previously.
    at org.bonitasoft.engine.api.impl.ServerAPIImpl.checkMethodAccessibility(ServerAPIImpl.java:287)
    at org.bonitasoft.engine.api.impl.ServerAPIImpl$2.call(ServerAPIImpl.java:430)
    at org.bonitasoft.engine.transaction.JTATransactionServiceImpl.executeInTransaction(JTATransactionServiceImpl.java:274)
    at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeAPIInTransaction(ServerAPIImpl.java:438)
    at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeAPI(ServerAPIImpl.java:272)
    at org.bonitasoft.engine.api.impl.ServerAPIImpl.invokeMethod(ServerAPIImpl.java:124)
    at org.bonitasoft.engine.api.impl.ClientInterceptor.invoke(ClientInterceptor.java:86)
    at com.sun.proxy.$Proxy42.getClientPlatformConfigurations(Unknown Source)
    at org.bonitasoft.console.common.server.utils.PlatformManagementUtils.retrievePlatformConfiguration(PlatformManagementUtils.java:101)
    at org.bonitasoft.console.common.server.utils.PlatformManagementUtils.initializePlatformConfiguration(PlatformManagementUtils.java:113)
    at org.bonitasoft.console.common.server.servlet.PlatformTenantListener.contextInitialized(PlatformTenantListener.java:52)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5118)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5634)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:679)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1966)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:748)

2017-07-12 00:26:23.491 -0400 INFO: org.bonitasoft.engine.EngineInitializer Stopping Bonita Engine...
2017-07-12 00:26:23.497 -0400 INFO: org.bonitasoft.engine.EngineInitializer Node is not started, nothing to do.
2017-07-12 00:26:23.537 -0400 INFO: org.bonitasoft.engine.EngineInitializer Bonita Engine stopped!
1 answer

1
+1
-1
This one is the BEST answer!

The problem was, as a AWS RDS cluster, config wasn't propagated to all nodes. Once that happened, it worked.

Thanx.

Notifications