Stanislav Lukyanov created IGNITE-8611:
------------------------------------------

             Summary: Binary marshaller documentation should cover how data 
classes can or can't be changed
                 Key: IGNITE-8611
                 URL: https://issues.apache.org/jira/browse/IGNITE-8611
             Project: Ignite
          Issue Type: Improvement
          Components: documentation
            Reporter: Stanislav Lukyanov


Binary marshaller docs (https://apacheignite.readme.io/docs/binary-marshaller) 
give an idea that a class structure may be changed (fields can be added or 
removed) and the marshaller will handle such change.

However, not all changes are supported.
One corner case is when an enum value is stored in the cache: if the order of 
the enum constants is changed, or if a new constant is added at the start or at 
the middle of the constants list, it will lead to an error. This is because the 
enums are stored as ordinals (integers), and the ordinals of an enum depend on 
the order of values in the code.

The task is to update the documentation with the description of data class 
changes that are incompatible from binary marshallers point of view. At least 
the enum case should be covered. If more cases are discovered, they should be 
documented as well.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to