LoranceChen opened a new issue, #1685:
URL: https://github.com/apache/incubator-fury/issues/1685

   [Background]
   For safe maintain core persistence data compatible are the most consider 
things.
   Only add new field in every new release version and carefully delete 
existing field is a good practice usually.
   
   Our `COMPATIBLE` mode are not check for delete field. There are difficult 
check safty when release new version. 
   
   [Advice]
   Add a new `CompatibleMode` only allow add new field and explicitly give a 
register process allow ignore field. Such as:
   ```scala
   case class Foo(a: Int, b: String, c: Long)
   
   val fury = 
Fury.builder()..withCompatibleMode(CompatibleMode.ALLOW_NEW_FIELD).build()
   fury.registerDeletableField("Foo.c") // which means Foo.c bytes data can 
ignored when doing deserilaize process.
   ```
   This can give a great help to check new release version are safe on data 
structure level.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to