0、环境
cdh6.2.1
hadoop3.0.0
hbase2.1.0
maven 3.6.0
git2.11.0
1、编译源码
# clone源码
git clone https://github.com/apache/phoenix.git
# 进入源码根目录
cd phoenix/
# 查看tag ,或者查看分支 git branch -a
git tag
# 选择一个版本,进入其分支,或者切换到某个分支:git checkout -b remotes/origin/5.x-cdh6
git checkout tags/v5.0.0-HBase-2.0
# 编译
#将pom.xml中的hbase版本从2.0.0改到2.1.0
mvn -T2C install -DskipTests
#build提示CellComparatorImp构造方法参数问题,原来的compare方法用的是两参数方法,
#现在原来的方法设置了final属性,我这里改为三参数方法,但里面的默认值不变。修改后如下
public IndexMemStore() {
this(new CellComparatorImpl(){
@Override
public int compare(Cell a, Cell b, boolean ignoreSequenceid) {
return super.compare(a, b, true);
}
});
}
2、使用
cp phoenix-assembly/target/phoenix-5.0.0-HBase-2.0.tar.gz /opt/
cd /opt
tar -zxf phoenix-5.0.0-HBase-2.0.tar.gz
cd phoenix-5.0.0-HBase-2.0
# 添