Broker fails to start with Guice errors

Hi,

I’m trying to upgrade to verion 0.7.1.1 from 0.6.174. After some issues with log4j, and adding the common.runtime.properties to the class path, I was able to get the historical nodes up.

Now I’m trying with the broker nodes, and I get 3 errors with Guice. Any advice on what I’m missing?

2015-05-20T23:31:40,890 ERROR [main] io.druid.cli.CliBroker - Error when starting up. Failing.

com.google.inject.ProvisionException: Guice provision errors:

  1. Error in custom provider, java.lang.IllegalArgumentException

at io.druid.guice.DruidProcessingModule.getProcessingExecutorService(DruidProcessingModule.java:90)

at io.druid.guice.DruidProcessingModule.getProcessingExecutorService(DruidProcessingModule.java:90)

while locating java.util.concurrent.ExecutorService annotated with @io.druid.guice.annotations.Processing()

for parameter 0 at io.druid.query.IntervalChunkingQueryRunnerDecorator.(IntervalChunkingQueryRunnerDecorator.java:38)

while locating io.druid.query.IntervalChunkingQueryRunnerDecorator

for parameter 0 at io.druid.query.timeseries.TimeseriesQueryQueryToolChest.(TimeseriesQueryQueryToolChest.java:75)

at io.druid.guice.QueryToolChestModule.configure(QueryToolChestModule.java:71)

while locating io.druid.query.timeseries.TimeseriesQueryQueryToolChest

while locating io.druid.query.QueryToolChest annotated with @com.google.inject.multibindings.Element(setName=,uniqueId=2, type=MAPBINDER)

at io.druid.guice.DruidBinders.queryToolChestBinder(DruidBinders.java:43)

while locating java.util.Map<java.lang.Class<? extends io.druid.query.Query>, io.druid.query.QueryToolChest>

for parameter 0 at io.druid.query.MapQueryToolChestWarehouse.(MapQueryToolChestWarehouse.java:34)

while locating io.druid.query.MapQueryToolChestWarehouse

while locating io.druid.query.QueryToolChestWarehouse

for parameter 0 at io.druid.client.CachingClusteredClient.(CachingClusteredClient.java:103)

at io.druid.cli.CliBroker$1.configure(CliBroker.java:88)

while locating io.druid.client.CachingClusteredClient

for parameter 1 at io.druid.server.ClientQuerySegmentWalker.(ClientQuerySegmentWalker.java:59)

while locating io.druid.server.ClientQuerySegmentWalker

at io.druid.cli.CliBroker$1.configure(CliBroker.java:100)

while locating io.druid.query.QuerySegmentWalker

for parameter 3 at io.druid.server.QueryResource.(QueryResource.java:89)

while locating io.druid.server.QueryResource

  1. Error in custom provider, java.lang.IllegalArgumentException

at io.druid.guice.DruidProcessingModule.getProcessingExecutorService(DruidProcessingModule.java:90)

at io.druid.guice.DruidProcessingModule.getProcessingExecutorService(DruidProcessingModule.java:90)

while locating java.util.concurrent.ExecutorService annotated with @io.druid.guice.annotations.Processing()

for parameter 0 at io.druid.query.IntervalChunkingQueryRunnerDecorator.(IntervalChunkingQueryRunnerDecorator.java:38)

while locating io.druid.query.IntervalChunkingQueryRunnerDecorator

for parameter 0 at io.druid.query.timeseries.TimeseriesQueryQueryToolChest.(TimeseriesQueryQueryToolChest.java:75)

at io.druid.guice.QueryToolChestModule.configure(QueryToolChestModule.java:71)

while locating io.druid.query.timeseries.TimeseriesQueryQueryToolChest

while locating io.druid.query.QueryToolChest annotated with @com.google.inject.multibindings.Element(setName=,uniqueId=2, type=MAPBINDER)

at io.druid.guice.DruidBinders.queryToolChestBinder(DruidBinders.java:43)

while locating java.util.Map<java.lang.Class<? extends io.druid.query.Query>, io.druid.query.QueryToolChest>

for parameter 0 at io.druid.query.MapQueryToolChestWarehouse.(MapQueryToolChestWarehouse.java:34)

while locating io.druid.query.MapQueryToolChestWarehouse

while locating io.druid.query.QueryToolChestWarehouse

for parameter 0 at io.druid.client.BrokerServerView.(BrokerServerView.java:82)

at io.druid.cli.CliBroker$1.configure(CliBroker.java:89)

while locating io.druid.client.BrokerServerView

at io.druid.cli.CliBroker$1.configure(CliBroker.java:90)

while locating io.druid.client.TimelineServerView

for parameter 1 at io.druid.client.CachingClusteredClient.(CachingClusteredClient.java:103)

at io.druid.cli.CliBroker$1.configure(CliBroker.java:88)

while locating io.druid.client.CachingClusteredClient

for parameter 1 at io.druid.server.ClientQuerySegmentWalker.(ClientQuerySegmentWalker.java:59)

while locating io.druid.server.ClientQuerySegmentWalker

at io.druid.cli.CliBroker$1.configure(CliBroker.java:100)

while locating io.druid.query.QuerySegmentWalker

for parameter 3 at io.druid.server.QueryResource.(QueryResource.java:89)

while locating io.druid.server.QueryResource

  1. Error in custom provider, java.lang.IllegalArgumentException

at io.druid.guice.DruidProcessingModule.getProcessingExecutorService(DruidProcessingModule.java:90)

at io.druid.guice.DruidProcessingModule.getProcessingExecutorService(DruidProcessingModule.java:90)

while locating java.util.concurrent.ExecutorService annotated with @io.druid.guice.annotations.Processing()

for parameter 0 at io.druid.query.IntervalChunkingQueryRunnerDecorator.(IntervalChunkingQueryRunnerDecorator.java:38)

while locating io.druid.query.IntervalChunkingQueryRunnerDecorator

for parameter 0 at io.druid.query.timeseries.TimeseriesQueryQueryToolChest.(TimeseriesQueryQueryToolChest.java:75)

at io.druid.guice.QueryToolChestModule.configure(QueryToolChestModule.java:71)

while locating io.druid.query.timeseries.TimeseriesQueryQueryToolChest

while locating io.druid.query.QueryToolChest annotated with @com.google.inject.multibindings.Element(setName=,uniqueId=2, type=MAPBINDER)

at io.druid.guice.DruidBinders.queryToolChestBinder(DruidBinders.java:43)

while locating java.util.Map<java.lang.Class<? extends io.druid.query.Query>, io.druid.query.QueryToolChest>

for parameter 0 at io.druid.query.MapQueryToolChestWarehouse.(MapQueryToolChestWarehouse.java:34)

while locating io.druid.query.MapQueryToolChestWarehouse

while locating io.druid.query.QueryToolChestWarehouse

for parameter 2 at io.druid.server.ClientQuerySegmentWalker.(ClientQuerySegmentWalker.java:59)

while locating io.druid.server.ClientQuerySegmentWalker

at io.druid.cli.CliBroker$1.configure(CliBroker.java:100)

while locating io.druid.query.QuerySegmentWalker

for parameter 3 at io.druid.server.QueryResource.(QueryResource.java:89)

while locating io.druid.server.QueryResource

Can you try adding `“druid.processing.numThreads” at the broker? See the details at http://druid.io/docs/0.7.1.1/Broker-Config.html#processing

`

`my guess is that you are starting broker on a machine with single core. default value = num cores - 1 = 0, which happens to be invalid.

`

-- himanshu

thank you. that worked.