Skip to content

Conversation

@WillemKauf
Copy link
Contributor

@WillemKauf WillemKauf commented Dec 12, 2024

To revert regressions discussed in redpanda-data/kgo-verifier#63.

Using the modified ValueGenerator::Generate() function for each record in the producer_worker was a lot slower than just simply making an empty payload.

The following benchmarks were generated:

Benchmark_random_payload10-32           	 2445903	        485.2 ns/op
Benchmark_random_payload100-32           	  678870	         1773 ns/op
Benchmark_random_payload1000-32           	  105667	        13700 ns/op
Benchmark_random_payload1e4-32          	    9104	       126782 ns/op
Benchmark_random_payload1e5-32          	    1135	      1151425 ns/op
Benchmark_random_payload1e6-32          	     100	     13046547 ns/op
====================================================================================
Benchmark_empty_payload10-32            	79950942	        20.54 ns/op
Benchmark_empty_payload100-32            	24089101	        54.78 ns/op
Benchmark_empty_payload1000-32            	 3789248	        366.1 ns/op
Benchmark_empty_payload1e4-32           	  670096	         2059 ns/op
Benchmark_empty_payload1e5-32           	   58912	        23021 ns/op
Benchmark_empty_payload1e6-32           	    5600	       290045 ns/op

As can be seen, generating the random payload and ensuring it is UTF-8 valid is orders of magnitude slower than the empty payload.

Revert the use of Generate() here in place of the empty payload.

However, if the user has indicated they want to validate the latest key-value pair produced, generate a (value-{%018d}, offset) message in the record.

This does mean that message sizes that are less than 24 bytes are not honored if the validate-latest-values flag is passed.

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
  • v24.3.x
  • v24.2.x
  • v24.1.x

Release Notes

  • none

@WillemKauf WillemKauf requested a review from a team as a code owner December 12, 2024 23:33
@WillemKauf WillemKauf requested review from clee and removed request for a team and clee December 12, 2024 23:33
@vbotbuildovich
Copy link
Collaborator

vbotbuildovich commented Dec 13, 2024

CI test results

test results on build#59696
test_id test_kind job_url test_status passed
rptest.tests.datalake.partition_movement_test.PartitionMovementTest.test_cross_core_movements.cloud_storage_type=CloudStorageType.S3 ducktape https://buildkite.com/redpanda/redpanda/builds/59696#0193bda0-af44-49ff-976e-30aab23c8d13 FLAKY 3/6
test results on build#59739
test_id test_kind job_url test_status passed
rptest.tests.cloud_retention_test.CloudRetentionTest.test_cloud_retention.max_consume_rate_mb=20.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59739#0193c1da-65ed-42d1-a7d9-ab6a5cd714e1 FAIL 0/6
rptest.tests.cloud_retention_test.CloudRetentionTest.test_cloud_retention.max_consume_rate_mb=None.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59739#0193c1da-65ea-4ea6-b207-509748fefc38 FAIL 0/6
rptest.tests.random_node_operations_test.RandomNodeOperationsTest.test_node_operations.enable_failures=False.mixed_versions=False.with_tiered_storage=False.with_iceberg=True.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59739#0193c1da-65ed-42d1-a7d9-ab6a5cd714e1 FAIL 0/1
rptest.tests.random_node_operations_test.RandomNodeOperationsTest.test_node_operations.enable_failures=False.mixed_versions=False.with_tiered_storage=True.with_iceberg=True.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59739#0193c1da-65ed-42d1-a7d9-ab6a5cd714e1 FAIL 0/1
rptest.tests.random_node_operations_test.RandomNodeOperationsTest.test_node_operations.enable_failures=True.mixed_versions=False.with_tiered_storage=False.with_iceberg=True.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59739#0193c1da-65ed-42d1-a7d9-ab6a5cd714e1 FAIL 0/1
rptest.tests.random_node_operations_test.RandomNodeOperationsTest.test_node_operations.enable_failures=True.mixed_versions=False.with_tiered_storage=True.with_iceberg=True.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59739#0193c1da-65ed-42d1-a7d9-ab6a5cd714e1 FAIL 0/1
test results on build#59758
test_id test_kind job_url test_status passed
rptest.tests.cloud_retention_test.CloudRetentionTest.test_cloud_retention.max_consume_rate_mb=None.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59758#0193c3c9-b005-486a-8025-30aadf7d05b5 FAIL 0/6
rptest.tests.e2e_shadow_indexing_test.EndToEndShadowIndexingTest.test_write.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59758#0193c3c9-b005-486a-8025-30aadf7d05b5 FAIL 0/1
rptest.tests.e2e_shadow_indexing_test.EndToEndShadowIndexingTestCompactedTopic.test_write.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59758#0193c3c9-b005-486a-8025-30aadf7d05b5 FAIL 0/1
test results on build#59770
test_id test_kind job_url test_status passed
rptest.tests.cloud_retention_test.CloudRetentionTest.test_cloud_retention.max_consume_rate_mb=None.cloud_storage_type=CloudStorageType.ABS ducktape https://buildkite.com/redpanda/redpanda/builds/59770#0193c6dd-84ab-44af-b181-a9e7a1eadff9 FAIL 0/6

@WillemKauf
Copy link
Contributor Author

Force push to:

  • point back to redpanda-data/kgo-verifier repo

@vbotbuildovich
Copy link
Collaborator

vbotbuildovich commented Dec 13, 2024

Retry command for Build#59739

please wait until all jobs are finished before running the slash command



/ci-repeat 1
tests/rptest/tests/random_node_operations_test.py::RandomNodeOperationsTest.test_node_operations@{"cloud_storage_type":2,"enable_failures":false,"mixed_versions":false,"with_iceberg":true,"with_tiered_storage":true}
tests/rptest/tests/random_node_operations_test.py::RandomNodeOperationsTest.test_node_operations@{"cloud_storage_type":2,"enable_failures":false,"mixed_versions":false,"with_iceberg":true,"with_tiered_storage":false}
tests/rptest/tests/random_node_operations_test.py::RandomNodeOperationsTest.test_node_operations@{"cloud_storage_type":2,"enable_failures":true,"mixed_versions":false,"with_iceberg":true,"with_tiered_storage":false}
tests/rptest/tests/random_node_operations_test.py::RandomNodeOperationsTest.test_node_operations@{"cloud_storage_type":2,"enable_failures":true,"mixed_versions":false,"with_iceberg":true,"with_tiered_storage":true}
tests/rptest/tests/cloud_retention_test.py::CloudRetentionTest.test_cloud_retention@{"cloud_storage_type":2,"max_consume_rate_mb":20}
tests/rptest/tests/cloud_retention_test.py::CloudRetentionTest.test_cloud_retention@{"cloud_storage_type":2,"max_consume_rate_mb":null}
tests/rptest/tests/e2e_shadow_indexing_test.py::EndToEndShadowIndexingTestCompactedTopic.test_compacting_during_leadership_transfer@{"cloud_storage_type":2}

@vbotbuildovich
Copy link
Collaborator

vbotbuildovich commented Dec 14, 2024

Retry command for Build#59758

please wait until all jobs are finished before running the slash command


/ci-repeat 1
tests/rptest/tests/e2e_shadow_indexing_test.py::EndToEndShadowIndexingTest.test_write@{"cloud_storage_type":2}
tests/rptest/tests/e2e_shadow_indexing_test.py::EndToEndShadowIndexingTestCompactedTopic.test_write@{"cloud_storage_type":2}
tests/rptest/tests/cloud_retention_test.py::CloudRetentionTest.test_cloud_retention@{"cloud_storage_type":2,"max_consume_rate_mb":null}

@piyushredpanda piyushredpanda merged commit 3c5a1e4 into redpanda-data:dev Dec 14, 2024
10 of 16 checks passed
@vbotbuildovich
Copy link
Collaborator

Retry command for Build#59770

please wait until all jobs are finished before running the slash command

/ci-repeat 1
tests/rptest/tests/cloud_retention_test.py::CloudRetentionTest.test_cloud_retention@{"cloud_storage_type":2,"max_consume_rate_mb":null}

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.

4 participants