Redo change (8371732) that failed when the updated class objects were 
incompatible.
The fields of classes are changed to allow a more compact form of storage.

To ensure compatibility of the class objects, the fields are explicitly 
declared in SerialPersistentFields with the original field types.
The fields are marked `transient` to indicate the field declarations are not 
used for serialization.
The affected classes are java.time.LocalDate, MonthDay, and YearMonth.
Tests are added to verify the types and names of serialized fields of each 
class.

HijrahDate only changes the field types, the fields are transient and there is 
no change to the serialized from of the HijrahDate.class object.

-------------

Commit messages:
 - Change some java.time fields from int or short to byte to save on heap size.

Changes: https://git.openjdk.org/jdk/pull/28274/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28274&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8371732
  Stats: 124 lines in 7 files changed: 100 ins; 0 del; 24 mod
  Patch: https://git.openjdk.org/jdk/pull/28274.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28274/head:pull/28274

PR: https://git.openjdk.org/jdk/pull/28274

Reply via email to