Passthrough Datasources not releasing Data correctly in SingleThread mode resulting in MemoryError
When using a pipeline in SingleThread mode, some Data will not be released by the MemoryManager. Which results in the MemoryError "system memory limit exceeded". The cause for this is a high ReferenceCounter. Each Datasource that uses passthrough (due to missing Keys in the request) will increase the ReferenceCounter but will not reduce it afterwards. This works correctly in MultiThread mode.
Steps to reproduce:
- Create a Datapipeline with SingleThread mode
- Add a Horizontal cross-section Actor to the Scene
- Add a variable to the Actor
- Select a valid Valid+Init time (Time A)
- Select another valid Valid+Init time (Time B)
- Execute dump memory content
Observed Result:
The MemoryManager contains 2 active Items, one with 5 References (Time A) and one with 6 References (Time B).
Expected Result:
Behavior should equal MultiThread mode. The MemoryManager contains 1 active Item with 1 Reference (Time B) and one released Item (Time A).
Related to #142 (closed) ??
Edited by Marc R.