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工程上先完成升级?