Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents

...

Overview

Engineers

Approvers

Objective

Refactor the current KafkaConsumer implementation to separate out the API processing in the user thread from the network I/O and heartbeat processing in a dedicated background thread

Status

In progress

Problem Statement

The current KafkaConsumer implementation suffers from a number of issues related to an inconsistent approach to ownership of resources among different threads. Complicated and error-prone synchronization and communication has been applied that makes the code difficult to reason on and has lead to a class of bugs and issues.