Azure / Azure/azure-functions-durable-python

Activities that fail with complex exceptions do not preserve inner exceptions

Open
#561 1 comment 0 reactions 0 assignees View on GitHub
bug fixed-in-v2 P2
Dominant language
Python
Stars
157
Forks
70
Avg merge
2d 10h
Merged PRs (30d)
2

Description

🐛 **Describe the bug**
> When an activity fails with a complex exception (exception derived from inner exception), the inner exception is not preserved to the logs

🤔 **Expected behavior**
> Inner exceptions should be logged as well as outer

☕ **Steps to reproduce**
Function code:
```python

@bp.activity_trigger(input_name="instance2")
def raise_complex_exception(instance2: str) -> str:
global attempt_count
if instance2 not in attempt_count:
attempt_count[instance2] = 1
raise InvalidOperationException(f"This activity failed") from OverflowException(
"More information about the failure")
return "This activity succeeded"

```
Output:
```
[2025-07-10T22:27:53.159Z] Executed 'Functions.raise_complex_exception' (Failed, Id=be9eec7c-214e-4c34-9570-4d123863f196, Duration=35ms)
[2025-07-10T22:27:53.160Z] System.Private.CoreLib: Exception while executing function: Functions.raise_complex_exception. System.Private.CoreLib: Result: Failure
Exception: InvalidOperationException: This activity failed
Stack: File "C:\Program Files\Microsoft\Azure Functions Core Tools\workers\python\3.11/WINDOWS/X64\azure_functions_worker\dispatcher.py", line 671, in _handle__invocation_request
call_result = await self._loop.run_in_executor(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
```

⚡**If deployed to Azure**
N/A

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.