Unresolved dependency with tranquility 0.50

Hello,

I’m trying to use the tranquility client to feed data to Druid (0.8.0). But when I’m adding tranquility_2.10 on version 0.5.0, sbt cannot resolve the following dependency :

[warn] ::::::::::::::::::::::::::::::::::::::::::::::

[warn] :: UNRESOLVED DEPENDENCIES ::

[warn] ::::::::::::::::::::::::::::::::::::::::::::::

[warn] :: com.centerkey.utils#barebonesbrowserlaunch;3.1: not found

[warn] ::::::::::::::::::::::::::::::::::::::::::::::

[warn]

[warn] Note: Unresolved dependencies path:

[warn] com.centerkey.utils:barebonesbrowserlaunch:3.1

[warn] ± net.java.dev.jets3t:jets3t:0.9.1

[warn] ± io.druid:druid-indexing-hadoop:0.7.0

[warn] ± io.druid:druid-indexing-service:0.7.0

[warn] ± io.druid:tranquility_2.10:0.5.0 (/home/nphung/git/hot-fca-nextgen/build.sbt#L54-76)

[trace] Stack trace suppressed: run ‘last *:update’ for the full output.

[error] (*:update) sbt.ResolveException: unresolved dependency: com.centerkey.utils#barebonesbrowserlaunch;3.1: not found

sbt.ResolveException: unresolved dependency: com.centerkey.utils#barebonesbrowserlaunch;3.1: not found

at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:291)

at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:188)

at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:165)

at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155)

at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155)

at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:132)

at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:57)

at sbt.IvySbt$$anon$4.call(Ivy.scala:65)

at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93)

at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:78)

at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:97)

at xsbt.boot.Using$.withResource(Using.scala:10)

at xsbt.boot.Using$.apply(Using.scala:9)

at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58)

at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48)

at xsbt.boot.Locks$.apply0(Locks.scala:31)

at xsbt.boot.Locks$.apply(Locks.scala:28)

at sbt.IvySbt.withDefaultLogger(Ivy.scala:65)

at sbt.IvySbt.withIvy(Ivy.scala:127)

at sbt.IvySbt.withIvy(Ivy.scala:124)

at sbt.IvySbt$Module.withModule(Ivy.scala:155)

at sbt.IvyActions$.updateEither(IvyActions.scala:165)

at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1369)

at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1365)

at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1399)

at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1397)

at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:37)

at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1402)

at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1396)

at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:60)

at sbt.Classpaths$.cachedUpdate(Defaults.scala:1419)

at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1348)

at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1310)

at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)

at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)

at sbt.std.Transform$$anon$4.work(System.scala:63)

at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)

at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)

at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)

at sbt.Execute.work(Execute.scala:235)

at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)

at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)

at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)

at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

[error] sbt.ResolveException: unresolved dependency: com.centerkey.utils#barebonesbrowserlaunch;3.1: not found

[error] Use ‘last’ for the full log.

I add the repository https://metamx.artifactoryonline.com/metamx/pub-libs-releases-local as expected but this repository doesn’t contain the dependency. If I remove tranquility_2.10, the sbt project is building itself without trouble. Is there a new version of tranquility for Druid 0.8.0 ? Do you know where to get the missing dependency ?

Regards,

Nicolas PHUNG

Hello,

I found the jar here http://centerkey.com/java/browser/ and put in in my local repository. It’d be better to have it on https://metamx.artifactoryonline.com/metamx/pub-libs-releases-local as com.centerkey.utils:barebonesbrowserlaunch:3.1 dependency. After putting it, my project with druid dependency works.

I hope this helps

Regards,

Nicolas P.

Nicolas, this is an artifact of this particular version of druid depending on jets3t 0.9.1, which introduces this unnecessary dependencies. Updating the tranquility dependencies to Druid 0.7.3 should fix the issues

Hi Xavier,

Thanks for your reply.

I’m using this dependency :

<dependency>
  <groupId>io.druid</groupId>
  <artifactId>tranquility_2.10</artifactId>
  <version>0.5.0</version>
</dependency>

Which should be the latest according to https://github.com/druid-io/tranquility. Which tranquility dependency version should I use that fix this issue ?

Regards,

Nicolas Phung

Hey Nicolas, the next release of tranquility will fix this. In the meantime, since the dependency is not actually necessary, you can work around it by excluding it. With Maven it would look like this:

io.druid

tranquility_2.10

0.5.0

com.centerkey.utils

barebonesbrowserlaunch

You can do something similar in sbt, see “Exclude Transitive Dependencies” here: http://www.scala-sbt.org/0.13/docs/Library-Management.html