Summary
We found that the DTE library may cause goroutine leaks in ConfigurationHandler.go and ModelResult.go.
This appears to happen when goroutines are started but are not guaranteed to exit under all execution paths, which can lead to leaked goroutines over time in long-running services.
Affected areas
ConfigurationHandler.go
ModelResult.go
Problem
In our usage, we observed behavior consistent with goroutine leaks originating from these files. Over time, this can increase memory usage and leave background goroutines running indefinitely.
Expected behavior
All goroutines spawned by the library should terminate cleanly when:
the associated work is completed
a timeout/cancellation occurs
the caller no longer needs the result
Actual behavior
Some goroutines may remain blocked or alive longer than expected, resulting in goroutine leaks.
Notes
We identified this during integration/testing and wanted to report it in case others are affected as well.
If helpful, I can also open a PR with the proposed change after aligning on the intended behavior.
Summary
We found that the DTE library may cause goroutine leaks in ConfigurationHandler.go and ModelResult.go.
This appears to happen when goroutines are started but are not guaranteed to exit under all execution paths, which can lead to leaked goroutines over time in long-running services.
Affected areas
ConfigurationHandler.go
ModelResult.go
Problem
In our usage, we observed behavior consistent with goroutine leaks originating from these files. Over time, this can increase memory usage and leave background goroutines running indefinitely.
Expected behavior
All goroutines spawned by the library should terminate cleanly when:
Actual behavior
Some goroutines may remain blocked or alive longer than expected, resulting in goroutine leaks.
Notes
We identified this during integration/testing and wanted to report it in case others are affected as well.
If helpful, I can also open a PR with the proposed change after aligning on the intended behavior.