oozie运行shell,namenode缓存没有文件

问题描述

2015-10-0118:07:13,627WARNShellActionExecutor:544-SERVER[hadoop-senior.ibeifeng.com]USER[beifeng]GROUP[-]TOKEN[]APP[shell-wf]JOB[0000018-151001122846380-oozie-beif-W]ACTION[0000018-151001122846380-oozie-beif-W@shell-node]Launcherexception:Cannotrunprogram"select.sh"(indirectory"/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/data/nm-local-dir/usercache/beifeng/appcache/application_1443616625551_0030/container_1443616625551_0030_01_000002"):error=2,Nosuchfileordirectoryjava.io.IOException:Cannotrunprogram"select.sh"(indirectory"/opt/cdh-5.3.6/hadoop-2.5.0-cdh5.3.6/data/nm-local-dir/usercache/beifeng/appcache/application_1443616625551_0030/container_1443616625551_0030_01_000002"):error=2,Nosuchfileordirectoryatjava.lang.ProcessBuilder.start(ProcessBuilder.java:1047)atorg.apache.oozie.action.hadoop.ShellMain.execute(ShellMain.java:93)atorg.apache.oozie.action.hadoop.ShellMain.run(ShellMain.java:55)atorg.apache.oozie.action.hadoop.LauncherMain.run(LauncherMain.java:39)atorg.apache.oozie.action.hadoop.ShellMain.main(ShellMain.java:47)atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)atjava.lang.reflect.Method.invoke(Method.java:606)atorg.apache.oozie.action.hadoop.LauncherMapper.map(LauncherMapper.java:227)atorg.apache.hadoop.mapred.MapRunner.run(MapRunner.java:54)atorg.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:450)atorg.apache.hadoop.mapred.MapTask.run(MapTask.java:343)atorg.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)atjava.security.AccessController.doPrivileged(NativeMethod)atjavax.security.auth.Subject.doAs(Subject.java:415)atorg.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1642)atorg.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)Causedby:java.io.IOException:error=2,Nosuchfileordirectoryatjava.lang.UNIXProcess.forkAndExec(NativeMethod)atjava.lang.UNIXProcess.<init>(UNIXProcess.java:186)atjava.lang.ProcessImpl.start(ProcessImpl.java:130)atjava.lang.ProcessBuilder.start(ProcessBuilder.java:1028)我的job属性配置如下nameNode=hdfs://hadoop-senior.ibeifeng.com:8020jobTracker=hadoop-senior.ibeifeng.com:8032queueName=defaultappRoot=oozie-appsoozie.use.system.libpath=trueoozie.wf.application.path=${nameNode}/user/${user.name}/${appRoot}/shellEXEC=select.shSCRIPT=hiveselect.sql我的workflow配置如下<workflow-appxmlns="uri:oozie:workflow:0.4"name="shell-wf"><startto="shell-node"/><actionname="shell-node"><shellxmlns="uri:oozie:shell-action:0.2"><job-tracker>${jobTracker}</job-tracker><name-node>${nameNode}</name-node><configuration><property><name>mapred.job.queue.name</name><value>${queueName}</value></property></configuration><exec>${EXEC}</exec><file>${nameNode}/user/beifeng/oozie-apps/shell/${EXEC}#${EXEC}</file><file>${nameNode}/user/beifeng/oozie-apps/shell/${SCRIPT}#${SCRIPT}</file><capture-output/></shell><okto="end"/><errorto="fail"/></action><killname="fail"><message>Shellactionfailed,errormessage[${wf:errorMessage(wf:lastErrorNode())}]</message></kill><endname="end"/></workflow-app>

时间: 2024-08-30 02:30:42

oozie运行shell,namenode缓存没有文件的相关文章

eclipse下使用cygwin直接运行shell文件配置

最近事情挺多的,好久不写博客了.今天在看hadoop的时候,突然心血来潮,想在windows的eclipse下跑hadoop的shell脚本,这样就方便多了,查了一个晚上,终于看似找到了,泪奔.记录&分享一下,如果有人也有这样的需求或者备以后自己看. 当然在windows下跑shell当然是要先安装cygwin了,关于这个cygwin的安装就不在这里说了,另外关于如何在cygwin配置hadoop貌似已经有人写过了,也不在这里介绍了,有兴趣的童鞋可以参考:http://blog.csdn.net

PHP执行shell脚本运行程序不产生core文件的方法

发现一直不产生core文件,但是手动运行脚本的时候就会产生core文件. 经过朋友指导,原来是脚本执行环境导致的问题: 脚本中加入ulimit -a >> 1.log 打印如下: core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 127364 max

嵌入式linux中设置开机运行shell脚本的问题

问题描述 嵌入式linux中设置开机运行shell脚本的问题 想写一个设置静态ip的开机自运行的shell脚本,然后百度说放在rc.local什么的文件里,然后我的板子里/etc 下根本没有这个文件,请大神们指点我应该怎么办? /etc 下只有fstab hosts host.conf group init.d inittab ld.so.conf mdev.conf profile passwd resolv.conf services 解决方案 输入命令 vi /etc/network/in

禁止IIS缓存静态文件的方法(png,js,html等)_win服务器

禁止IIS缓存静态文件(png,js,html等)背景:IIS为了提高性能,默认情况下会对静态文件js,html,gif,png等做内部缓存,这个缓存是在服务器iis进程的内存中的.IIS这么做在很大程度上可以提高静态文件的访问性能,在正常情况下只要静态文件更新了IIS也会更新缓存.但是如果更新的静态文件很多就有可能出现缓存不更新的情况. 弯路:我遇到这样一个场景,服务器循环更新上万张股票行情图片,IIS也会对图片进行缓存,由于更新的频率很高,文件很多,就出现了IIS缓存文件超过几十分钟都无法更

提前认识软件开发(22) shell脚本中的文件操作

编写shell脚本时,经常会涉及到对文件的操作,比如从文件中读取一行数据.向文件追加一行数据等.完成文件读写操作的方法有很多,了解各种命令下文件操作的执行情况,有助于开发人员在不同使用场景下选择合适的命令. 本文以实际的shell脚本为例,介绍了对文件进行操作的不同方法,为相关开发工作提供了参考. 一.概述 在某些软件项目的需求文档中,要求程序一次性读或写的数据规模较大,可达1000万行级,这就涉及到对程序执行方法和效率等的考虑. 本文比较了不同shell命令在对文件进行读或写操作过程中执行效率

chrome谷歌浏览器中的缓存视频文件怎么找

  chrome浏览器找缓存视频文件:1:输入"chrome://cache"打开页面如图: 2:同时按下键盘的ctrl+f键打开查找对话窗口右上角如图,输入视频文件后缀名,一般为.flv .swf .avi .wmv .rmvb几种,如图以.flv为例: 3:找到你要的文件,复制路径黏贴到浏览器打开核对是否为所需文件即可

chrome浏览器怎么找缓存视频文件?

  chrome浏览器怎么找缓存视频文件.许多网友在使用谷歌浏览器(含百度浏览器.uc浏览器.360浏览器等极速内核的浏览器)上网看到视频想保存,但网站没有下载入口.看过就不知道在哪里下载了.现在就让小编来帮大家知道出你要的缓存视频文件. 1:输入"chrome://cache"打开页面如图 2:同时按下键盘的ctrl+f键,打开查找对话窗口右上角如图,输入视频文件后缀名,一般为.flv .swf .avi .wmv .rmvb几种,如图以.flv为例 3:找到你要的文件,复制路径黏贴

写脚本语言-shell获取某个特定文件夹下面的某个文件的路径?

问题描述 shell获取某个特定文件夹下面的某个文件的路径? 如题.find home |grep config.txt 会把home下所有的confg.txt路径返回,但是我只想要 home下某层子文件夹minihome下的config.txt的路径,如何写脚本? 解决方案 find /home/dir1/dir2/minihome -name "config.txt"

大神帮忙看下面代码运行后怎么写入txt文件????

问题描述 大神帮忙看下面代码运行后怎么写入txt文件???? #include #include #include #include #include //输入/输出文件流类 using namespace std; const int Maxr=100;//最多的读者 const int Maxb=100;//最多的图书 const int Maxbor=5;//每位读者最多借五本书 //读者类,实现对读者的信息的描述 class Reader { private: int tag; //删除