EnumSet.class serialization broken - twice - JDK-8227368
stuart.marks at oracle.com
Wed Jul 10 02:32:38 UTC 2019
>> 1. New changeset with constant version of EnumSet.serialVersionUID.
> This is already in the webrev.01 changeset. webrev.02 is an attempt to sneak the change without being visible in the serialized-form.html.
Ah. I skipped webrev.01 because I thought that webrev.02 had superseded it.
Looking at webrev.01, I see
> + // value computed from JDK 8 (and previous) EnumSet class
> + // needed to properly cross-(de)serialize EnumSet.class objects
> + // between JDK 8- <-> JDK 9+
> + private static final long serialVersionUID = 1009687484059888093L;
I don't think this comment can cover the entire history here. We'll have to rely
on the bug report, the CSR, and the email archives.
Most declarations of serialVersionUID don't have a comment at all. So, we could
just omit it.
If you feel a comment is necessary, perhaps something like
// declare serialization compatibility with JDK 8 (see JDK-8227368)
might be sufficient. Otherwise, webrev.01 looks fine.
> On 7/9/19 1:57 AM, Stuart Marks wrote:
>> 2. Create draft CSR.
I've done some editing on this CSR and I've marked myself as a reviewer. Please
move this to Finalized.
While we're waiting for the CSR to be approved (I hope this takes only a day or
two) I'll do some testing with your patch.
More information about the core-libs-dev