解决时区导致druid任务构建失败的问题:No buckets?? seems there is no data to index.
2017-07-10 16:58
1416 查看
===== update 2017-07-12 begin =====
No Buckets 的主要原因是: load batch data 的时候,intervals 的范围小于被上传数据的时间范围
===== update 2017-07-12 end =====
Error stack as fllow:
从中,我们可以看到异常关键词:
一般情况下,我解决问题的思路是,先百度,后 github,再解决不了只能看源码。
因为druid这东西在国内并不火,所以百度没啥效果,然后到druid的github中,搜上述关键词,得到一条类似的issue:
https://github.com/druid-io/druid/issues/3259
这个issue虽然没能解决问题,但给我提供了解决问题的思路:修改timezone!
于是乎先看了系统的timezone,已经是CST,时间正常。
然后观察druid日志,发现druid日志与系统时间相差了8小时。
于是在ambari中,查找和timezone相关的druid配置,结果发现,有如下属性和timezone有关:
- druid.broker.jvm.opts
- druid.coordinator.jvm.opts
- druid.historical.jvm.opts
- druid.middlemanager.jvm.opts
- druid.overlord.jvm.opts
-druid.router.jvm.opts
-druid.indexer.runner.javaOpts
druid默认使用UTC,我这里发现日志和系统时间相差8小时,于是改为 UTC+8, 成功构建!
No Buckets 的主要原因是: load batch data 的时候,intervals 的范围小于被上传数据的时间范围
===== update 2017-07-12 end =====
Error stack as fllow:
2017-07-10T08:41:36,134 ERROR [task-runner-0-priority-0] io.druid.indexing.overlord.ThreadPoolTaskRunner - Exception while running task[HadoopIndexTask{id=index_hadoop_pageviews_2017-07-10T08:40:32.650Z, type=index_hadoop, dataSource=pageviews}] java.lang.RuntimeException: java.lang.reflect.InvocationTargetException at com.google.common.base.Throwables.propagate(Throwables.java:160) ~[guava-16.0.1.jar:?] at io.druid.indexing.common.task.HadoopTask.invokeForeignLoader(HadoopTask.java:204) ~[druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexing.common.task.HadoopIndexTask.run(HadoopIndexTask.java:208) ~[druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexing.overlord.ThreadPoolTaskRunner$ThreadPoolTaskRunnerCallable.call(ThreadPoolTaskRunner.java:436) [druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexing.overlord.ThreadPoolTaskRunner$ThreadPoolTaskRunnerCallable.call(ThreadPoolTaskRunner.java:408) [druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_131] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_131] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_131] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_131] Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_131] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_131] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_131] at io.druid.indexing.common.task.HadoopTask.invokeForeignLoader(HadoopTask.java:201) ~[druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] ... 7 more Caused by: java.lang.RuntimeException: java.lang.RuntimeException: No buckets?? seems there is no data to index. at io.druid.indexer.IndexGeneratorJob.run(IndexGeneratorJob.java:215) ~[druid-indexing-hadoop-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexer.JobHelper.runJobs(JobHelper.java:349) ~[druid-indexing-hadoop-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexer.HadoopDruidIndexerJob.run(HadoopDruidIndexerJob.java:94) ~[druid-indexing-hadoop-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexing.common.task.HadoopIndexTask$HadoopIndexGeneratorInnerProcessing.runTask(HadoopIndexTask.java:261) ~[druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_131] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_131] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_131] at io.druid.indexing.common.task.HadoopTask.invokeForeignLoader(HadoopTask.java:201) ~[druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] ... 7 more Caused by: java.lang.RuntimeException: No buckets?? seems there is no data to index. at io.druid.indexer.IndexGeneratorJob.run(IndexGeneratorJob.java:176) ~[druid-indexing-hadoop-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexer.JobHelper.runJobs(JobHelper.java:349) ~[druid-indexing-hadoop-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexer.HadoopDruidIndexerJob.run(HadoopDruidIndexerJob.java:94) ~[druid-indexing-hadoop-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at io.druid.indexing.common.task.HadoopIndexTask$HadoopIndexGeneratorInnerProcessing.runTask(HadoopIndexTask.java:261) ~[druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_131] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_131] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_131] at io.druid.indexing.common.task.HadoopTask.invokeForeignLoader(HadoopTask.java:201) ~[druid-indexing-service-0.9.2.2.6.0.3-8.jar:0.9.2.2.6.0.3-8] ... 7 more
从中,我们可以看到异常关键词:
No buckets?? seems there is no data to index.
一般情况下,我解决问题的思路是,先百度,后 github,再解决不了只能看源码。
因为druid这东西在国内并不火,所以百度没啥效果,然后到druid的github中,搜上述关键词,得到一条类似的issue:
https://github.com/druid-io/druid/issues/3259
这个issue虽然没能解决问题,但给我提供了解决问题的思路:修改timezone!
于是乎先看了系统的timezone,已经是CST,时间正常。
然后观察druid日志,发现druid日志与系统时间相差了8小时。
于是在ambari中,查找和timezone相关的druid配置,结果发现,有如下属性和timezone有关:
- druid.broker.jvm.opts
- druid.coordinator.jvm.opts
- druid.historical.jvm.opts
- druid.middlemanager.jvm.opts
- druid.overlord.jvm.opts
-druid.router.jvm.opts
-druid.indexer.runner.javaOpts
druid默认使用UTC,我这里发现日志和系统时间相差8小时,于是改为 UTC+8, 成功构建!
相关文章推荐
- screen使用问题,重新attach失败:There is no screen to be resumed matching ***
- 解决Unity3D中“There is no 'Renderer' attached to the game object”问题
- 完美解决“The identity used to sign the executable is no longer valid.”问题
- there is no soundcard 问题解决
- 问题解决:psql: could not connect to server: No such file or directory Is the server running
- 解决There is no READABLE property named 'SID'问题
- 解决org.apache.shiro.session.UnknownSessionException: There is no session with id的问题
- There is insufficient memory for the Java Runtime Environment to continue问题解决
- 解决保存快照失败后redis无法写入的问题( Redis is configured to save RDB snapshots)
- There is insufficient memory for the Java Runtime Environment to continue问题解决
- There is no getter for property named 'id' in 'class java.lang.Integer'问题解决办法
- 使用screen恢复会话时出现There is no screen to be resumed matching错误解决办法
- xsession 登陆失败,查看日志后解决问题 错误为[ERROR] X server -- no display in range is available
- 解决404和there is no action mapped for action的问题
- ORA-32001:write to SPFILE requested but no SPFILE is in use问题的解决
- hadoop 安装出现的几种异常的处理方法,hadoop无法启动,no namenode to stop问题的解决方法,no datanode
- 关于eclipse+struts action找不到问题解决方法 There is no Action mapped for namespace
- 解决VTune错误The Data Cannot be displayed, there is no viewpoint available for data
- [转]zedboard Linux JTAG驱动解决There is no current hw_target问题
- Java解决No enclosing instance of type PrintListFromTailToHead is accessible问题的两种方案