public static final class RowSerializer.RowSerializerSnapshot extends CompositeTypeSerializerSnapshot<Row,RowSerializer>
TypeSerializerSnapshot
for RowSerializer.CompositeTypeSerializerSnapshot.OuterSchemaCompatibility
Constructor and Description |
---|
RowSerializerSnapshot() |
Modifier and Type | Method and Description |
---|---|
protected RowSerializer |
createOuterSerializerWithNestedSerializers(TypeSerializer<?>[] nestedSerializers)
Creates an instance of the outer serializer with a given array of its nested serializers.
|
protected int |
getCurrentOuterSnapshotVersion()
Returns the version of the current outer snapshot's written binary format.
|
protected TypeSerializer<?>[] |
getNestedSerializers(RowSerializer outerSerializer)
Gets the nested serializers from the outer serializer.
|
protected void |
readOuterSnapshot(int readOuterSnapshotVersion,
DataInputView in,
ClassLoader userCodeClassLoader)
Reads the outer snapshot, i.e. any information beyond the nested serializers of the outer
serializer.
|
protected CompositeTypeSerializerSnapshot.OuterSchemaCompatibility |
resolveOuterSchemaCompatibility(TypeSerializerSnapshot<Row> oldSerializerSnapshot)
Checks the schema compatibility of the given old serializer snapshot based on the outer
snapshot.
|
protected void |
writeOuterSnapshot(DataOutputView out)
Writes the outer snapshot, i.e. any information beyond the nested serializers of the outer
serializer.
|
getCurrentVersion, getNestedSerializerSnapshots, isOuterSnapshotCompatible, readSnapshot, resolveOuterSchemaCompatibility, resolveSchemaCompatibility, restoreSerializer, writeSnapshot
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
readVersionedSnapshot, resolveSchemaCompatibility, writeVersionedSnapshot
protected int getCurrentOuterSnapshotVersion()
CompositeTypeSerializerSnapshot
getCurrentOuterSnapshotVersion
in class CompositeTypeSerializerSnapshot<Row,RowSerializer>
protected void readOuterSnapshot(int readOuterSnapshotVersion, DataInputView in, ClassLoader userCodeClassLoader) throws IOException
CompositeTypeSerializerSnapshot
The base implementation of this methods reads nothing, i.e. it assumes that the outer
serializer only has nested serializers and no extra information. Otherwise, if the outer
serializer contains some extra information that has been persisted as part of the serializer
snapshot, this must be overridden. Note that this method and the corresponding methods CompositeTypeSerializerSnapshot.writeOuterSnapshot(DataOutputView)
, CompositeTypeSerializerSnapshot.resolveOuterSchemaCompatibility(TypeSerializerSnapshot)
needs to be implemented.
readOuterSnapshot
in class CompositeTypeSerializerSnapshot<Row,RowSerializer>
readOuterSnapshotVersion
- the read version of the outer snapshot.in
- the DataInputView
to read the outer snapshot from.userCodeClassLoader
- the user code class loader.IOException
protected void writeOuterSnapshot(DataOutputView out) throws IOException
CompositeTypeSerializerSnapshot
The base implementation of this methods writes nothing, i.e. it assumes that the outer
serializer only has nested serializers and no extra information. Otherwise, if the outer
serializer contains some extra information that needs to be persisted as part of the
serializer snapshot, this must be overridden. Note that this method and the corresponding
methods CompositeTypeSerializerSnapshot.readOuterSnapshot(int, DataInputView, ClassLoader)
, CompositeTypeSerializerSnapshot.resolveOuterSchemaCompatibility(TypeSerializerSnapshot)
needs to be implemented.
writeOuterSnapshot
in class CompositeTypeSerializerSnapshot<Row,RowSerializer>
out
- the DataOutputView
to write the outer snapshot to.IOException
protected CompositeTypeSerializerSnapshot.OuterSchemaCompatibility resolveOuterSchemaCompatibility(TypeSerializerSnapshot<Row> oldSerializerSnapshot)
CompositeTypeSerializerSnapshot
The base implementation of this method assumes that the outer serializer only has nested
serializers and no extra information, and therefore the result of the check is CompositeTypeSerializerSnapshot.OuterSchemaCompatibility.COMPATIBLE_AS_IS
. Otherwise, if the outer serializer contains some
extra information that has been persisted as part of the serializer snapshot, this must be
overridden. Note that this method and the corresponding methods CompositeTypeSerializerSnapshot.writeOuterSnapshot(DataOutputView)
, CompositeTypeSerializerSnapshot.readOuterSnapshot(int, DataInputView,
ClassLoader)
needs to be implemented.
resolveOuterSchemaCompatibility
in class CompositeTypeSerializerSnapshot<Row,RowSerializer>
oldSerializerSnapshot
- the old serializer snapshot, which contains the old outer
information to check against.CompositeTypeSerializerSnapshot.OuterSchemaCompatibility
indicating whether the new serializer's outer
information is compatible, requires migration, or incompatible with the one written in
this snapshot.protected TypeSerializer<?>[] getNestedSerializers(RowSerializer outerSerializer)
CompositeTypeSerializerSnapshot
getNestedSerializers
in class CompositeTypeSerializerSnapshot<Row,RowSerializer>
outerSerializer
- the outer serializer.protected RowSerializer createOuterSerializerWithNestedSerializers(TypeSerializer<?>[] nestedSerializers)
CompositeTypeSerializerSnapshot
createOuterSerializerWithNestedSerializers
in class CompositeTypeSerializerSnapshot<Row,RowSerializer>
nestedSerializers
- array of nested serializers to create the outer serializer with.Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.