Default replication factor for internal offsets topic prevents users from reading from clusters that have less than three nodes.
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 28/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- kafka, kubernetes, rust
- Domain
- devops, distributed-systems
Research direction
Start by tracing how the operator handles offsets.topic.replication.factor and broker-count validation when deploying Kafka clusters with fewer than three nodes. Compare the documented behavior with the proposed documentation, validation, or automatic-configuration options, then define and verify one accepted outcome for reading from small clusters.
Written by the indexing model from the issue text.
Description
When deploying Kafka clusters with less than three nodes the default value of 3 for offsets.topic.replication.factor prohibits users from reading any values from topics.
Writing works fine, if topics are created with few enough partitions - or auto-created which observes available broker count for the replication factor.
But when reading for the first time, Kafka internally tries to create the __consumer_offsets topic, and this is required to have three partitions by default. And until this has been created no read requests are allowed.
The broker simply keeps logging
kafka [2023-05-05 15:20:39,078] INFO [Admin Manager on Broker 1001]: Error processing create topic request CreatableTopic(name='__consumer_offsets', numPartitions=50, replicationFactor=3, assignments=[], configs=[CreateableTopicConfig(name='compression.type', value='producer'), CreateableTopicConfig(name='cleanup.policy', value='compact'), CreateableTopicConfig(name='segment.bytes'
kafka org.apache.kafka.common.errors.InvalidReplicationFactorException: Replication factor: 3 larger than available brokers: 1.
Possible solutions are:
- documentation - this is not strictly speaking a bug, but also not nice
- catch it during validation in the operator and log an error
- automatically set this in the config when deploying less than 3 brokers
- ...
- Dominant language
- Rust
- Stars
- 28
- Forks
- 8
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 9
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from stackabletech/kafka-operator
-
type/bug
Difficulty 5/5 Over a week Newbie friendliness 35/100
stackabletech/kafka-operator#955 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
stackabletech/kafka-operator#941 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
stackabletech/kafka-operator#874 ·
-
Kafka 4.x Openrefinement-needed
stackabletech/kafka-operator#870 · 5 comments · 2 assignees ·
-
customer-request
Difficulty 4/5 3-5 days Newbie friendliness 30/100
stackabletech/kafka-operator#859 ·
All issues in stackabletech/kafka-operator
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
gitbutlerapp/gitbutler#15998 · 1 comment ·
-
bug triage:deciding
Difficulty 1/5 Under an hour Newbie friendliness 88/100
open-telemetry/otel-arrow#4132 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100