Bug #12412
closedException and stacktrace with datasources plugin
Description
The plugin is throwing that exception on startup:
[2018-04-11 08:54:29] ERROR application - Fatal error during boot, Rudder will stop now java.lang.NoSuchMethodError: scala.util.Properties$.coloredOutputEnabled()Z at scala.reflect.internal.TypeDebugging$typeDebug$.<init>(TypeDebugging.scala:62) at scala.reflect.internal.SymbolTable.typeDebug$lzycompute$1(SymbolTable.scala:16) at scala.reflect.internal.SymbolTable.typeDebug(SymbolTable.scala:16) at scala.reflect.runtime.JavaUniverseForce.force(JavaUniverseForce.scala:54) at scala.reflect.runtime.JavaUniverseForce.force$(JavaUniverseForce.scala:6) at scala.reflect.runtime.JavaUniverse.force(JavaUniverse.scala:18) at scala.reflect.runtime.JavaUniverse.init(JavaUniverse.scala:150) at scala.reflect.runtime.JavaUniverse.<init>(JavaUniverse.scala:81) at scala.reflect.runtime.package$.universe$lzycompute(package.scala:17) at scala.reflect.runtime.package$.universe(package.scala:17) at doobie.util.meta$MetaInstances.$init$(meta.scala:428) at doobie.util.meta$Meta$.<init>(meta.scala:222) at doobie.util.meta$Meta$.<clinit>(meta.scala) at doobie.Modules.$init$(aliases.scala:28) at doobie.package$.<init>(package.scala:15) at doobie.package$.<clinit>(package.scala) at com.normation.rudder.db.Doobie$.<init>(Doobie.scala:79) at com.normation.rudder.db.Doobie$.<clinit>(Doobie.scala) at com.normation.rudder.repository.jdbc.EventLogJdbcRepository.getEventLogByCriteria(EventLogJdbcRepository.scala:217) at com.normation.rudder.services.eventlog.EventLogDeploymentService.getLastDeployement(EventLogServiceImpl.scala:57) at com.normation.rudder.batch.AsyncDeploymentAgent.getLastFinishedDeployment(AsyncDeploymentAgent.scala:137) at com.normation.rudder.batch.AsyncDeploymentAgent.<init>(AsyncDeploymentAgent.scala:124) at bootstrap.liftweb.RudderConfig$.asyncDeploymentAgentImpl$lzycompute(AppConfig.scala:1368) at bootstrap.liftweb.RudderConfig$.asyncDeploymentAgentImpl(AppConfig.scala:1363) at bootstrap.liftweb.RudderConfig$.dyngroupUpdaterBatch$lzycompute(AppConfig.scala:1511) at bootstrap.liftweb.RudderConfig$.dyngroupUpdaterBatch(AppConfig.scala:1508) at bootstrap.liftweb.RudderConfig$.newNodeManagerImpl$lzycompute(AppConfig.scala:1403) at bootstrap.liftweb.RudderConfig$.newNodeManagerImpl(AppConfig.scala:1376) at bootstrap.liftweb.RudderConfig$.<init>(AppConfig.scala:371) at bootstrap.liftweb.RudderConfig$.<clinit>(AppConfig.scala) at bootstrap.liftweb.LiftInitContextListener.contextInitialized(LiftInitContextListener.scala:109)
Updated by Alexis Mousset over 6 years ago
- Subject changed from Exception and stacktrce with datasources plugin on 4.3 to Exception and stacktrace with datasources plugin on 4.3
Updated by François ARMAND over 6 years ago
- Status changed from New to In progress
Updated by François ARMAND over 6 years ago
That problem only appear with the packaged plugin (ie the rpkg) so most likely we are embeded a bad dependency in the jar.
It may be link to: https://github.com/tpolecat/doobie/issues/568
Updated by François ARMAND over 6 years ago
Some baby steps here:
- the problem is due to the embeding of a dependency in the plugin that is already provided in Rudder in an other version (see: https://github.com/tpolecat/doobie/issues/711)
- this is due to a misunderstanding or a bug in maven-assembly-plugin (see: https://issues.apache.org/jira/browse/MASSEMBLY-883 and https://stackoverflow.com/questions/49784429/how-to-exclude-transitive-dependencies-with-scope-provided-with-maven-assembly-p)
- the problem can be side-stepped by either excluding by hand all provided dependencies, or by forcing the version of dependencies to be exactly the same in all maven resolution path. Both solution are extremelly fragile, and so a generic solution would be much prefered.
Updated by François ARMAND over 6 years ago
- Category changed from 71 to Plugins integration
- Target version changed from 4.3.0 to 4.1.11
It seems to be decause of a bug in the maven-assemble-plugin. It also seems that the "shade" plugin is able to do the same thing but actully works as expected.
Updated by François ARMAND over 6 years ago
- Status changed from In progress to Pending technical review
- Assignee changed from François ARMAND to Vincent MEMBRÉ
- Pull Request set to https://github.com/Normation/rudder-plugins/pull/33
Updated by François ARMAND over 6 years ago
- Status changed from Pending technical review to Pending release
Applied in changeset commit:rudder-plugins|2373ad7cd09f9147600fc3927e51b6f023e5b85e.
Updated by Alexis Mousset over 6 years ago
- Subject changed from Exception and stacktrace with datasources plugin on 4.3 to Exception and stacktrace with datasources plugin
Updated by Alexis Mousset over 6 years ago
- Status changed from Pending release to Released
Updated by Vincent MEMBRÉ over 6 years ago
- Project changed from Rudder to 54
- Category deleted (
Plugins integration) - Target version changed from 4.1.11 to 428
Updated by Vincent MEMBRÉ about 6 years ago
- Project changed from 54 to Datasources
- Target version changed from 428 to 4.1-1.2