技术文章 - CS260425
错误“java.io.IOException:未设置 HADOOP_HOME 或 hadoop.home.dir。”在 ThingWorx Analytics 的 grid-worker.log 中看到
已修改: 23-Jun-2022
适用于
- ThingWorx Analytics 52.2
说明
- 执行数据集优化作业时报以下错误(DATASET_SNAPSHOT)
[main-EventThread] [org.apache.hadoop.util.Shell] -[未能检测到有效的 hadoop 主目录]
java.io.IOException:未设置 HADOOP_HOME 或 hadoop.home.dir。
在 org.apache.hadoop.util.Shell.checkHadoopHome(Shell.java:265)
在 org.apache.hadoop.util.Shell.<clinit>(Shell.java:290)
在 org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:76)
在 org.apache.hadoop.security.Groups.parseStaticMapping(Groups.java:93)
在 org.apache.hadoop.security.Groups.<init>(Groups.java:77)
在 org.apache.hadoop.security.Groups.getUserToGroupsMappingService(Groups.java:240)
在 org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:255)
在 org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:232)
在 org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:718)
在 org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:703)
在 org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:605)
在 org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2162)
在 org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2162)
在 scala.Option.getOrElse(Option.scala:120)
在 org.apache.spark.util.Utils$.getCurrentUserName(Utils.scala:2162)
在 org.apache.spark.SparkContext.<init>(SparkContext.scala:301)
在 org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:61)
在 com.coldlight.neuron.data.spark.SparkSupplier.sparkctx$lzycompute(SparkSupplier.scala:41)
在 com.coldlight.neuron.data.spark.SparkSupplier.sparkctx(SparkSupplier.scala:37)
在 com.coldlight.neuron.data.spark.Spark.sc(SparkSupplier.scala:30)
在 com.coldlight.neuron.data.PartitionedData.<init>(PartitionedData.scala:28)
在 com.coldlight.neuron.data.dataset.DataSet.<init>(DataSet.java:25)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet.<init>(JdbcDataSet.java:139)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet.<init>(JdbcDataSet.java:58)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet$Factory.createDataSet(JdbcDataSet.java:347)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet$Factory.create(JdbcDataSet.java:298)
在 com.coldlight.neuron.data.dataset.DataSetBuilder.build(DataSetBuilder.java:75)
在 com.coldlight.neuron.job.UriDataSetFactory.createDataSet(UriDataSetFactory.java:69)
在 com.coldlight.neuron.job.UriDataSetFactory.createDataSetWithKnownFeatures(UriDataSetFactory.java:123)
在 com.coldlight.neuron.job.NeuronJob.inflateDataSet(NeuronJob.java:202)
在 com.coldlight.neuron.services.ai.DataSetSnapshotJob.runJob(DataSetSnapshotJob.java:44)
在 com.coldlight.neuron.job.NeuronJob.run(NeuronJob.java:123)
在 com.coldlight.ccc.job.dempsy.DempsyClusterJobExecutor$DempsyPersistentClusterWatcher.runJobUploadResultsAndCleanup(DempsyClusterJobExecutor.java:334)
在 com.coldlight.ccc.job.dempsy.DempsyClusterJobExecutor$DempsyPersistentClusterWatcher.execute(DempsyClusterJobExecutor.java:482)
在 com.coldlight.ccc.executor.PersistentTask.executeUntilWorks(PersistentTask.java:92)
在 com.coldlight.ccc.executor.PersistentTask.process(PersistentTask.java:58)
在 com.nokia.dempsy.cluster.zookeeper.ZookeeperSession$WatcherProxy.process(ZookeeperSession.java:279)
在 org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:522)
在 org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:498)
java.io.IOException:未设置 HADOOP_HOME 或 hadoop.home.dir。
在 org.apache.hadoop.util.Shell.checkHadoopHome(Shell.java:265)
在 org.apache.hadoop.util.Shell.<clinit>(Shell.java:290)
在 org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:76)
在 org.apache.hadoop.security.Groups.parseStaticMapping(Groups.java:93)
在 org.apache.hadoop.security.Groups.<init>(Groups.java:77)
在 org.apache.hadoop.security.Groups.getUserToGroupsMappingService(Groups.java:240)
在 org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:255)
在 org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:232)
在 org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:718)
在 org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:703)
在 org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:605)
在 org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2162)
在 org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2162)
在 scala.Option.getOrElse(Option.scala:120)
在 org.apache.spark.util.Utils$.getCurrentUserName(Utils.scala:2162)
在 org.apache.spark.SparkContext.<init>(SparkContext.scala:301)
在 org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:61)
在 com.coldlight.neuron.data.spark.SparkSupplier.sparkctx$lzycompute(SparkSupplier.scala:41)
在 com.coldlight.neuron.data.spark.SparkSupplier.sparkctx(SparkSupplier.scala:37)
在 com.coldlight.neuron.data.spark.Spark.sc(SparkSupplier.scala:30)
在 com.coldlight.neuron.data.PartitionedData.<init>(PartitionedData.scala:28)
在 com.coldlight.neuron.data.dataset.DataSet.<init>(DataSet.java:25)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet.<init>(JdbcDataSet.java:139)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet.<init>(JdbcDataSet.java:58)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet$Factory.createDataSet(JdbcDataSet.java:347)
在 com.coldlight.neuron.db.impl.dataset.jdbc.JdbcDataSet$Factory.create(JdbcDataSet.java:298)
在 com.coldlight.neuron.data.dataset.DataSetBuilder.build(DataSetBuilder.java:75)
在 com.coldlight.neuron.job.UriDataSetFactory.createDataSet(UriDataSetFactory.java:69)
在 com.coldlight.neuron.job.UriDataSetFactory.createDataSetWithKnownFeatures(UriDataSetFactory.java:123)
在 com.coldlight.neuron.job.NeuronJob.inflateDataSet(NeuronJob.java:202)
在 com.coldlight.neuron.services.ai.DataSetSnapshotJob.runJob(DataSetSnapshotJob.java:44)
在 com.coldlight.neuron.job.NeuronJob.run(NeuronJob.java:123)
在 com.coldlight.ccc.job.dempsy.DempsyClusterJobExecutor$DempsyPersistentClusterWatcher.runJobUploadResultsAndCleanup(DempsyClusterJobExecutor.java:334)
在 com.coldlight.ccc.job.dempsy.DempsyClusterJobExecutor$DempsyPersistentClusterWatcher.execute(DempsyClusterJobExecutor.java:482)
在 com.coldlight.ccc.executor.PersistentTask.executeUntilWorks(PersistentTask.java:92)
在 com.coldlight.ccc.executor.PersistentTask.process(PersistentTask.java:58)
在 com.nokia.dempsy.cluster.zookeeper.ZookeeperSession$WatcherProxy.process(ZookeeperSession.java:279)
在 org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:522)
在 org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:498)
这是文章 260425 的 PDF 版本,可能已过期。最新版本 CS260425