Unable to start Servoy Server on OSX Mavericks

Hello all,

I was unable to start Servoy Server on OSX Mavericks.
Installed Servoy 6.1.6 Application server and upgraded the repository. Also installed servoy server as a daemon.
Finally after starting the server through terminal using command " sudo /Applications/Servoy_Application_Server_6_1_6/application_server/service/ServoyServer start ", it throws the following error in log file

2013-12-23 21:56:47,635 ERROR [main] com.servoy.j2db.util.Debug - Error upgrading repository
com.servoy.j2db.persistence.RepositoryException: java.sql.SQLException: Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED.
at com.servoy.j2db.server.Za.Zn.createRepositoryTables(Zn.java:232)
at com.servoy.j2db.server.Za.Zo.Zc(Zo.java:136)
at com.servoy.j2db.server.Za.Zo.Zb(Zo.java:1021)
at com.servoy.j2db.server.main.ApplicationServer.main(ApplicationServer.java:440)
Caused by: java.sql.SQLException: Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3597)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3529)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1990)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2151)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2619)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2569)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:824)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:667)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.servoy.j2db.datasource.Zg.invoke(Zg.java:14)
at com.sun.proxy.$Proxy0.execute(Unknown Source)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
at com.servoy.j2db.server.Za.Zn.createRepositoryTables(Zn.java:91)
… 3 more
2013-12-23 21:57:59,975 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 21:58:09,775 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 21:58:19,168 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 21:58:28,492 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 21:58:37,899 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:00:22,469 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:00:31,850 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:00:41,307 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:00:50,655 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:01:00,171 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:02:18,688 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:02:28,519 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:02:37,845 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:02:47,198 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.
2013-12-23 22:02:56,517 ERROR [WrapperSimpleAppMain] com.servoy.j2db.util.Debug - Cannot upgrade repository: make a backup of your repository and start server with -upgradeRepository flag.

My SQl Server Version 5.6.15

Please suggest some solution to resolve this error and start the server.

Thanks,
pb.

Hi,

After looking around (i.e. using The Google ;) ) I found that this is due to a MySQL bug (MySQL Bug #40360)
I am pretty sure that Servoy uses the ‘READ COMMITTED’ transaction isolation level with MySQL, which currently only supports row-based binary logging. To fix this problem, you must configure MySQL’s binary logging format to use ‘row-based’ binary logging.

  1. Shutdown Servoy and MySQL.
  2. Open the MySQL configuration file (my.cnf) in a text editor.
  3. Locate the binlog_format property in this file in the [mysqld] section and ensure that its value is row, such that you end up with:
binlog_format=row
  1. Save your changes to this file.
  2. Start MySQL and run the repository upgrade script again (servoy_server.sh -upgradeRepository).
  3. Start Server server

Hope this helps.

Thanks ROCLASI for your prompt response… :)

Glad to help.
And please reply here if it worked or not so others can use this example.