Interface MergeRecordHelper

  • All Known Implementing Classes:
    CollectionTimestampMergeRecordHelper

    @ThreadSafe
    public interface MergeRecordHelper
    The purpose of this interface is to extract common merge logic. For example, #putOnField(GenericRecord, GenericRecord, String, Object, long, int) putOnField can be used in below cases: 1. Put a new record on an existing record. 2. Partial update in write compute. Specifically, partial update tries to override specific fields in a record.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      UpdateResultStatus deleteRecord​(org.apache.avro.generic.GenericRecord currRecord, org.apache.avro.generic.GenericRecord currTimestampRecord, long deleteTimestamp, int deleteOperationColoID)  
      UpdateResultStatus putOnField​(org.apache.avro.generic.GenericRecord currentRecord, org.apache.avro.generic.GenericRecord currentTimestampRecord, org.apache.avro.Schema.Field currentRecordField, java.lang.Object newFieldValue, long putTimestamp, int putOperationColoID)  
    • Method Detail

      • putOnField

        UpdateResultStatus putOnField​(org.apache.avro.generic.GenericRecord currentRecord,
                                      org.apache.avro.generic.GenericRecord currentTimestampRecord,
                                      org.apache.avro.Schema.Field currentRecordField,
                                      java.lang.Object newFieldValue,
                                      long putTimestamp,
                                      int putOperationColoID)
      • deleteRecord

        UpdateResultStatus deleteRecord​(org.apache.avro.generic.GenericRecord currRecord,
                                        org.apache.avro.generic.GenericRecord currTimestampRecord,
                                        long deleteTimestamp,
                                        int deleteOperationColoID)