CDAP uses the following HBase Coprocessors as of release 3.6.0

Transaction Coprocessor

Source: TransactionProcessor.java and CDAP's extension DefaultTransactionProcessor.java

Transaction Coprocessor is used to ensure that data reads and writes confirm to transactional guarantees. It also cleans up data from invalid transactions on flush and compactions.

It runs on HBase region servers and intercepts the following operations -

Increment Coprocessor

Source: IncrementHandler.java

Increment coprocessor is used for readless increments. It converts an increment into a delta increment without reading the previous value. It also sums up delta increments on reads or a flush or compaction.

It runs on HBase region servers and intercepts the following operations -

Queue Coprocessors

CDAP flow-queue has two coprocessors on HBase region servers.

  1. Source: HBaseQueueRegionObserver.java 
  2. Source: DequeueScanObserver.java