IBM Support

Why the DXL scripts do not release memory on IBM DOORS?

Troubleshooting


Problem

The portion of memory allocated to complete a DXL function such as accessing the History.oldValue of a module baseline is not released until the IBM Rational DOORS session ends.

Symptom

Memory is not released until DOORS is closed.

Cause

String values are not getting cleared from memory because they can be re-used in other contexts.
All strings are stored in the string table, which is shared across contexts. So, closing a context (baseline, module, or DXL Interaction window) will not necessarily free the associated memory.

Diagnosing The Problem

Using DXL to access the History.oldValue of a module baseline
a portion of your memory is allocated away, never to be seen again until the DOORS session ends.

Resolving The Problem

Using DXL Calls to History.oldValue you are actually declaring a string in the string table.
It is correct that these consume memory until the end of the session.

The string data is not released at the end of the DXL as the values are cached for possible
display in object properties. Once data for a history record is calculated it will remain in-memory
until the session ends. There will be a similar increase in memory used if the user selects an object property and scrolls down the history records.

Using buffers will help mitigate this problem since using and deleting Buffers during the running of a script will help reduce the total memory usage.

[{"Product":{"code":"SSKR2T","label":"IBM Engineering Requirements Management DOORS"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"General Information","Platform":[{"code":"PF033","label":"Windows"}],"Version":"9.2;9.1.0.2;9.1;9.0;8.3;8.2","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
01 May 2020

UID

swg21408346