Thrift因涉及高分cve修复,需升级解决,升级会导致子包fb303的移除,子包thrift-java的暂时关闭编译,请tc委员们评审
具体升级方案和升级影响如下
升级影响分析:
对LTS版本无影响,对创新版本影响和解决方案见“关闭java相关的子包”
https://gitee.com/src-openeuler/thrift/issues/I383A5?from=project-issue
From: wangyue (AG)
Sent: Thursday, March 11, 2021 11:28 AM
To: tc@openeuler.org
Cc: fanjiachen (A) <fanjiachen3@huawei.com>; zhanghua (D) <zhanghua40@huawei.com>; Wangxiao (euler) <wangxiao65@huawei.com>; maminjie (A) <maminjie1@huawei.com>; xiasenlin <xiasenlin1@huawei.com>; guoxiaoqi <guoxiaoqi2@huawei.com>; Liujingang (Bob) <liujingang09@huawei.com>;
Hufeng (Solar, Euler) <solar.hu@huawei.com>; sunguoshuai <sunguoshuai@huawei.com>; Zhangtao (zhangtao, AX) <zhangtao221@huawei.com>; huanghaitao (A) <huanghaitao8@huawei.com>
Subject: thrift升级方案评审
Thrift升级方案评审:
背景:
因要处理CVE-2020-13949,组件thrift,分数7.5,该CVE在社区上无修复补丁,参考社区解决方案是升级至0.14.0解决(当前openEuler版本为0.10.0)
升级方案:
删除fb303相关的子包、关闭thrift-java相关子包,其他子包保留
删除子包的影响:
一:删除fb303相关子包:
1.
fb303在thrift仓库中是facebook贡献的模块,目前没有适配到最新的thrift库,导致fb303编译会失败(0.10.0和0.14.0版本的thrift根据fb303.thrift自动生成的代码文件不一样)
2.fb303由facebook维护,且最新信息显示fb303依赖的是fbthrift
fb303地址:https://github.com/facebook/fb303
fbthrift地址:https://github.com/facebook/fbthrift
3.fb303没有被其他包依赖,且去除后,thrift编译成功
4.参考其他发行版,将fb303移除
备注:
fb303相关子包的功能是获取facebook上状态信息的接口
这个功能评估为社区使用量极小
如果之后还有社区使用者提需求,替代方案是可以引入单独维护的fb303组件
,目前fb303的引入考虑先挂起
二:关闭java相关的子包:
1. thriftt是Facebook于2007年开发的跨语言的rpc服框架,提供多语言的编译功能,其中thrift-java是提供给java语言开发者,在java环境下开发thrift的一个包
2.
thrift-java和libthrift-javadoc子包,因社区将maven改成gradle的构建方式,导致thrift的java子包编译失败(其他发行版也编译失败),
需要重新适配,参考其他发行版暂时先关掉,后面适配成功后再把宏打开
3. thrift-java在20.03-lts-sp1和20.03-lts-next和20.03-lts工程是独立包,对其他包无影响
4.
thrift-java在其他分支被htrace这个包依赖,目前htrace这个包属于衰退包,不被别的包依赖,建议删除
,目前仅对主线和创新版本20.09和21.03上有影响
备注:当时引入是因为准备引入hadoop,但hadoop还未引入,暂无影响
诉求:
1.
期望升级删除fb303相关子包、关闭thrift-java相关子包,望tc给出建议,这种升级方案是否会产生影响?
2.
若htrace包不可删除,是否可以先在20.03-lts-sp1和20.03-lts-next和20.03-lts工程上先完成升级?