Skip to content

Inkless 4.0 with remote storage patch#512

Closed
giuseppelillo wants to merge 1 commit intoinkless-4.0from
inkless-4.0-with-remote-storage-patch
Closed

Inkless 4.0 with remote storage patch#512
giuseppelillo wants to merge 1 commit intoinkless-4.0from
inkless-4.0-with-remote-storage-patch

Conversation

@giuseppelillo
Copy link
Contributor

Delete this text and replace it with a detailed description of your change. The
PR title and body will become the squashed commit message.

If you would like to tag individuals, add some commentary, upload images, or
include other supplemental information that should not be part of the eventual
commit message, please use a separate comment.

If applicable, please include a summary of the testing strategy (including
rationale) for the proposed change. Unit and/or integration tests are expected
for any behavior change and system tests should be considered for larger
changes.

@giuseppelillo giuseppelillo changed the base branch from main to inkless-4.0 February 16, 2026 16:35
@giuseppelillo giuseppelillo force-pushed the inkless-4.0-with-remote-storage-patch branch 3 times, most recently from bfc04a7 to 550741f Compare February 16, 2026 17:31
@giuseppelillo giuseppelillo force-pushed the inkless-4.0-with-remote-storage-patch branch from 550741f to 49cf4ec Compare February 16, 2026 17:32
Comment on lines +150 to +154
// When creating a diskless topic by specifying remote.storage.enable=true
var result2 = createTopic(admin, "disklessWithRemoteStorageTrue", Map.of(
DISKLESS_ENABLE_CONFIG, "true",
REMOTE_LOG_STORAGE_ENABLE_CONFIG, "true"
));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this raise an error instead? I think this would be very surprising when conflicting configuration is given and something still would get created?

val disklessStorageSystemEnabled: Boolean = getBoolean(ServerConfigs.DISKLESS_STORAGE_SYSTEM_ENABLE_CONFIG)
val disklessAllowFromClassicEnabled: Boolean = getBoolean(ServerConfigs.DISKLESS_ALLOW_FROM_CLASSIC_ENABLE_CONFIG)
val defaultRemoteStorageForTopicCreateEnabled: Boolean = getBoolean(ServerConfigs.DEFAULT_REMOTE_STORAGE_FOR_TOPIC_CREATE_ENABLE_CONFIG)
val defaultRemoteStorageForTopicCreateLocalOnlyTopicRegex: String =
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I find a regex to match multiple different topics and prefixes cumbersome. Maybe it is better to have list of regex/matchers?
The known local topic patterns are, for clarity I've annotated the ones the Topic.isInternal checks with <TOPIC CHECK> and <CHECKED> for the ones checked in the local topic check isLocalOnlyTopic by matching __.

<TOPIC CHECK> KAFKA_GROUP_METADATA_TOPIC_NAME: Final = TopicName("__consumer_offsets")
<TOPIC CHECK> KAFKA_TRANSACTION_STATE_TOPIC_NAME: Final = TopicName("__transaction_state")
<TOPIC CHECK> KAFKA_SHARE_GROUP_STATE_TOPIC_NAME: Final = TopicName("__share_group_state")

<CHECKED> KAFKA_REMOTE_LOG_METADATA_TOPIC_NAME: Final = TopicName("__remote_log_metadata")
<CHECKED> KAFKA_CLUSTER_METADATA_TOPIC_NAME: Final = TopicName("__cluster_metadata")
<CHECKED> COLOCATED_KAFKA_CONNECT_CONFIG_TOPIC_NAME: Final = TopicName("__connect_configs")
<CHECKED> COLOCATED_KAFKA_CONNECT_OFFSET_TOPIC_NAME: Final = TopicName("__connect_offsets")
<CHECKED> COLOCATED_KAFKA_CONNECT_STATUS_TOPIC_NAME: Final = TopicName("__connect_status")

# Not checked, needs the regex.
SCHEMA_REGISTRY_DEFAULT_TOPIC = TopicName("_schemas")
MM2_INTERNAL_TOPIC_WILDCARD: Final[str] = "mm2-*"

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.

2 participants

Comments