Server Refusing To Import

I have a very strange thing happening - the server is refusing to import a solution.

I get this message:

Importing cris_sj_conf.servoy…

[warning] Reserved words used as table or column names: columns: role active;
[info] Deleting existing Style ‘cris’.
[error] Solution ‘cris_sj_conf’ already exists. Import failed.
[error] Operation cancelled

Here’s what I’ve done so far:

  • Rebuilt the repository (new database and started using -updateRepository option);
  • Deleted the solution (and modules) and restarted the server (same result)

ANY IDEAS on what’s going on?

Server Config:

Server Information
Servoy version 7.4.4 -releaseNumber 2039
Port used by RMI Registry: 1100
Repository version 44

JVM Information
java.vm.name=Java HotSpot™ Client VM
java.version=1.8.0_91
java.vm.info=mixed mode
java.vm.vendor=Oracle Corporation

Operating System Information
os.name=Windows Server 2012
os.version=6.2
os.arch=x86

From the server log:

com.servoy.j2db.persistence.RepositoryException: Operation cancelled 
    	at com.servoy.j2db.server.Zc.Zk.getRootObjectNameForImport(Zk.java:361) 
    	at com.servoy.j2db.server.Zc.Zdb.Za(Zdb.java:93) 
    	at com.servoy.j2db.server.Zc.Zdb.importFromJarFile(Zdb.java:363) 
    	at com.servoy.j2db.server.servlets.ConfigServlet.Zi(ConfigServlet.java:3017) 
    	at com.servoy.j2db.server.servlets.ConfigServlet.service(ConfigServlet.java:1312) 
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615) 
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) 
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) 
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    	at java.lang.Thread.run(Unknown Source)
2016-07-12 12:56	http-8181-2	ERROR	com.servoy.j2db.util.Debug	Throwable	 	 
java.sql.SQLException: no transaction in progress 
    	at com.servoy.j2db.datasource.Zo.rollback(Zo.java:117) 
    	at com.servoy.j2db.util.Utils.rollback(Utils.java:1598) 
    	at com.servoy.j2db.server.Zc.Zk.importingDone(Zk.java:464) 
    	at com.servoy.j2db.server.Zc.Zdb.Za(Zdb.java:142) 
    	at com.servoy.j2db.server.Zc.Zdb.importFromJarFile(Zdb.java:363) 
    	at com.servoy.j2db.server.servlets.ConfigServlet.Zi(ConfigServlet.java:3017) 
    	at com.servoy.j2db.server.servlets.ConfigServlet.service(ConfigServlet.java:1312) 
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615) 
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) 
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) 
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    	at java.lang.Thread.run(Unknown Source)

Interesting. It’s almost like trying to do a clean import twice on top of an empty repo (so it thinks there’s another solution with the same name in there (uuids don’t match)).
Do you manually import it or do you use a tool/post? (I’m thinking that somehow import is started twice quickly) Is clean import checked?

Can you also enable tracing for the import log statements? In your servoy.properties set log4j.logger.com.servoy.j2db.persistence.XMLInMemoryImportHandlerVersions11AndHigher=TRACE

Thanks Andrei for your response!

I will add the tracing.

I do the import manually - no automated tool.

I’ll let you know the results.

OK - so I added that line to the servoy.properties file, restarted the Servoy Application Server, and tried to import again (same result).

The log was the same as well…

java.sql.SQLException: no transaction in progress
	at com.servoy.j2db.datasource.Zo.rollback(Zo.java:117)
	at com.servoy.j2db.util.Utils.rollback(Utils.java:1598)
	at com.servoy.j2db.server.Zc.Zk.importingDone(Zk.java:464)
	at com.servoy.j2db.server.Zc.Zdb.Za(Zdb.java:142)
	at com.servoy.j2db.server.Zc.Zdb.importFromJarFile(Zdb.java:363)
	at com.servoy.j2db.server.servlets.ConfigServlet.Zi(ConfigServlet.java:3017)
	at com.servoy.j2db.server.servlets.ConfigServlet.service(ConfigServlet.java:1312)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)
2016-07-13 06:09:05,621 ERROR [http-8181-1] com.servoy.j2db.util.Debug - Throwable
com.servoy.j2db.persistence.RepositoryException: Operation cancelled
	at com.servoy.j2db.server.Zc.Zk.getRootObjectNameForImport(Zk.java:361)
	at com.servoy.j2db.server.Zc.Zdb.Za(Zdb.java:93)
	at com.servoy.j2db.server.Zc.Zdb.importFromJarFile(Zdb.java:363)
	at com.servoy.j2db.server.servlets.ConfigServlet.Zi(ConfigServlet.java:3017)
	at com.servoy.j2db.server.servlets.ConfigServlet.service(ConfigServlet.java:1312)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)

Hmm. You didn’t say if you use clean import or not.

But anyway, if you don’t import twice and the repo. is empty initially it’s strange.
Maybe it’s something related to the .servoy file that you are importing. I guess the problem is specific to that one .servoy right?