Skip to content

Conversation

@paulohtb6
Copy link
Contributor

@paulohtb6 paulohtb6 commented Oct 28, 2025

Update description of max_concurrent_producer_ids and transactional_id_expiration_ms

to match docs at
redpanda-data/docs#1425

Backports Required

  • none - not a bug fix
  • none - this is a backport
  • none - issue does not exist in previous branches
  • none - papercut/not impactful enough to backport
  • v25.2.x
  • v25.1.x
  • v24.3.x

Release Notes

Improvements

  • Improve description of max_concurrent_producer_ids and transactional_id_expiration_ms with details to prevent OOM scenarios.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR updates the documentation strings for two transaction-related configuration parameters to provide clearer guidance and warnings about memory management. The changes align the in-code descriptions with external documentation.

Key Changes:

  • Enhanced transactional_id_expiration_ms description to explain automatic producer ID cleanup and warn about high-churn workloads
  • Expanded max_concurrent_producer_ids description to clarify per-shard behavior, LRU eviction policy, and importantly warn about the default unlimited value potentially causing OOM crashes

Comment on lines +986 to +994
"Maximum number of active producer sessions per shard. Each shard "
"tracks producer IDs using an LRU (Least Recently Used) eviction "
"policy. When the configured limit is exceeded, the least recently "
"used producer IDs are evicted from the cache. IMPORTANT: The default "
"value is unlimited, which can lead to unbounded memory growth and "
"out-of-memory (OOM) crashes in production environments with heavy "
"producer usage, especially when using transactions or idempotent "
"producers. It is strongly recommended to set a reasonable limit in "
"production deployments.",
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

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

The description states 'When the configured limit is exceeded, the least recently used producer IDs are evicted from the cache,' but this behavior only applies when a limit is actually set. With the default unlimited value, no eviction occurs. Consider clarifying that eviction only happens when a finite limit is configured, e.g., 'When a finite limit is configured and exceeded, the least recently used producer IDs are evicted from the cache.'

Copilot uses AI. Check for mistakes.
@vbotbuildovich
Copy link
Collaborator

CI test results

test results on build#75119
test_class test_method test_arguments test_kind job_url test_status passed reason test_history
DataMigrationsApiTest test_creating_and_listing_migrations null integration https://buildkite.com/redpanda/redpanda/builds/75119#019a2b5c-b10a-4313-bb50-66dda3b5124b FLAKY 16/21 upstream reliability is '99.69183359013869'. current run reliability is '76.19047619047619'. drift is 23.50136 and the allowed drift is set to 50. The test should PASS https://redpanda.metabaseapp.com/dashboard/87-tests?tab=142-dt-individual-test-history&test_class=DataMigrationsApiTest&test_method=test_creating_and_listing_migrations
src/v/storage/mvlog/tests/file_test src/v/storage/mvlog/tests/file_test unit https://buildkite.com/redpanda/redpanda/builds/75119#019a2b3d-e9ab-4d0a-aa07-4ab40bc7b102 FAIL 0/1

@bharathv bharathv enabled auto-merge October 31, 2025 17:22
@bharathv bharathv merged commit bacdbe0 into dev Oct 31, 2025
18 of 19 checks passed
@bharathv bharathv deleted the update-prop branch October 31, 2025 19:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants