Class EndOfSegment
java.lang.Object
org.apache.avro.specific.SpecificRecordBase
com.linkedin.venice.kafka.protocol.EndOfSegment
- All Implemented Interfaces:
Externalizable,Serializable,Comparable<org.apache.avro.specific.SpecificRecord>,org.apache.avro.generic.GenericContainer,org.apache.avro.generic.GenericRecord,org.apache.avro.generic.IndexedRecord,org.apache.avro.specific.SpecificRecord
public class EndOfSegment
extends org.apache.avro.specific.SpecificRecordBase
implements org.apache.avro.specific.SpecificRecord
This ControlMessage is sent at least once per partition per producer. It may be sent more than once per partition/producer, but only after the producer has sent a StartOfSegment into that partition. There should be an equal number of StartOfSegment and EndOfSegment messages in each producer/partition pair.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionThe value of the checksum computed since the last StartOfSegment ControlMessage.A map containing the results of the aggregate computation strategies that were promised in the previous StartOfSegment ControlMessage.booleanThis field is set to true when the producer knows that there is no more data coming from its data source after this EndOfSegment.static final org.apache.avro.Schema -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.EndOfSegment(ByteBuffer checksumValue, List<Long> computedAggregates, Boolean finalSegment) All-args constructor. -
Method Summary
Modifier and TypeMethodDescriptionget(int field$) Gets the value of the 'checksumValue' field.static org.apache.avro.SchemaGets the value of the 'computedAggregates' field.booleanGets the value of the 'finalSegment' field.org.apache.avro.Schemaorg.apache.avro.specific.SpecificDatavoidvoidvoidsetChecksumValue(ByteBuffer value) Sets the value of the 'checksumValue' field.voidsetComputedAggregates(List<Long> value) Sets the value of the 'computedAggregates' field.voidsetFinalSegment(boolean value) Sets the value of the 'finalSegment' field.voidMethods inherited from class org.apache.avro.specific.SpecificRecordBase
compareTo, customDecode, customEncode, equals, get, getConversion, getConversion, hasCustomCoders, hashCode, put, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.avro.generic.GenericRecord
hasField
-
Field Details
-
SCHEMA$
public static final org.apache.avro.Schema SCHEMA$ -
checksumValue
The value of the checksum computed since the last StartOfSegment ControlMessage. -
computedAggregates
A map containing the results of the aggregate computation strategies that were promised in the previous StartOfSegment ControlMessage. The downstream consumer may choose to compare the value of these aggregates against those that it computed on its own ir oder to use them as additional validation safeguards, or it may choose to merely log them, or even ignore them altogether. -
finalSegment
public boolean finalSegmentThis field is set to true when the producer knows that there is no more data coming from its data source after this EndOfSegment. This happens at the time the producer is closed.
-
-
Constructor Details
-
EndOfSegment
public EndOfSegment()Default constructor. Note that this does not initialize fields to their default values from the schema. If that is desired then one should usenewBuilder(). -
EndOfSegment
All-args constructor.- Parameters:
checksumValue- The value of the checksum computed since the last StartOfSegment ControlMessage.computedAggregates- A map containing the results of the aggregate computation strategies that were promised in the previous StartOfSegment ControlMessage. The downstream consumer may choose to compare the value of these aggregates against those that it computed on its own ir oder to use them as additional validation safeguards, or it may choose to merely log them, or even ignore them altogether.finalSegment- This field is set to true when the producer knows that there is no more data coming from its data source after this EndOfSegment. This happens at the time the producer is closed.
-
-
Method Details
-
getClassSchema
public static org.apache.avro.Schema getClassSchema() -
getSpecificData
public org.apache.avro.specific.SpecificData getSpecificData()- Overrides:
getSpecificDatain classorg.apache.avro.specific.SpecificRecordBase
-
getSchema
public org.apache.avro.Schema getSchema()- Specified by:
getSchemain interfaceorg.apache.avro.generic.GenericContainer- Specified by:
getSchemain classorg.apache.avro.specific.SpecificRecordBase
-
get
- Specified by:
getin interfaceorg.apache.avro.generic.IndexedRecord- Specified by:
getin classorg.apache.avro.specific.SpecificRecordBase
-
put
- Specified by:
putin interfaceorg.apache.avro.generic.IndexedRecord- Specified by:
putin classorg.apache.avro.specific.SpecificRecordBase
-
getChecksumValue
Gets the value of the 'checksumValue' field.- Returns:
- The value of the checksum computed since the last StartOfSegment ControlMessage.
-
setChecksumValue
Sets the value of the 'checksumValue' field. The value of the checksum computed since the last StartOfSegment ControlMessage.- Parameters:
value- the value to set.
-
getComputedAggregates
Gets the value of the 'computedAggregates' field.- Returns:
- A map containing the results of the aggregate computation strategies that were promised in the previous StartOfSegment ControlMessage. The downstream consumer may choose to compare the value of these aggregates against those that it computed on its own ir oder to use them as additional validation safeguards, or it may choose to merely log them, or even ignore them altogether.
-
setComputedAggregates
Sets the value of the 'computedAggregates' field. A map containing the results of the aggregate computation strategies that were promised in the previous StartOfSegment ControlMessage. The downstream consumer may choose to compare the value of these aggregates against those that it computed on its own ir oder to use them as additional validation safeguards, or it may choose to merely log them, or even ignore them altogether.- Parameters:
value- the value to set.
-
getFinalSegment
public boolean getFinalSegment()Gets the value of the 'finalSegment' field.- Returns:
- This field is set to true when the producer knows that there is no more data coming from its data source after this EndOfSegment. This happens at the time the producer is closed.
-
setFinalSegment
public void setFinalSegment(boolean value) Sets the value of the 'finalSegment' field. This field is set to true when the producer knows that there is no more data coming from its data source after this EndOfSegment. This happens at the time the producer is closed.- Parameters:
value- the value to set.
-
writeExternal
- Specified by:
writeExternalin interfaceExternalizable- Overrides:
writeExternalin classorg.apache.avro.specific.SpecificRecordBase- Throws:
IOException
-
readExternal
- Specified by:
readExternalin interfaceExternalizable- Overrides:
readExternalin classorg.apache.avro.specific.SpecificRecordBase- Throws:
IOException
-