Deployment 如何弃用.thrift文件中的可选字段?

Deployment 如何弃用.thrift文件中的可选字段?,deployment,thrift,Deployment,Thrift,假设我有这样一个结构定义: struct SomeStruct { 1: optional binary content; 2: optional binary newConetent; } 在不影响部署的情况下,不推荐第一个字段(“内容”)的最佳做法是什么?新代码的部署将被部署到使用这种节约结构的多个应用程序中?(假设某些应用程序在部署之前仍在使用“内容”字段) 谢谢大家! 建议的解决方案是注释掉该字段,但将其保留在IDL中。这可以防止字段ID在以后被重新用于其他用途,这当然会产生不

假设我有这样一个结构定义:

struct SomeStruct {
  1: optional binary content;
  2: optional binary newConetent;
}
在不影响部署的情况下,不推荐第一个字段(“内容”)的最佳做法是什么?新代码的部署将被部署到使用这种节约结构的多个应用程序中?(假设某些应用程序在部署之前仍在使用“内容”字段


谢谢大家!

建议的解决方案是注释掉该字段,但将其保留在IDL中。这可以防止字段ID在以后被重新用于其他用途,这当然会产生不兼容性

如果“由客户端使用”意味着他们只访问RPC的过时字段,那么这与节俭无关。节俭就像在新的领域一样


但是,如果您的意思是该字段用于序列化,并且旧数据包含需要以某种方式转换为新格式的相关信息,则必须在IDL中将该字段保持活动状态。你可以考虑重命名该字段以使它对你的IDL的目标受众可见。

谢谢你@ JensG,我也这么认为。我想我将把这个字段从content重命名为弃用的内容。