hachikuji commented on a change in pull request #9026:
URL: https://github.com/apache/kafka/pull/9026#discussion_r455432589



##########
File path: tests/kafkatest/tests/core/transactions_test.py
##########
@@ -47,11 +47,15 @@ def __init__(self, test_context):
         self.num_output_partitions = 3
         self.num_seed_messages = 100000
         self.transaction_size = 750
-        # The timeout of transaction should be lower than the timeout of 
verification. The transactional message sent by
-        # client may be not correctly completed in hard_bounce mode. The 
pending transaction (unstable offset) stored by
-        # broker obstructs TransactionMessageCopier from getting offset of 
partition which is used to calculate
-        # remaining messages after restarting.
-        self.transaction_timeout = 5000
+
+        # The transaction timeout should be lower than the progress timeout, 
but at
+        # least as high as the request timeout (which is 30s by default). When 
the
+        # client is hard-bounced, progress may depend on the previous 
transaction
+        # being aborted. When the broker is hard-bounced, we may have to wait 
as
+        # long as the request timeout to get a `Produce` response and we do not
+        # want the coordinator timing out the transaction.
+        self.transaction_timeout = 40000
+        self.progress_timeout_sec = 60

Review comment:
       What might be preferable is to provide a way to override the request 
timeout in `TransactionalMessageCopier` so that we can use lower values in all 
cases. Unfortunately we didn't give this class an easy way to override producer 
configurations, so we would need another argument. I decided to hold off on 
this, but I can reconsider it if you think it's worthwhile. This service (as 
well as `VerifiableConsumer` and `VerifiableProducer`) are a bit of a grey area 
as far as whether they are public APIs or not, but I have tended to take the 
interpretation that they are not 🙂 .




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to