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

    Modifier and Type
    Method
    Description
    deleteRecord(org.apache.avro.generic.GenericRecord currRecord, org.apache.avro.generic.GenericRecord currTimestampRecord, long deleteTimestamp, int deleteOperationColoID)
     
    putOnField(org.apache.avro.generic.GenericRecord currentRecord, org.apache.avro.generic.GenericRecord currentTimestampRecord, org.apache.avro.Schema.Field currentRecordField, Object newFieldValue, long putTimestamp, int putOperationColoID)
     
  • Method Details

    • putOnField

      UpdateResultStatus putOnField(org.apache.avro.generic.GenericRecord currentRecord, org.apache.avro.generic.GenericRecord currentTimestampRecord, org.apache.avro.Schema.Field currentRecordField, 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)