pingcap / pingcap/ticdc

kafka: remove legacy Sarama implementation and tests

Open
#5,890 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

component/kafka component/test difficulty/easy type/refactor
Dominant language
Go
Stars
56
Forks
63
Avg merge
2d 20h
Merged PRs (30d)
34

Description

What to build

After #4167 completes the Kafka Sink migration to franz-go, remove the remaining legacy Sarama implementation, adapter-only tests, admin abstractions, generated mocks, and test tooling in one dedicated cleanup PR. Preserve the active franz-go Kafka Sink behavior, user-visible configuration semantics, error semantics, and resource-close behavior while moving equivalent coverage to the franz-go adapter where needed.

Acceptance criteria

  • #4167 is merged and the active Kafka Sink production path uses franz-go.
  • Remove legacy Sarama producer and admin implementations, along with interfaces used only by those implementations.
  • Remove generated mocks and mock-generation entries that exist only for the legacy Sarama path; make generate_mock produces only expected changes.
  • Remove obsolete Sarama adapter tests for compression, Kafka version selection, retry, timeout, SCRAM setup, and other Sarama-only configuration details.
  • Preserve equivalent user-visible Kafka configuration coverage in the franz-go adapter, including existing error and resource-close semantics.
  • Kafka Sink production code, tests, and test tooling no longer import or reference Sarama.
  • make check passes.
  • Race-enabled tests pass for the security, Kafka Sink, and downstream Kafka adapter packages.
  • Relevant Kafka integration tests pass.

Blocked by

  • #4167

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

First verify that #4167 is merged and inspect the active franz-go Kafka Sink path. Then locate the legacy Sarama producer and admin implementations, adapter-only tests, generated mocks, and mock-generation entries, using existing Kafka configuration and integration tests as the coverage map. Done means no Sarama references remain, equivalent error and resource-close behavior is covered, generation and checks pass, and the specified race and integration tests succeed.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kafka
Domain
data-engineering, stream-processing
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.