Hadoop Pipes Exception: Illegal text protocol command
Hadoop Pipes Exception: Illegal text protocol command
对于Hadoop pipes 出现这样的错误,基本上编译代码依赖的.so和.a 版本不匹配
网上也没有给出更多信息,我的同事最近回复了解决办法,可以参考
https://groups.google.com/a/cloudera.org/forum/#!msg/cdh-user/j0dpYPDx3_A/S1rotrWGSf0J
如果不能翻墙,摘录如下
Index: hadoop-tools/hadoop-pipes/src/main/native/pipes/impl/HadoopPipes.cc
===================================================================
--- hadoop-tools/hadoop-pipes/src/main/native/pipes/impl/HadoopPipes.cc (revision )
+++ hadoop-tools/hadoop-pipes/src/main/native/pipes/impl/HadoopPipes.cc (working copy)
@@ -, +, @@
#include <stdlib.h>
#include <string.h>
#include <strings.h>
-#include <unistd.h>
#include <sys/socket.h>
#include <pthread.h>
#include <iostream>
@@ -, +, @@
}
if (reducer != NULL) {
int64_t spillSize = ;
- if (jobConf->hasKey("mapreduce.task.io.sort.mb")) {
- spillSize = jobConf->getInt("mapreduce.task.io.sort.mb");
+ if (jobConf->hasKey("io.sort.mb")) {
+ spillSize = jobConf->getInt("io.sort.mb");
}
writer = new CombineRunner(spillSize * * , this, reducer,
uplink, partitioner, numReduces);
@@ -, +, @@
*/
void* ping(void* ptr) {
TaskContextImpl* context = (TaskContextImpl*) ptr;
- char* portStr = getenv("mapreduce.pipes.command.port");
+ char* portStr = getenv("hadoop.pipes.command.port");
int MAX_RETRIES = ;
int remaining_retries = MAX_RETRIES;
while (!context->isDone()) {
@@ -, +, @@
try {
TaskContextImpl* context = new TaskContextImpl(factory);
Protocol* connection;
- char* portStr = getenv("mapreduce.pipes.command.port");
+ char* portStr = getenv("hadoop.pipes.command.port");
int sock = -;
FILE* stream = NULL;
FILE* outStream = NULL;
@@ -, +, @@
HADOOP_ASSERT(setbuf == , string("problem with setvbuf for outStream: ")
+ strerror(errno));
connection = new BinaryProtocol(stream, context, outStream);
- } else if (getenv("mapreduce.pipes.commandfile")) {
- char* filename = getenv("mapreduce.pipes.commandfile");
+ } else if (getenv("hadoop.pipes.command.file")) {
+ char* filename = getenv("hadoop.pipes.command.file");
string outFilename = filename;
outFilename += ".out";
stream = fopen(filename, "r");
Hadoop Pipes Exception: Illegal text protocol command的更多相关文章
- 在Hadoop 2.3上运行C++程序各种疑难杂症(Hadoop Pipes选择、错误集锦、Hadoop2.3编译等)
首记 感觉Hadoop是一个坑,打着大数据最佳解决方案的旗帜到处坑害良民.记得以前看过一篇文章,说1TB以下的数据就不要用Hadoop了,体现不 出太大的优势,有时候反而会成为累赘.因此Hadoop的 ...
- Hadoop Pipes
[Hadoop Pipes] 1.MapContext的getInputSplit()可以用于获取当前mapper所对象的文件路经,也就是Pipes中,没有InputSplit接口/对象. 2.在Pi ...
- jsp报错问题之“使用jstl的c标签choose报错Illegal text inside "c:choose" tag问题”
一.报错 [bessky_it][ERROR][2022-03-25 17:19:07] | PLATFORM | ):[c]鍜孾/com.bessky.pss.portal/purchase/sam ...
- MySQL之Text Protocol
1)[01]COM_QUIT 告诉服务器,客户端想要关闭连接 返回:或者关闭一个连接或者一个OK_Packet 有效负载: 1 [01]COM_QUIT 字段: command(1)--0x01 CO ...
- windows下eclipse远程连接hadoop错误“Exception in thread"main"java.io.IOException: Call to Master.Hadoop/172.20.145.22:9000 failed ”
在VMware虚拟机下搭建了hadoop集群,ubuntu-12.04,一台master,三台slave.hadoop-0.20.2版本.在 master机器上利用eclipse-3.3连接hadoo ...
- Hadoop错误1(Text类型与String类型)
在此类的博客中,博主主要记录的是在Hadoop实践过程中遇到的一些错误,先上一个代码 protected void map(Object key,Text value, Context context ...
- hadoop pipes wordcount compile
http://devel.cs.stolaf.edu/projects/bw/wiki.real/index.php/Hadoop_Reference,_January_2011 http://guo ...
- hadoop下的Pipes(用C++进行hadoop程序开发)
说明:这篇博客来自我的CSDN博客:http://blog.csdn.net/lxxgreat/article/details/7755369 经过一上午的努力,终于以伪分布式模式运行了C++版的Ma ...
- Hadoop应用开发实战(flume应用开发、搜索引擎算法、Pipes、集群、PageRank算法)
Hadoop是2013年最热门的技术之一,通过北风网robby老师<深入浅出Hadoop实战开发>.<Hadoop应用开发实战>两套课程的学习,普通Java开发人员可以在最快的 ...
随机推荐
- iOS方法类:CGAffineTransform的使用大概
CoreGraphics框架中的CGAffineTransform类可用于设定UIView的transform属性,控制视图的缩放.旋转和平移操作: 另称放射变换矩阵,可参照线性代数的矩阵实现方式0. ...
- Android复制assets目录下的图片到内存
转自:http://www.chenwg.com/android/android%E5%A4%8D%E5%88%B6assets%E7%9B%AE%E5%BD%95%E4%B8%8B%E7%9A%84 ...
- 利用VBA查找excel中一行某列第一次不为空与最后一列不为空的列数
昨日同事有需求,想知道每个商品第一次销售的月份,以及最后一次销售的月份. 本想通过什么excel函数来解决,但是找了半天也没找到合适的,最后还是通过VBA来解决吧. 使用方法: Excel工具-宏-V ...
- Spring整合JAX-WS
Jax-ws在使用上很方便,也很轻量级.重点是他是jvnet(dev.java.net)的项目,是基于java标准的(JSR181). 不过它与Spring的整合相对麻烦,于此,我将自己的一些研究结果 ...
- Cubieboard2裸机开发之(一)点亮板载LED
前言 CUbieboard2板载两个LED,一个绿色的,一个蓝色的,其中绿色LED通过三极管与PH20管脚连接,蓝色LED通过三极管与PH21管脚连接,这里只以蓝色LED为例,电路原理图如图1和图2所 ...
- Js 一些方法(一)
(function ($) { var promoter = promoter || {}; promoter.utils = (function () { var controller = &quo ...
- 结合使用saiku、mondrian workbentch建立多维查询报表
1.简介 前几篇博客已经介绍了saiku.mondrian.MDX和模式文件他们之间的关系,那么如何将它们串联起来,供产品人员使用哪?下面咱们一步一步的实现 2.建立数据表 建表语句参考:http:/ ...
- FileZilla FTP Server 高级防火墙例外
在防火墙中: 在“例外”中,添加端口21,TCP 添加端口50000,TCP (或添加一组端口,一个一个的也行,如果你在软件中选择的是50000-51000,而在这里只打开了50000的单个端口,登录 ...
- MVC自定义视图规则
自定义规则: using System.Web.Mvc; using System.Configuration; namespace Research { public class ViewConfi ...
- EditorWindow中手动控制焦点
在Unity3D中制作编辑器的时候,有时候会需要手动控制界面上控件的焦点,与此相关的有三个函数都在下面的示例代码中了: public void Test() { // 给控件命名 GUI.SetNex ...