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
Modifier 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.boolean
This 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
ConstructorDescriptionDefault 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.Schema
Gets the value of the 'computedAggregates' field.boolean
Gets the value of the 'finalSegment' field.org.apache.avro.Schema
org.apache.avro.specific.SpecificData
void
void
void
setChecksumValue
(ByteBuffer value) Sets the value of the 'checksumValue' field.void
setComputedAggregates
(List<Long> value) Sets the value of the 'computedAggregates' field.void
setFinalSegment
(boolean value) Sets the value of the 'finalSegment' field.void
Methods inherited from class org.apache.avro.specific.SpecificRecordBase
compareTo, customDecode, customEncode, equals, get, getConversion, getConversion, hasCustomCoders, hashCode, put, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods 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:
getSpecificData
in classorg.apache.avro.specific.SpecificRecordBase
-
getSchema
public org.apache.avro.Schema getSchema()- Specified by:
getSchema
in interfaceorg.apache.avro.generic.GenericContainer
- Specified by:
getSchema
in classorg.apache.avro.specific.SpecificRecordBase
-
get
- Specified by:
get
in interfaceorg.apache.avro.generic.IndexedRecord
- Specified by:
get
in classorg.apache.avro.specific.SpecificRecordBase
-
put
- Specified by:
put
in interfaceorg.apache.avro.generic.IndexedRecord
- Specified by:
put
in 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:
writeExternal
in interfaceExternalizable
- Overrides:
writeExternal
in classorg.apache.avro.specific.SpecificRecordBase
- Throws:
IOException
-
readExternal
- Specified by:
readExternal
in interfaceExternalizable
- Overrides:
readExternal
in classorg.apache.avro.specific.SpecificRecordBase
- Throws:
IOException
-