HELP SERVOY ...Cant Connect to The App Server

Appreciate some Servoy feedback as this is a show stopper at the moment.

This is getting to be monotonous isn’t it… Sorry Guys feel like I’m rehashing same old stuff here but I’m not sure where to go for a solution with this!

Thought it’d be dirt easy to install 4.1.1F on a new clean PC with MySQL. Installed OK, MySQL running fine (checked it using Navicat), used a SQL Dump to populate the Db’s from my other dev machine, and ran Servoy. Of course after creating the Db Servers Servoy wants to upgrade the repository - and though I’m a single development environment of course I say yes to this. Variously getting the ‘Application server does not accept client connections’ / ‘Cannot create/upgrade the repository’ errors.

Seems the application server has not started. The last time I had this sort of challenge it was because the Team setting in the admin page was set to false - this time its true. Obviously I cant import my solution since I cant get to it through the admin page (not started).

Here is what I’ve tried:

Kill all Virus checking, kill the firewall (all local host though anyway), PC is completely open.
Start the app server from the servoy_server.bat - it doesn’t.
Start the app server from the windows services page (after closing developer) - but that failed to start too - tries to start and then fails woth a 1067 error.
Start Server with servoy_server.bat -upgraderepository - no change.
Re-installing Servoy - no change.
Deleting tables in the servoy_repository (in the hope they would be re-created when the repository was rebuilt).

Is it possible to upgrade the repository by hand somehow?
What should I now test for to get the (developer) app server running?

Here are the Logs - that I’d appreciate some feedback on:

.metadata
!SESSION 2009-03-11 18:02:48.500 -----------------------------------------------
eclipse.buildId=M20071023-1652
java.version=1.6.0_11
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_GB
Framework arguments: --launcher.XXMaxPermSize 256M
Command-line arguments: -os win32 -ws win32 -arch x86 --launcher.XXMaxPermSize 256M

!ENTRY com.servoy.eclipse.core 1 0 2009-03-11 18:02:53.640
!MESSAGE Cannot find any valid solution to activate.

!ENTRY org.eclipse.ui.workbench 2 0 2009-03-11 18:02:54.546
!MESSAGE A handler conflict occurred. This may disable some commands.
!SUBENTRY 1 org.eclipse.ui.workbench 2 0 2009-03-11 18:02:54.546
!MESSAGE Conflict for ‘AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction’:
HandlerActivation(commandId=AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction,
handler=ActionDelegateHandlerProxy(null,org.eclipse.ui.cheatsheets.CheatSheetExtensionFactory:helpMenuAction),
expression=AndExpression(ActionSetExpression(org.eclipse.ui.cheatsheets.actionSet,org.eclipse.ui.internal.WorkbenchWindow@1d4f355),WorkbenchWindowExpression(org.eclipse.ui.internal.WorkbenchWindow@1d4f355)),sourcePriority=16640)
HandlerActivation(commandId=AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction,
handler=ActionDelegateHandlerProxy(null,org.eclipse.ui.cheatsheets.CheatSheetExtensionFactory:helpMenuAction),
expression=AndExpression(ActionSetExpression(org.eclipse.ui.cheatsheets.actionSet,org.eclipse.ui.internal.WorkbenchWindow@1d4f355),WorkbenchWindowExpression(org.eclipse.ui.internal.WorkbenchWindow@1d4f355)),sourcePriority=16640)

!ENTRY com.servoy.eclipse.core 4 0 2009-03-11 18:03:06.093
!MESSAGE Failed to create/upgrade repository.
!STACK 0
com.servoy.j2db.persistence.RepositoryException: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table ‘servoy_content_spec’ already exists
at com.servoy.j2db.persistence.RepositoryUpdater.createRepositoryTables(RepositoryUpdater.java:1307)
at com.servoy.j2db.persistence.Server.createActualRepositoryTables(Server.java:530)
at com.servoy.j2db.persistence.Server.createRepositoryTables(Server.java:622)
at com.servoy.eclipse.team.ServoyTeamProvider$6.run(ServoyTeamProvider.java:4)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:129)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3659)
at org.eclipse.swt.widgets.Display.msgFilterProc(Display.java:3041)
at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method)
at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:228)
at org.eclipse.swt.widgets.Display.runPopups(Display.java:3708)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3287)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
Caused by: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table ‘servoy_content_spec’ already exists
at com.servoy.j2db.persistence.Server.syncTableObjWithDB(Server.java:411)
at com.servoy.j2db.persistence.RepositoryUpdater.createRepositoryTables(RepositoryUpdater.java:636)
… 31 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table ‘servoy_content_spec’ already exists
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.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:406)
at com.mysql.jdbc.Util.getInstance(Util.java:381)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2548)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2477)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:741)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:587)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.servoy.j2db.persistence.datasource.Ze.invoke(Ze.java:5)
at $Proxy0.execute(Unknown Source)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at com.servoy.j2db.persistence.Server.syncTableObjWithDB(Server.java:1456)
… 32 more

!ENTRY com.servoy.eclipse.core 4 0 2009-03-11 18:04:41.484
!MESSAGE Cannot get solutions from repository
!STACK 0
com.servoy.eclipse.team.Zb: Application server does not accept client connections.
at com.servoy.eclipse.team.RepositoryAccessPoint.Za(RepositoryAccessPoint.java:113)
at com.servoy.eclipse.team.ui.NewSolutionWizard$4.runInWorkspace(NewSolutionWizard.java:14)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

servoy_log
2009-03-11 18:02:51,796 ERROR [Thread-3] com.servoy.j2db.util.Debug - Throwable
com.servoy.j2db.persistence.RepositoryException: Old repository found in the database. Repository version: 0, software version: 35. Upgrade the repository first.
at com.servoy.j2db.persistence.Repository.testIfValid(Repository.java:1625)
at com.servoy.j2db.persistence.Repository.(Repository.java:178)
at com.servoy.j2db.persistence.Repository.(Repository.java:1641)
at com.servoy.j2db.persistence.Server.getRepository(Server.java:730)
at com.servoy.j2db.server.ApplicationServer.initFromSerclipse(ApplicationServer.java:353)
at com.servoy.eclipse.core.ServoyModel.startAppServer(ServoyModel.java:182)
at com.servoy.eclipse.core.util.SplashHandler$1.run(SplashHandler.java:2)
at java.lang.Thread.run(Unknown Source)
(I Truncated the log)

Thought it’d be dirt easy to install 4.1.1F on a new clean PC with MySQL. Installed OK, MySQL running fine (checked it using Navicat), used a SQL Dump to populate the Db’s from my other dev machine, and ran Servoy. Of course after creating the Db Servers Servoy wants to upgrade the repository - and though I’m a single development environment of course I say yes to this. Variously getting the ‘Application server does not accept client connections’ / ‘Cannot create/upgrade the repository’ errors.

Maybe it is me ( read: possibly :) ) but why do you do this?
When you are going to do a clean install isn’t it easier to create an export with sample data and set the amount of exported rows to unlimited.
Or do I miss something?

Deleting tables in the servoy_repository (in the hope they would be re-created when the repository was rebuilt).

I think this should have solved your problem.
It looks like some tables in the repository server exist (like “servoy_content_spec”) but the repository you created using SQL Dump is not valid (it reports old version 0).

Could you try again to delete all tables in servoy_repository then restart Servoy Developer?
If, after you create a blank repository all works fine then there is probably something wrong with the content of the old repository DB. In this case you can try to backup then use directly the old repository database (that you know is working in previous release) and see if you are able to upgrade that one using 4.1.1.

Andrei Costescu:

Deleting tables in the servoy_repository (in the hope they would be re-created when the repository was rebuilt).

I think this should have solved your problem.
It looks like some tables in the repository server exist (like “servoy_content_spec”) but the repository you created using SQL Dump is not valid (it reports old version 0).

Could you try again to delete all tables in servoy_repository then restart Servoy Developer?
If, after you create a blank repository all works fine then there is probably something wrong with the content of the old repository DB. In this case you can try to backup then use directly the old repository database (that you know is working in previous release) and see if you are able to upgrade that one using 4.1.1.

I think I was’nt clear - my SQL dump / restore was on my database only not the repository.

This did not work Andrei - to try and resolve the problem I have tried a completely new install. Deleted all the tables in repository server (servoy_repository) and restarted developer - and made no connections to any other Db’s. When asked to upgrade the repository it appears the repository tables are recreated but I get the Cant Create / Upgrade Repository error. If I then go to Solutions Checkout I get the Application Server does not accept client connections error.

This is totally clean now there is no legacy stuff at all - but still I cant start the system? Here are the logs for this clean attempt to upgrade the repository.

New Logs:
!SESSION 2009-03-12 11:11:17.343 -----------------------------------------------
eclipse.buildId=M20071023-1652
java.version=1.6.0_11
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_GB
Framework arguments: --launcher.XXMaxPermSize 256M
Command-line arguments: -os win32 -ws win32 -arch x86 --launcher.XXMaxPermSize 256M

!ENTRY com.servoy.eclipse.core 1 0 2009-03-12 11:11:22.250
!MESSAGE Cannot find any valid solution to activate.

!ENTRY org.eclipse.ui.workbench 2 0 2009-03-12 11:11:23.000
!MESSAGE A handler conflict occurred. This may disable some commands.
!SUBENTRY 1 org.eclipse.ui.workbench 2 0 2009-03-12 11:11:23.000
!MESSAGE Conflict for ‘AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction’:
HandlerActivation(commandId=AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction,
handler=ActionDelegateHandlerProxy(null,org.eclipse.ui.cheatsheets.CheatSheetExtensionFactory:helpMenuAction),
expression=AndExpression(ActionSetExpression(org.eclipse.ui.cheatsheets.actionSet,org.eclipse.ui.internal.WorkbenchWindow@1f35e30),WorkbenchWindowExpression(org.eclipse.ui.internal.WorkbenchWindow@1f35e30)),sourcePriority=16640)
HandlerActivation(commandId=AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction,
handler=ActionDelegateHandlerProxy(null,org.eclipse.ui.cheatsheets.CheatSheetExtensionFactory:helpMenuAction),
expression=AndExpression(ActionSetExpression(org.eclipse.ui.cheatsheets.actionSet,org.eclipse.ui.internal.WorkbenchWindow@1f35e30),WorkbenchWindowExpression(org.eclipse.ui.internal.WorkbenchWindow@1f35e30)),sourcePriority=16640)

!ENTRY com.servoy.eclipse.core 4 0 2009-03-12 11:12:12.515
!MESSAGE Failed to create/upgrade repository.
!STACK 0
com.servoy.j2db.persistence.RepositoryException: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
at com.servoy.j2db.persistence.RepositoryUpdater.createRepositoryTables(RepositoryUpdater.java:1307)
at com.servoy.j2db.persistence.Server.createActualRepositoryTables(Server.java:530)
at com.servoy.j2db.persistence.Server.createRepositoryTables(Server.java:622)
at com.servoy.eclipse.team.ServoyTeamProvider$6.run(ServoyTeamProvider.java:4)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:129)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3659)
at org.eclipse.swt.widgets.Display.msgFilterProc(Display.java:3041)
at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method)
at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:228)
at org.eclipse.swt.widgets.Display.runPopups(Display.java:3708)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3287)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
Caused by: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
at com.servoy.j2db.persistence.Server.syncTableObjWithDB(Server.java:411)
at com.servoy.j2db.persistence.RepositoryUpdater.recreateServoyColumnInfo(RepositoryUpdater.java:268)
at com.servoy.j2db.persistence.RepositoryUpdater.createRepositoryTables(RepositoryUpdater.java:1442)
… 31 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.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:406)
at com.mysql.jdbc.Util.getInstance(Util.java:381)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2548)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2477)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:741)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:587)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.servoy.j2db.persistence.datasource.Ze.invoke(Ze.java:5)
at $Proxy0.execute(Unknown Source)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at com.servoy.j2db.persistence.Server.syncTableObjWithDB(Server.java:1456)
… 33 more

servoy

2009-03-12 11:11:20,703 ERROR [Thread-3] com.servoy.j2db.util.Debug - Throwable
com.servoy.j2db.persistence.RepositoryException: No repository found in the database.
at com.servoy.j2db.persistence.Repository.testIfValid(Repository.java:39)
at com.servoy.j2db.persistence.Repository.(Repository.java:178)
at com.servoy.j2db.persistence.Repository.(Repository.java:1641)
at com.servoy.j2db.persistence.Server.getRepository(Server.java:730)
at com.servoy.j2db.server.ApplicationServer.initFromSerclipse(ApplicationServer.java:353)
at com.servoy.eclipse.core.ServoyModel.startAppServer(ServoyModel.java:182)
at com.servoy.eclipse.core.util.SplashHandler$1.run(SplashHandler.java:2)
at java.lang.Thread.run(Unknown Source)

Really appreciate some feedback on this urgently please Guys - I’ve lost 2 days of a very tight development schedule now, and I need to understand why this system is not working?

We are looking into it. Hope to give you feedback soon.

Andrei Costescu:
We are looking into it. Hope to give you feedback soon.

Any further feedback on this issue Andrei ? Should I call it quits for today or are you close to a solution / workaround / suggestion ?

I don’t think I’ll have more info today. It must have something to do with “Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs” - but didn’t find the cause for that yet.

Andrei Costescu:
I don’t think I’ll have more info today. It must have something to do with “Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs” - but didn’t find the cause for that yet.

OK Thanks Andrei - I figured that would be responsible but since the only rows added are by the Servoy repository upgrade I was assuming it was a wrongly described error!

Please keep me posted.

Kahuna,

Which version of Mysql are you running?
Make sure you are using the jdbc driver that matches the db version.

Note that as part of our internal test setup we test creation of repository tables in different databases daily, MySql5 being one of them.

Rob

rgansevles:
Kahuna,

Which version of Mysql are you running?
Make sure you are using the jdbc driver that matches the db version.

Note that as part of our internal test setup we test creation of repository tables in different databases daily, MySql5 being one of them.

Rob

Rob this is MySQL 5.1 and the correct connector. This is the same version and connector I was using on my dev environment earlier this week in my other office. I upgraded using the servoy updater jar with that environment - and it works fine. Seems like its only when its a new installation I get this problem.

Kahuna,

Try enabling tracing for the Server class, it should produce the create table statement in the log file (usually servoy_log.txt) by adding this line in your servoy.properties file:

log4j.logger.com.servoy.j2db.persistence.Server=TRACE

Steps:

  • stop developer
  • drop all servoy_* tables in your mysql repository
  • add the log4j line
  • start developer and get it to create the repository again.

Rob

Rob - here is the log info from that run (using your instructions):

2009-03-13 09:08:31,687 DEBUG [Thread-3] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:31,687 DEBUG [Thread-3] com.servoy.j2db.persistence.Server - server: repository_server, url=jdbc:mysql://localhost/servoy_repository
2009-03-13 09:08:32,343 DEBUG [Thread-3] com.servoy.j2db.persistence.Server - Loaded the get connection for server repository_server in 1 times
2009-03-13 09:08:32,343 DEBUG [Thread-3] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=Thread-3
2009-03-13 09:08:32,375 DEBUG [Thread-3] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:32,375 DEBUG [Thread-3] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=Thread-3
2009-03-13 09:08:32,390 ERROR [Thread-3] com.servoy.j2db.util.Debug - Throwable
com.servoy.j2db.persistence.RepositoryException: No repository found in the database.
at com.servoy.j2db.persistence.Repository.testIfValid(Repository.java:39)
at com.servoy.j2db.persistence.Repository.(Repository.java:178)
at com.servoy.j2db.persistence.Repository.(Repository.java:1641)
at com.servoy.j2db.persistence.Server.getRepository(Server.java:730)
at com.servoy.j2db.server.ApplicationServer.initFromSerclipse(ApplicationServer.java:353)
at com.servoy.eclipse.core.ServoyModel.startAppServer(ServoyModel.java:182)
at com.servoy.eclipse.core.util.SplashHandler$1.run(SplashHandler.java:2)
at java.lang.Thread.run(Unknown Source)
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - Loaded the get connection for server repository_server in 1 times
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=TaskExecuter[0]
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=TaskExecuter[0]
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - Loaded the get connection for server repository_server in 1 times
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=TaskExecuter[0]
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:32,421 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:32,437 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=TaskExecuter[0]
2009-03-13 09:08:32,437 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:32,437 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:32,437 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=TaskExecuter[0]
2009-03-13 09:08:32,437 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:32,437 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:32,437 DEBUG [TaskExecuter[0]] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=TaskExecuter[0]
2009-03-13 09:08:48,015 DEBUG [Worker-4] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:48,015 DEBUG [Worker-4] com.servoy.j2db.persistence.Server - Loaded the get connection for server repository_server in 1 times
2009-03-13 09:08:48,015 DEBUG [Worker-4] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=Worker-4
2009-03-13 09:08:48,015 DEBUG [Worker-4] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:48,015 DEBUG [Worker-4] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=Worker-4
2009-03-13 09:08:51,718 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:51,718 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:51,718 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:51,718 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:51,718 DEBUG [main] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:51,718 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,062 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting unmanaged connection
2009-03-13 09:08:52,312 DEBUG [main] com.servoy.j2db.persistence.Server - create table servoy_content_spec (content_id integer not null, object_type_id integer not null, property_name varchar(50) not null, type_id integer not null, display_seq integer default null, default_textual_classvalue varchar(200) default null, is_metadata integer default null, primary key (content_id))
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - Column name content_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - Column name object_type_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - Column name property_name type 12 lenght 50 nullable false
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - Column name type_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - Column name display_seq type 4 lenght 10 nullable true
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - Column name default_textual_classvalue type 12 lenght 200 nullable true
2009-03-13 09:08:52,453 DEBUG [main] com.servoy.j2db.persistence.Server - Column name is_metadata type 4 lenght 10 nullable true
2009-03-13 09:08:52,468 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,468 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,468 DEBUG [main] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:52,468 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_content_spec tableType TABLE
2009-03-13 09:08:52,468 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,468 DEBUG [main] com.servoy.j2db.persistence.Server - create table servoy_element_properties (element_property_id integer not null, element_id integer not null, content_id integer not null, property_value varchar(4000) not null, revision integer not null, sequence integer not null, primary key (element_property_id))
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Column name element_property_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Column name element_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Column name content_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Column name property_value type 12 lenght 4000 nullable false
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Column name revision type 4 lenght 10 nullable false
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Column name sequence type 4 lenght 10 nullable false
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_content_spec tableType TABLE
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_element_properties tableType TABLE
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,562 DEBUG [main] com.servoy.j2db.persistence.Server - create table servoy_object_types (object_type_id integer not null, next_seq integer not null, seq_cache_size integer not null, client_id_lock varchar(50) default null, name varchar(100) default null, description varchar(200) default null, java_class varchar(200) default null, primary key (object_type_id))
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Column name object_type_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Column name next_seq type 4 lenght 10 nullable false
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Column name seq_cache_size type 4 lenght 10 nullable false
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Column name client_id_lock type 12 lenght 50 nullable true
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Column name name type 12 lenght 100 nullable true
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Column name description type 12 lenght 200 nullable true
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Column name java_class type 12 lenght 200 nullable true
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_content_spec tableType TABLE
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_element_properties tableType TABLE
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_object_types tableType TABLE
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,656 DEBUG [main] com.servoy.j2db.persistence.Server - create table servoy_releases (pk_id integer not null, release_number integer not null, root_element_id integer not null, element_id integer not null, revision integer not null, creation_date datetime default null, primary key (pk_id))
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Column name pk_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Column name release_number type 4 lenght 10 nullable false
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Column name root_element_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Column name element_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Column name revision type 4 lenght 10 nullable false
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Column name creation_date type 93 lenght 19 nullable true
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_content_spec tableType TABLE
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_element_properties tableType TABLE
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_object_types tableType TABLE
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_releases tableType TABLE
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,750 DEBUG [main] com.servoy.j2db.persistence.Server - create table servoy_user_properties (user_property_id integer not null, user_id integer not null, name varchar(100) not null, property_value varchar(4000) not null, primary key (user_property_id))
2009-03-13 09:08:52,843 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Column name user_property_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Column name user_id type 4 lenght 10 nullable false
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Column name name type 12 lenght 100 nullable false
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Column name property_value type 12 lenght 4000 nullable false
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: getting managed connection
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Database name MySQL
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_content_spec tableType TABLE
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_element_properties tableType TABLE
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_object_types tableType TABLE
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_releases tableType TABLE
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - Table Name servoy_user_properties tableType TABLE
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - create table servoy_columninfo (connection_name varchar(50) not null, tablename varchar(50) not null, columnname varchar(50) not null, columninfo_id integer not null, auto_enter_type integer not null, system_value integer default null, pre_sequence_chars varchar(50) default null, post_sequence_chars varchar(50) default null, next_seq bigint default null, sequence_stepsize integer default null, client_id_lock varchar(50) default null, default_value varchar(4000) default null, lookup_value varchar(4000) default null, foreign_type varchar(150) default null, validator_name varchar(200) default null, validator_properties varchar(4000) default null, converter_name varchar(200) default null, converter_properties varchar(4000) default null, title_text varchar(200) default null, default_format varchar(200) default null, description varchar(4000) default null, is_row_ident integer default null, db_sequence_name varchar(50) default null, element_template_properties varchar(4000) default null, primary key (columnname, connection_name, tablename))
2009-03-13 09:08:52,875 DEBUG [main] com.servoy.j2db.persistence.Server - repository_server: Closed connection, thread=main

Workspace Log

!SESSION 2009-03-13 09:08:15.296 -----------------------------------------------
eclipse.buildId=M20071023-1652
java.version=1.6.0_11
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_GB
Framework arguments: --launcher.XXMaxPermSize 256M
Command-line arguments: -os win32 -ws win32 -arch x86 --launcher.XXMaxPermSize 256M

!ENTRY com.servoy.eclipse.core 1 0 2009-03-13 09:08:40.125
!MESSAGE Cannot find any valid solution to activate.

!ENTRY org.eclipse.ui.workbench 2 0 2009-03-13 09:08:42.437
!MESSAGE A handler conflict occurred. This may disable some commands.
!SUBENTRY 1 org.eclipse.ui.workbench 2 0 2009-03-13 09:08:42.437
!MESSAGE Conflict for ‘AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction’:
HandlerActivation(commandId=AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction,
handler=ActionDelegateHandlerProxy(null,org.eclipse.ui.cheatsheets.CheatSheetExtensionFactory:helpMenuAction),
expression=AndExpression(ActionSetExpression(org.eclipse.ui.cheatsheets.actionSet,org.eclipse.ui.internal.WorkbenchWindow@13ec758),WorkbenchWindowExpression(org.eclipse.ui.internal.WorkbenchWindow@13ec758)),sourcePriority=16640)
HandlerActivation(commandId=AUTOGEN:::org.eclipse.ui.cheatsheets.actionSet/org.eclipse.ui.cheatsheets.actions.CheatSheetHelpMenuAction,
handler=ActionDelegateHandlerProxy(null,org.eclipse.ui.cheatsheets.CheatSheetExtensionFactory:helpMenuAction),
expression=AndExpression(ActionSetExpression(org.eclipse.ui.cheatsheets.actionSet,org.eclipse.ui.internal.WorkbenchWindow@13ec758),WorkbenchWindowExpression(org.eclipse.ui.internal.WorkbenchWindow@13ec758)),sourcePriority=16640)

!ENTRY com.servoy.eclipse.core 4 0 2009-03-13 09:08:55.328
!MESSAGE Failed to create/upgrade repository.
!STACK 0
com.servoy.j2db.persistence.RepositoryException: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
at com.servoy.j2db.persistence.RepositoryUpdater.createRepositoryTables(RepositoryUpdater.java:1307)
at com.servoy.j2db.persistence.Server.createActualRepositoryTables(Server.java:530)
at com.servoy.j2db.persistence.Server.createRepositoryTables(Server.java:622)
at com.servoy.eclipse.team.ServoyTeamProvider$6.run(ServoyTeamProvider.java:4)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:129)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3659)
at org.eclipse.swt.widgets.Display.msgFilterProc(Display.java:3041)
at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method)
at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:228)
at org.eclipse.swt.widgets.Display.runPopups(Display.java:3708)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3287)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)
Caused by: com.servoy.j2db.persistence.RepositoryException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
at com.servoy.j2db.persistence.Server.syncTableObjWithDB(Server.java:411)
at com.servoy.j2db.persistence.RepositoryUpdater.recreateServoyColumnInfo(RepositoryUpdater.java:268)
at com.servoy.j2db.persistence.RepositoryUpdater.createRepositoryTables(RepositoryUpdater.java:1442)
… 31 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.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:406)
at com.mysql.jdbc.Util.getInstance(Util.java:381)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2548)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2477)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:741)
at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:587)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.servoy.j2db.persistence.datasource.Ze.invoke(Ze.java:5)
at $Proxy0.execute(Unknown Source)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:183)
at com.servoy.j2db.persistence.Server.syncTableObjWithDB(Server.java:1456)
… 33 more

Well, this is the statement your database is choking on:

create table servoy_columninfo
(
	connection_name varchar(50) not null,
	tablename varchar(50) not null,
	columnname varchar(50) not null,
	columninfo_id integer not null,
	auto_enter_type integer not null,
	system_value integer default null,
	pre_sequence_chars varchar(50) default null,
	post_sequence_chars varchar(50) default null,
	next_seq bigint default null,
	sequence_stepsize integer default null,
	client_id_lock varchar(50) default null,
	default_value varchar(4000) default null,
	lookup_value varchar(4000) default null,
	foreign_type varchar(150) default null,
	validator_name varchar(200) default null,
	validator_properties varchar(4000) default null,
	converter_name varchar(200) default null,
	converter_properties varchar(4000) default null,
	title_text varchar(200) default null,
	default_format varchar(200) default null,
	description varchar(4000) default null,
	is_row_ident integer default null,
	db_sequence_name varchar(50) default null,
	element_template_properties varchar(4000) default null,

	primary key (columnname, connection_name, tablename)
)

Why is it complaining? the total size is approx 25k, less than half the max size.

Now you can try configuring your database to accept this create statement.

Rob

rgansevles:
Well, this is the statement your database is choking on:

create table servoy_columninfo

(
connection_name varchar(50) not null,
tablename varchar(50) not null,
columnname varchar(50) not null,
columninfo_id integer not null,
auto_enter_type integer not null,
system_value integer default null,
pre_sequence_chars varchar(50) default null,
post_sequence_chars varchar(50) default null,
next_seq bigint default null,
sequence_stepsize integer default null,
client_id_lock varchar(50) default null,
default_value varchar(4000) default null,
lookup_value varchar(4000) default null,
foreign_type varchar(150) default null,
validator_name varchar(200) default null,
validator_properties varchar(4000) default null,
converter_name varchar(200) default null,
converter_properties varchar(4000) default null,
title_text varchar(200) default null,
default_format varchar(200) default null,
description varchar(4000) default null,
is_row_ident integer default null,
db_sequence_name varchar(50) default null,
element_template_properties varchar(4000) default null,

primary key (columnname, connection_name, tablename)

)



Why is it complaining? the total size is approx 25k, less than half the max size.

Now you can try configuring your database to accept this create statement.

Rob

So, Rob, what you’re saying is that a brand new installation of MySQL 5.1 wont allow Servoy to create a table of the required attributes / size? Is that Right???

Not sure what should I reconfigure here Rob.? Go into the currently created servoy repository structure create the table, and set the column attributes to the same as the code above?

Kahuna,

What I mean, there is something special with your mysql setup.
It complains that the row size is too large, but that does not seem to make sense if you add up the column sizes.

Rob

Rob - I agree this looks like less than 25k but MySQL is reporting it as over 65k - even using Navicat to generate the table - it gives a row too large error. Obviously something in that create that looks like 65k to MySQL - cant see anything in the ini file that I can modify to make it more acceptable either.

(InnoDb as the default table type).

Help appreciated

Ian

Follow up - I tried to create this table by hand and it still reports a row too big error.

If I take out one of the 4000 varchars it’s allowed???

Can I increase the max row size acceptable in MySQL?

Investigation showed that the issue was probably related to the encoding applied in the mysql db.
Mysql reserves 3 bytes per character when encoding is set to utf8 and the max row size is 65k.
One of the servoy repository tables uses 6 columns of 4000 characters.

In next release this number is decreased to prevent this issue.

Rob

rgansevles:
Investigation showed that the issue was probably related to the encoding applied in the mysql db.
Mysql reserves 3 bytes per character when encoding is set to utf8 and the max row size is 65k.
One of the servoy repository tables uses 6 columns of 4000 characters.

In next release this number is decreased to prevent this issue.

Rob

Deleted