Skip to content

KAFKA-2752: Follow up to fix checkstlye - #492

Closed
granthenke wants to merge 1 commit into
apache:trunkfrom
granthenke:fix
Closed

KAFKA-2752: Follow up to fix checkstlye#492
granthenke wants to merge 1 commit into
apache:trunkfrom
granthenke:fix

Conversation

@granthenke

Copy link
Copy Markdown
Member

No description provided.

@ewencp

ewencp commented Nov 10, 2015

Copy link
Copy Markdown
Contributor

Sorry about that @granthenke, not sure how I missed that. LGTM.

@asfgit asfgit closed this in 04827e6 Nov 10, 2015
@guozhangwang

Copy link
Copy Markdown
Contributor

Cherry picking to 0.9.0 failed with some conflicts, will do an manual commit.

EDIT: since 2752 is not committed to 0.9.0, we do not need to cherry pick it either.

@granthenke

Copy link
Copy Markdown
Member Author

@ewencp not a problem at all. The builds are taking longer and longer, and on Jenkins they are piling up. I have added failing fast to the build refactoring work I am doing for KAFKA-2787. See the initial work in #477.

That way waiting for the build to commit wont be as painful.

@ewencp

ewencp commented Nov 10, 2015

Copy link
Copy Markdown
Contributor

@granthenke Awesome, those will be very welcome improvements. Moving rat up to run earlier probably isn't too bad since people aren't adding new files that often. I'd be wary about making too much stuff fail fast though -- checkstyle in particular is really annoying if it runs before tests.

@ewencp

ewencp commented Nov 11, 2015

Copy link
Copy Markdown
Contributor

@guozhangwang 2752 didn't go on 0.9.0, it shouldn't need cherry-picking

@granthenke
granthenke deleted the fix branch November 17, 2015 17:06
granders referenced this pull request in confluentinc/kafka Nov 18, 2015
Author: Grant Henke <granthenke@gmail.com>

Reviewers: Ewen Cheslack-Postava

Closes #492 from granthenke/fix
granders referenced this pull request in confluentinc/kafka Mar 1, 2016
Author: Grant Henke <granthenke@gmail.com>

Reviewers: Ewen Cheslack-Postava

Closes #492 from granthenke/fix
AnatolyPopov pushed a commit to aiven/kafka that referenced this pull request Mar 24, 2026
…cs (apache#492)

* test(metadata:diskless): improve test coverage for broker fencing and unregister scenarios

- Add _noRacks and _withRacks test variants for consistent coverage
- Fix tests that assumed broker 0 was always the leader
- Get actual leader from partition registration before fencing/unregistering
- Use dynamic assertions based on actual partition state
- Improve assertion error messages for clarity

* feat(controller:diskless): add server config for managed replicas

Add diskless.managed.rf.enable config (default: false) to control whether
diskless topics use managed replicas with RF=rack_count or legacy RF=1.

This config only affects topic creation. When enabled, new diskless topics
will be created with one replica per rack using standard KRaft placement.

Part of Phase 1: Diskless Managed Replicas
(See apache#478 docs/inkless/ts-unification/DISKLESS_MANAGED_RF.md)

# Conflicts:
#	core/src/main/scala/kafka/server/ControllerServer.scala
#	core/src/main/scala/kafka/server/KafkaConfig.scala
#	metadata/src/main/java/org/apache/kafka/controller/QuorumController.java
#	server-common/src/main/java/org/apache/kafka/server/config/ServerConfigs.java

* feat(metadata:diskless): implement managed replicas for diskless topics

When diskless.managed.rf.enable=true, new diskless topics are created with
RF=rack_count using standard KRaft replica placement instead of legacy RF=1.

Changes:
- Compute RF from rack cardinality via rackCardinality()
- Use standard replicaPlacer.place() for rack-aware assignment
- Allow manual replica assignments when managed replicas enabled
- Add checkstyle suppression for extended createTopic method

Phase 1 limitations:
- Add Partitions inherits RF from existing partitions (Phase 3)
- Transformer not updated, uses legacy routing (Phase 2)
- Integration tests deferred to Phase 2
(See apache#478 docs/inkless/ts-unification/DISKLESS_MANAGED_RF.md)

� Conflicts:
�	metadata/src/main/java/org/apache/kafka/controller/QuorumController.java
�	metadata/src/main/java/org/apache/kafka/controller/ReplicationControlManager.java
�	metadata/src/test/java/org/apache/kafka/controller/ReplicationControlManagerTest.java

* fixup! feat(controller:diskless): add server config for managed replicas

* fixup! feat(metadata:diskless): implement managed replicas for diskless topics

(cherry picked from commit 09ba4d1)
AnatolyPopov pushed a commit to aiven/kafka that referenced this pull request Mar 24, 2026
…cs (apache#492)

* test(metadata:diskless): improve test coverage for broker fencing and unregister scenarios

- Add _noRacks and _withRacks test variants for consistent coverage
- Fix tests that assumed broker 0 was always the leader
- Get actual leader from partition registration before fencing/unregistering
- Use dynamic assertions based on actual partition state
- Improve assertion error messages for clarity

* feat(controller:diskless): add server config for managed replicas

Add diskless.managed.rf.enable config (default: false) to control whether
diskless topics use managed replicas with RF=rack_count or legacy RF=1.

This config only affects topic creation. When enabled, new diskless topics
will be created with one replica per rack using standard KRaft placement.

Part of Phase 1: Diskless Managed Replicas
(See apache#478 docs/inkless/ts-unification/DISKLESS_MANAGED_RF.md)

# Conflicts:
#	core/src/main/scala/kafka/server/ControllerServer.scala
#	core/src/main/scala/kafka/server/KafkaConfig.scala
#	metadata/src/main/java/org/apache/kafka/controller/QuorumController.java
#	server-common/src/main/java/org/apache/kafka/server/config/ServerConfigs.java

* feat(metadata:diskless): implement managed replicas for diskless topics

When diskless.managed.rf.enable=true, new diskless topics are created with
RF=rack_count using standard KRaft replica placement instead of legacy RF=1.

Changes:
- Compute RF from rack cardinality via rackCardinality()
- Use standard replicaPlacer.place() for rack-aware assignment
- Allow manual replica assignments when managed replicas enabled
- Add checkstyle suppression for extended createTopic method

Phase 1 limitations:
- Add Partitions inherits RF from existing partitions (Phase 3)
- Transformer not updated, uses legacy routing (Phase 2)
- Integration tests deferred to Phase 2
(See apache#478 docs/inkless/ts-unification/DISKLESS_MANAGED_RF.md)

� Conflicts:
�	metadata/src/main/java/org/apache/kafka/controller/QuorumController.java
�	metadata/src/main/java/org/apache/kafka/controller/ReplicationControlManager.java
�	metadata/src/test/java/org/apache/kafka/controller/ReplicationControlManagerTest.java

* fixup! feat(controller:diskless): add server config for managed replicas

* fixup! feat(metadata:diskless): implement managed replicas for diskless topics
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants