9090 PayloadCodec ,
9191 PayloadConverter ,
9292 PayloadLimitsConfig ,
93+ PayloadSizeWarning ,
9394 _PayloadErrorLimits ,
9495)
9596from temporalio .exceptions import (
@@ -8552,7 +8553,7 @@ async def test_large_payload_workflow_input_warning(client: Client):
85528553 config ["data_converter" ] = dataclasses .replace (
85538554 temporalio .converter .default (),
85548555 payload_limits = PayloadLimitsConfig (
8555- payload_upload_warning_limit = 102 ,
8556+ payload_size_warning = 102 ,
85568557 ),
85578558 )
85588559 client = Client (** config )
@@ -8575,7 +8576,7 @@ async def test_large_payload_workflow_input_warning(client: Client):
85758576 )
85768577
85778578 assert len (w ) == 1
8578- assert issubclass (w [- 1 ].category , UserWarning )
8579+ assert issubclass (w [- 1 ].category , PayloadSizeWarning )
85798580 assert (
85808581 "[TMPRL1103] Attempted to upload payloads with size that exceeded the warning limit."
85818582 in str (w [- 1 ].message )
@@ -8586,7 +8587,7 @@ async def test_large_payload_workflow_memo_warning(client: Client):
85868587 config = client .config ()
85878588 config ["data_converter" ] = dataclasses .replace (
85888589 temporalio .converter .default (),
8589- payload_limits = PayloadLimitsConfig (memo_upload_warning_limit = 128 ),
8590+ payload_limits = PayloadLimitsConfig (memo_size_warning = 128 ),
85908591 )
85918592 client = Client (** config )
85928593
@@ -8613,13 +8614,37 @@ async def test_large_payload_workflow_memo_warning(client: Client):
86138614 )
86148615
86158616 assert len (w ) == 1
8616- assert issubclass (w [- 1 ].category , UserWarning )
8617+ assert issubclass (w [- 1 ].category , PayloadSizeWarning )
86178618 assert (
86188619 "[TMPRL1103] Attempted to upload memo with size that exceeded the warning limit."
86198620 in str (w [- 1 ].message )
86208621 )
86218622
86228623
8624+ async def test_large_payload_workflow_payload_error_disabled (client : Client ):
8625+ async with new_worker (
8626+ client ,
8627+ LargePayloadWorkflow ,
8628+ activities = [large_payload_activity ],
8629+ # Referenced server version doesn't report payload limits.
8630+ # Configure error limits in server when limit reporting supported.
8631+ disable_payload_error_limit = True ,
8632+ ) as worker :
8633+ await client .execute_workflow (
8634+ LargePayloadWorkflow .run ,
8635+ LargePayloadWorkflowInput (
8636+ activity_input_data_size = 0 ,
8637+ activity_output_data_size = 0 ,
8638+ activity_exception_data_size = 0 ,
8639+ workflow_output_data_size = 6 * 1024 ,
8640+ data = [],
8641+ ),
8642+ id = f"workflow-{ uuid .uuid4 ()} " ,
8643+ task_queue = worker .task_queue ,
8644+ execution_timeout = timedelta (seconds = 3 ),
8645+ )
8646+
8647+
86238648async def test_large_payload_workflow_result_error (client : Client ):
86248649 # Create worker runtime with forwarded logger
86258650 worker_logger = logging .getLogger (f"log-{ uuid .uuid4 ()} " )
@@ -8642,8 +8667,8 @@ async def test_large_payload_workflow_result_error(client: Client):
86428667 # Remove and configure error limits in server when limit reporting supported.
86438668 data_converter = temporalio .converter .default ()._with_payload_error_limits (
86448669 _PayloadErrorLimits (
8645- memo_upload_error_limit = 0 ,
8646- payload_upload_error_limit = error_limit ,
8670+ memo_size_error = 0 ,
8671+ payload_size_error = error_limit ,
86478672 )
86488673 ),
86498674 )
@@ -8698,7 +8723,7 @@ async def test_large_payload_workflow_result_warning(client: Client):
86988723 config ["data_converter" ] = dataclasses .replace (
86998724 temporalio .converter .default (),
87008725 payload_limits = PayloadLimitsConfig (
8701- payload_upload_warning_limit = 1024 ,
8726+ payload_size_warning = 1024 ,
87028727 ),
87038728 )
87048729 worker_client = Client (** config )
@@ -8722,7 +8747,7 @@ async def test_large_payload_workflow_result_warning(client: Client):
87228747 )
87238748
87248749 assert len (w ) == 1
8725- assert issubclass (w [- 1 ].category , UserWarning )
8750+ assert issubclass (w [- 1 ].category , PayloadSizeWarning )
87268751 assert (
87278752 "[TMPRL1103] Attempted to upload payloads with size that exceeded the warning limit."
87288753 in str (w [- 1 ].message )
@@ -8751,8 +8776,8 @@ async def test_large_payload_activity_input_error(client: Client):
87518776 # Remove and configure error limits in server when limit reporting supported.
87528777 data_converter = temporalio .converter .default ()._with_payload_error_limits (
87538778 _PayloadErrorLimits (
8754- memo_upload_error_limit = 0 ,
8755- payload_upload_error_limit = error_limit ,
8779+ memo_size_error = 0 ,
8780+ payload_size_error = error_limit ,
87568781 )
87578782 ),
87588783 )
@@ -8806,7 +8831,7 @@ async def test_large_payload_activity_input_warning(client: Client):
88068831 config ["data_converter" ] = dataclasses .replace (
88078832 temporalio .converter .default (),
88088833 payload_limits = PayloadLimitsConfig (
8809- payload_upload_warning_limit = 1024 ,
8834+ payload_size_warning = 1024 ,
88108835 ),
88118836 )
88128837 worker_client = Client (** config )
@@ -8829,7 +8854,7 @@ async def test_large_payload_activity_input_warning(client: Client):
88298854 )
88308855
88318856 assert len (w ) == 1
8832- assert issubclass (w [- 1 ].category , UserWarning )
8857+ assert issubclass (w [- 1 ].category , PayloadSizeWarning )
88338858 assert (
88348859 "[TMPRL1103] Attempted to upload payloads with size that exceeded the warning limit."
88358860 in str (w [- 1 ].message )
@@ -8858,8 +8883,8 @@ async def test_large_payload_activity_exception_error(client: Client):
88588883 # Remove and configure error limits in server when limit reporting supported.
88598884 data_converter = temporalio .converter .default ()._with_payload_error_limits (
88608885 _PayloadErrorLimits (
8861- memo_upload_error_limit = 0 ,
8862- payload_upload_error_limit = error_limit ,
8886+ memo_size_error = 0 ,
8887+ payload_size_error = error_limit ,
88638888 )
88648889 ),
88658890 )
@@ -8921,8 +8946,8 @@ async def test_large_payload_activity_result_error(client: Client):
89218946 # Remove and configure error limits in server when limit reporting supported.
89228947 data_converter = temporalio .converter .default ()._with_payload_error_limits (
89238948 _PayloadErrorLimits (
8924- memo_upload_error_limit = 0 ,
8925- payload_upload_error_limit = error_limit ,
8949+ memo_size_error = 0 ,
8950+ payload_size_error = error_limit ,
89268951 )
89278952 ),
89288953 )
@@ -8970,7 +8995,7 @@ async def test_large_payload_activity_result_warning(client: Client):
89708995 config ["data_converter" ] = dataclasses .replace (
89718996 temporalio .converter .default (),
89728997 payload_limits = PayloadLimitsConfig (
8973- payload_upload_warning_limit = 1024 ,
8998+ payload_size_warning = 1024 ,
89748999 ),
89759000 )
89769001 worker_client = Client (** config )
@@ -8993,7 +9018,7 @@ async def test_large_payload_activity_result_warning(client: Client):
89939018 )
89949019
89959020 assert len (w ) == 1
8996- assert issubclass (w [- 1 ].category , UserWarning )
9021+ assert issubclass (w [- 1 ].category , PayloadSizeWarning )
89979022 assert (
89989023 "[TMPRL1103] Attempted to upload payloads with size that exceeded the warning limit."
89999024 in str (w [- 1 ].message )
0 commit comments