Class MergeConflictResultWrapper

java.lang.Object
com.linkedin.davinci.kafka.consumer.MergeConflictResultWrapper

public class MergeConflictResultWrapper extends Object
This wrapper is used to keep the context after handling Active/Active messages.
  • Constructor Details

  • Method Details

    • getMergeConflictResult

      public MergeConflictResult getMergeConflictResult()
    • getOldValueByteBufferProvider

      public Lazy<ByteBuffer> getOldValueByteBufferProvider()
    • wasOldValueAlive

      public boolean wasOldValueAlive()
      Captured before the transient record cache is updated, so it reflects the true pre-DCR state.
    • getActiveKeyCountBeforeAliveCheck

      public long getActiveKeyCountBeforeAliveCheck()
      Returns the activeKeyCount snapshot taken before wasOldValueAlive ran (for invalidation detection).
    • getOldRmdWithValueSchemaId

      public RmdWithValueSchemaId getOldRmdWithValueSchemaId()
    • getOldValueManifestContainer

      public ChunkedValueManifestContainer getOldValueManifestContainer()
    • getOldValueProvider

      public Lazy<ByteBufferValueRecord<ByteBuffer>> getOldValueProvider()
    • getUpdatedValueBytes

      public ByteBuffer getUpdatedValueBytes()
    • getUpdatedRmdBytes

      public ByteBuffer getUpdatedRmdBytes()
    • getValueProvider

      public Lazy<org.apache.avro.generic.GenericRecord> getValueProvider()
      Return a best-effort value provider with the following behaviors: 1. returns the new value provider for PUT and UPDATE. 2. returns the old value for DELETE (null for non-existent key). 3. returns null if the value is not available.