Versions Compared

Key

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

...

To ensure backward compatibility, the deprecated configuration remote.log.manager.thread.pool.size will still be functional. However, it should be removed in version 5.0.

The logic for RemoteLogManagerConfig#remoteLogManagerFollowerThreadPoolSize is shown below.

Code Block
languagejava
public int remoteLogManagerFollowerThreadPoolSize() {
    if (config.originals().containsKey(REMOTE_LOG_MANAGER_FOLLOWER_THREAD_POOL_SIZE_PROP)) {
        return config.getInt(REMOTE_LOG_MANAGER_FOLLOWER_THREAD_POOL_SIZE_PROP);
    } else {
        return config.getInt(REMOTE_LOG_MANAGER_THREAD_POOL_SIZE_PROP);
    }
}

This method first checks whether the user has explicitly set remote.log.manager.follower.thread.pool.size. If not, it falls back to remote.log.manager.thread.pool.size.

So remote.log.manager.follower.thread.pool.size always takes precedence, regardless of whether it's configured statically in the broker config file or dynamically at runtime.

For example, if the user sets If both remote.log.manager.thread.pool.size=10 and later dynamically configures remote.log.manager.follower.thread.pool.size are set=8, the latter will take precedencefollower thread pool size will be 8.

Test Plan

The patch will include both unit and integration tests to ensure full coverage.

...