Open benwck opened 8 years ago
Overlord raise the exception but i checked the log and the module is correctly loaded: 2016-06-23T15:03:43,693 INFO [main] io.druid.initialization.Initialization - Loading extension [druid-spark-batch] for class [io.druid.initialization.DruidModule]
Hi Ben, thanks for the information. A few things to double-check. Make sure you are using the https://github.com/metamx/druid-spark-batch/tree/druid0.9.0 branch for druid 0.9.0, and please make sure if you are using a middle manager that ALSO loads the extension properly.
Actually my middleManager doesn't load the extension. I made the same things on both nodes but it is not working on the middle manager. I will investigate and let you know. Many thanks !
I have the following logs on both middleManager and Overlord, still got the same error. Logs: 2016-06-28T08:14:11,916 INFO [main] io.druid.initialization.Initialization - Loading extension [druid-spark-batch] for class [io.druid.cli.CliCommandCreator] 2016-06-28T08:14:11,917 INFO [main] io.druid.initialization.Initialization - added URL[file:/home/ec2-user/druid-0.9.0/extensions/druid-spark-batch/druid-spark-batch_2.10.jar] Error: { "error": "Could not resolve type id 'index_spark' into a subtype of [simple type, class io.druid.indexing.common.task.Task]\n at [Source: HttpInputOverHTTP@7e42fe95; line: 54, column: 38]" }
Any suggestions on how investigate on this problem ?
@benwck Assuming there are no errors reported during the node startup, the only thing I could think of would be to do a test with just the overlord locally (where the runner is local rather than remote). And see if the overlord takes the task under that condition. That way you eliminate weird potential cross-node communication stuff
I am having a similar issue. As @drcrallen suggested I am running overload locally (i.e., single node cluster with all services running locally). I also built the jar with spark 1.6.1 and added jar to $DRUID_HOME/extensions/druid-spark-batch/ on both the overlord and middle managers. Also added druid.indexer.task.defaultHadoopCoordinates=["org.apache.spark:spark-core_2.10:1.6.1"] in runtime properties of overlord and middle managers. Then I used pull-deps to get org.apache.spark:spark-core_2.10:1.6.1 in $DRUID_HOME/hadoop-dependencies. When I started all the services overlord and middle managers started with no error logs. However, when I am submitting the job with JSON file I am getting the same error {"error":"Could not resolve type id 'index_spark' into a subtype of [simple type, class io.druid.indexing.common.task.Task]\n at [Source: HttpInputOverHTTP@2c648040; line: 1, column: 3426]"}. Any idea?
Make sure to submit your task to the /druid/indexer/v1/task
endpoint, and not to /druid/indexer/v1/supervisor
. I lost a lot of time because of this :D
Hey guys,
I don't want to spam in druid-development group thread, so i post here. I actually build the jar on my own with spark 1.6.1, add the jar to /druidpath/extensions/druid-spark-batch/ on both the overlord and middle manager. Added druid.indexer.task.defaultHadoopCoordinates=["org.apache.spark:spark-core_2.10:1.6.1"] in the two nodes runtime properties, restarted nodes then submit the job with json file. Still get: "error": "Could not resolve type id 'index_spark' into a subtype of [simple type, class io.druid.indexing.common.task.Task]\n at [Source: HttpInputOverHTTP@2cecd2f2; line: 54, column: 38]" Any idea or morde doc provided out of here ?
Thanks, Ben