BIMserver icon indicating copy to clipboard operation
BIMserver copied to clipboard

Plugin installation fails during setup for some plugins

Open hlg opened this issue 6 years ago • 1 comments

During setup, some plugins can not be installed, e.g. ifcopenshell, binaryserializers. This happens under Linux, with 1.5.147. I am seeing this error:

19:22:35 INFO  [PluginInterface.installPluginBundle]: 0.0.65                                                                           (InstallPluginBundle.java:70) 
org.eclipse.aether.resolution.ArtifactResolutionException: Could not transfer artifact org.opensourcebim:binaryserializers:jar:0.0.65 from/to central (http://central.maven.org/maven2): Connection reset
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:223)
	at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:294)
	at org.bimserver.plugins.MavenPluginLocation.getVersionJar(MavenPluginLocation.java:311)
	at org.bimserver.plugins.RepositoryMavenPluginBundle.getJarInputStream(RepositoryMavenPluginBundle.java:65)
	at org.bimserver.plugins.PluginBundleManager.install(PluginBundleManager.java:140)
	at org.bimserver.database.actions.InstallPluginBundle.execute(InstallPluginBundle.java:73)
	at org.bimserver.database.actions.InstallPluginBundle.execute(InstallPluginBundle.java:35)
	at org.bimserver.database.DatabaseSession.executeAndCommitAction(DatabaseSession.java:735)
	at org.bimserver.database.DatabaseSession.executeAndCommitAction(DatabaseSession.java:727)
	at org.bimserver.webservices.impl.PluginServiceImpl.installPluginBundle(PluginServiceImpl.java:1442)
	at org.bimserver.generated.PluginInterfaceReflectorfGUBzOkvPltQ_1.callMethod(PluginInterfaceReflectorfGUBzOkvPltQ_1.java)
	at org.bimserver.shared.meta.SMethod.invoke(SMethod.java:223)
	at org.bimserver.JsonHandler.processSingleRequest(JsonHandler.java:166)
	at org.bimserver.JsonHandler.execute(JsonHandler.java:77)
	at org.bimserver.servlets.JsonApiServlet.service(JsonApiServlet.java:67)
	at org.bimserver.servlets.RootServlet.service(RootServlet.java:141)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
	at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:214)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1700)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1667)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.Server.handle(Server.java:505)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:786)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:743)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.eclipse.aether.transfer.ArtifactTransferException: Could not transfer artifact org.opensourcebim:binaryserializers:jar:0.0.65 from/to central (http://central.maven.org/maven2): Connection reset
	at org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed(ArtifactTransportListener.java:43)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:355)
	at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:581)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:249)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:520)
	at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:421)
	... 51 more
Caused by: java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(SocketInputStream.java:210)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at org.apache.http.impl.io.AbstractSessionInputBuffer.read(AbstractSessionInputBuffer.java:200)
	at org.apache.http.impl.io.ContentLengthInputStream.read(ContentLengthInputStream.java:176)
	at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:135)
	at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:148)
	at org.eclipse.aether.spi.connector.transport.AbstractTransporter.copy(AbstractTransporter.java:200)
	at org.eclipse.aether.spi.connector.transport.AbstractTransporter.utilGet(AbstractTransporter.java:96)
	at org.eclipse.aether.transport.http.HttpTransporter.access$100(HttpTransporter.java:72)
	at org.eclipse.aether.transport.http.HttpTransporter$EntityGetter.handle(HttpTransporter.java:516)
	at org.eclipse.aether.transport.http.HttpTransporter.execute(HttpTransporter.java:294)
	at org.eclipse.aether.transport.http.HttpTransporter.implGet(HttpTransporter.java:243)
	at org.eclipse.aether.spi.connector.transport.AbstractTransporter.get(AbstractTransporter.java:59)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$GetTaskRunner.runTask(BasicRepositoryConnector.java:447)
	at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:350)
	... 56 more
19:22:35 ERROR [PluginInterface.installPluginBundle]:                                                                                  (InstallPluginBundle.java:75) 
java.lang.NullPointerException: null
	at org.bimserver.plugins.PluginBundleManager.install(PluginBundleManager.java:144)
	at org.bimserver.database.actions.InstallPluginBundle.execute(InstallPluginBundle.java:73)
	at org.bimserver.database.actions.InstallPluginBundle.execute(InstallPluginBundle.java:35)
	at org.bimserver.database.DatabaseSession.executeAndCommitAction(DatabaseSession.java:735)
	at org.bimserver.database.DatabaseSession.executeAndCommitAction(DatabaseSession.java:727)
	at org.bimserver.webservices.impl.PluginServiceImpl.installPluginBundle(PluginServiceImpl.java:1442)
	at org.bimserver.generated.PluginInterfaceReflectorfGUBzOkvPltQ_1.callMethod(PluginInterfaceReflectorfGUBzOkvPltQ_1.java)
	at org.bimserver.shared.meta.SMethod.invoke(SMethod.java:223)
	at org.bimserver.JsonHandler.processSingleRequest(JsonHandler.java:166)
	at org.bimserver.JsonHandler.execute(JsonHandler.java:77)
	at org.bimserver.servlets.JsonApiServlet.service(JsonApiServlet.java:67)
	at org.bimserver.servlets.RootServlet.service(RootServlet.java:141)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623)
	at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:214)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1700)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1667)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.Server.handle(Server.java:505)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:786)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:743)
	at java.lang.Thread.run(Thread.java:748)

In the web interface I only see a UserException. Even if the root cause of this error is external and uncontrollable, e.g. network issues, the message could be a bit more specific.

I am not sure whether this is reproducible or is caused by some particular network setup or Maven hickup. To try to reproduce, start with a fresh install, run setup with all plugins. Disable the plugin that failed to see whether other plugins are also affected. Some plugins do install well, e.g. bimviews, ifcplugins.

This also seems to happen for some older versions (tried 1.5.138 and 1.5.125), which makes me suspect it is related to my particular current setup. I also went to Maven Central to see that the affected plugins are indeed there, e.g. org.opensourcebim:binaryserializers:jar:0.0.65 in the stacktrace above.

hlg avatar Jun 11 '19 17:06 hlg

In a different network now, with same OS and JVM, I can not reproduce this.

hlg avatar Jun 18 '19 17:06 hlg