Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-25494

Duplicate element serializer during DefaultOperatorStateBackendSnapshotStrategy#syncPrepareResources

    XMLWordPrintableJSON

Details

    Description

      Currently, during DefaultOperatorStateBackendSnapshotStrategy#syncPrepareResources, it will copy the array list serializer via PartitionableListState#deepCopy. However, it just initialize another ArrayListSerializer and not duplicate the internal state serializer:

       

      See "internalListCopySerializer":
       

      private PartitionableListState(
              RegisteredOperatorStateBackendMetaInfo<S> stateMetaInfo, ArrayList<S> internalList) {
      
          this.stateMetaInfo = Preconditions.checkNotNull(stateMetaInfo);
          this.internalList = Preconditions.checkNotNull(internalList);
          this.internalListCopySerializer =
                  new ArrayListSerializer<>(stateMetaInfo.getPartitionStateSerializer());
      } 

       

      This would cause unexpected problem with the usage of kryo serializer.

      Attachments

        Issue Links

          Activity

            People

              yunta Yun Tang
              yunta Yun Tang
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: