[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tzu-Li (Gordon) Tai updated FLINK-6944: --- Fix Version/s: (was: 1.7.0) > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Sub-task > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Priority: Critical > > FLINK-9377 proposes to remove writing serializers as part of checkpoint meta > info, and only write its configuration snapshot. > Since then serializer config snapshots will be the single source of truth for > previous serializer schema, this JIRA proposes to follow up the change in > FLINK-9377 by having a base default implementation for letting > {{TypeSerializer.snapshotConfiguration}} that returns a > {{DefaultTypeSerializerConfigSnapshot}}. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serialVersionUID > of the serializer class, and the serializer class' classname. The latter two > will be used to check compatibility in the default implementation of > {{TypeSerializer.ensureCompatibility}}. Specifically, if classname / > serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} should return > {{CompatibilityResult.requiresMigration}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Till Rohrmann updated FLINK-6944: - Fix Version/s: (was: 1.6.0) 1.7.0 > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Sub-task > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Critical > Fix For: 1.7.0 > > > FLINK-9377 proposes to remove writing serializers as part of checkpoint meta > info, and only write its configuration snapshot. > Since then serializer config snapshots will be the single source of truth for > previous serializer schema, this JIRA proposes to follow up the change in > FLINK-9377 by having a base default implementation for letting > {{TypeSerializer.snapshotConfiguration}} that returns a > {{DefaultTypeSerializerConfigSnapshot}}. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serialVersionUID > of the serializer class, and the serializer class' classname. The latter two > will be used to check compatibility in the default implementation of > {{TypeSerializer.ensureCompatibility}}. Specifically, if classname / > serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} should return > {{CompatibilityResult.requiresMigration}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aljoscha Krettek updated FLINK-6944: Priority: Critical (was: Blocker) > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Sub-task > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Critical > Fix For: 1.6.0 > > > FLINK-9377 proposes to remove writing serializers as part of checkpoint meta > info, and only write its configuration snapshot. > Since then serializer config snapshots will be the single source of truth for > previous serializer schema, this JIRA proposes to follow up the change in > FLINK-9377 by having a base default implementation for letting > {{TypeSerializer.snapshotConfiguration}} that returns a > {{DefaultTypeSerializerConfigSnapshot}}. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serialVersionUID > of the serializer class, and the serializer class' classname. The latter two > will be used to check compatibility in the default implementation of > {{TypeSerializer.ensureCompatibility}}. Specifically, if classname / > serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} should return > {{CompatibilityResult.requiresMigration}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tzu-Li (Gordon) Tai updated FLINK-6944: --- Description: FLINK-9377 proposes to remove writing serializers as part of checkpoint meta info, and only write its configuration snapshot. Since then serializer config snapshots will be the single source of truth for previous serializer schema, this JIRA proposes to follow up the change in FLINK-9377 by having a base default implementation for letting {{TypeSerializer.snapshotConfiguration}} that returns a {{DefaultTypeSerializerConfigSnapshot}}. The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serialVersionUID of the serializer class, and the serializer class' classname. The latter two will be used to check compatibility in the default implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if classname / serialVersionUID has changed, the default implementation of {{TypeSerializer.ensureCompatibility}} should return {{CompatibilityResult.requiresMigration}}. was: Currently, we store both the {{TypeSerializer}} and its corresponding {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in most cases, are actually duplicate information. This JIRA proposes to change this by only storing the {{TypeSerializerConfigSnapshot}}, while at the same time, letting {{TypeSerializer.snapshotConfiguration}} return a default {{DefaultTypeSerializerConfigSnapshot}}. This default simply serializes the serializer instance using Java serialization. The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, the serialVersionUID of the serializer class, and the serializer class' classname. The latter two will be used to check compatibility in the default implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if classname / serialVersionUID has changed, the default implementation of {{TypeSerializer.ensureCompatibility}} will simply return {{CompatibilityResult.requiresMigration}} with the deserialized serializer as the convert deserializer. > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Sub-task > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Blocker > Fix For: 1.6.0 > > > FLINK-9377 proposes to remove writing serializers as part of checkpoint meta > info, and only write its configuration snapshot. > Since then serializer config snapshots will be the single source of truth for > previous serializer schema, this JIRA proposes to follow up the change in > FLINK-9377 by having a base default implementation for letting > {{TypeSerializer.snapshotConfiguration}} that returns a > {{DefaultTypeSerializerConfigSnapshot}}. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serialVersionUID > of the serializer class, and the serializer class' classname. The latter two > will be used to check compatibility in the default implementation of > {{TypeSerializer.ensureCompatibility}}. Specifically, if classname / > serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} should return > {{CompatibilityResult.requiresMigration}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tzu-Li (Gordon) Tai updated FLINK-6944: --- Priority: Blocker (was: Major) > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Sub-task > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Blocker > Fix For: 1.6.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tzu-Li (Gordon) Tai updated FLINK-6944: --- Issue Type: Sub-task (was: Improvement) Parent: FLINK-9376 > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Sub-task > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Major > Fix For: 1.6.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aljoscha Krettek updated FLINK-6944: Priority: Major (was: Blocker) > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Improvement > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Major > Fix For: 1.6.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Till Rohrmann updated FLINK-6944: - Fix Version/s: (was: 1.5.0) 1.6.0 > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Improvement > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Blocker > Fix For: 1.6.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tzu-Li (Gordon) Tai updated FLINK-6944: --- Fix Version/s: 1.6.0 > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Improvement > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Blocker > Fix For: 1.5.0, 1.6.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tzu-Li (Gordon) Tai updated FLINK-6944: --- Priority: Blocker (was: Major) > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Improvement > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Blocker > Fix For: 1.5.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Tzu-Li (Gordon) Tai updated FLINK-6944: --- Fix Version/s: (was: 1.4.0) 1.5.0 > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Improvement > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai > Fix For: 1.5.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Till Rohrmann updated FLINK-6944: - Priority: Major (was: Blocker) > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Improvement > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai > Fix For: 1.4.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Updated] (FLINK-6944) Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for serializer compatibility checks
[ https://issues.apache.org/jira/browse/FLINK-6944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Aljoscha Krettek updated FLINK-6944: Priority: Blocker (was: Major) > Introduce DefaultTypeSerializerConfigSnapshot as a base implementation for > serializer compatibility checks > -- > > Key: FLINK-6944 > URL: https://issues.apache.org/jira/browse/FLINK-6944 > Project: Flink > Issue Type: Improvement > Components: State Backends, Checkpointing, Type Serialization System >Affects Versions: 1.3.0, 1.3.1 >Reporter: Tzu-Li (Gordon) Tai >Assignee: Tzu-Li (Gordon) Tai >Priority: Blocker > Fix For: 1.4.0 > > > Currently, we store both the {{TypeSerializer}} and its corresponding > {{TypeSerializerConfigSnapshot}} in checkpoints of managed state. This, in > most cases, are actually duplicate information. > This JIRA proposes to change this by only storing the > {{TypeSerializerConfigSnapshot}}, while at the same time, letting > {{TypeSerializer.snapshotConfiguration}} return a default > {{DefaultTypeSerializerConfigSnapshot}}. > This default simply serializes the serializer instance using Java > serialization. > The {{DefaultTypeSerializerConfigSnapshot}} should wrap the serializer bytes, > the serialVersionUID of the serializer class, and the serializer class' > classname. The latter two will be used to check compatibility in the default > implementation of {{TypeSerializer.ensureCompatibility}}. Specifically, if > classname / serialVersionUID has changed, the default implementation of > {{TypeSerializer.ensureCompatibility}} will simply return > {{CompatibilityResult.requiresMigration}} with the deserialized serializer as > the convert deserializer. -- This message was sent by Atlassian JIRA (v6.4.14#64029)