Protobuf 호환성(Compatibility) 유지하기
호환성이 유지되는 경우
package
는 타입의 이름 충돌을 방지하기 위한 namespace로 사용되므로 변경되면 호환성이 깨집니다.- 필드가 추가/삭제되는 경우 이전 버전과 새 버전은 상호 호환됩니다.
- 스키마에는 있지만 데이터에 필드가 없는 경우 기본값으로 해석됩니다.
- 데이터에는 있지만 스키마에 필드가 없는 경우 무시됩니다.
package
는 타입의 이름 충돌을 방지하기 위한 namespace로 사용되므로 변경되면 호환성이 깨집니다.