presto源码修改升级问题

修改了presto-main的源码,在测试环境单个节点上测试也没有问题。

因为只影响主节点上的功能,所以只更新了主节点上jar包,重启主节点后,发现所有从节点都丢失了,jps查看进程是正常的,web ui是正常的。恢复成原来的jar包,又正常 了。来回试了三次,都一个样。

初步怀疑presto节点之前通信,要求的某些唯一的id,确保所有节点上的id都相同才行,只更新了主节点的包,其他从节点的包没更新,就会导致无法通信。

看看主节点presto-main包更新前的web ui

presto源码修改升级问题

再看看主节点presto-main包更新前的web ui

presto源码修改升级问题

果然有点不一样!那就将版本号修改成一样再试试。

找到presto项目root路径下的pom文件,修改版本号重新编译,更新主节点的包,重启后,还是无法正常跟其他节点通信。

如果在其中一个子节点上更新该包,主节点的web ui上可以发现该节点了,从而证实自己的想法:集群节点的包必须一致。

这也符合正常逻辑,保证安全性,防止不同节点上用不同版本或者相同版本修改了导致的一 些隐藏问题。

 

之前开发过presto的event插件,只需要将编译好的jar及依赖放到主节点指定路径,添加主节点的配置文件,重启主节点就ok了。