Idea ID: 2749951

Create Knowledge in a new thread

Status : Waiting for Votes
Waiting for Votes
See status update history
over 1 year ago

Currently, the creation of a new Knowledge document (whether this is launched via the Knowledge Queue's "New" button or from the incident/problem's "Create Knowledge" feature), happens in the same thread.

I suggest that, consistently with the other Service Manager modules, the creation of a new Knowledge happens in a new thread:

- first, because the current behavior is not practical for users. For example, if a user creates a knowledge from an incident, he can no longer go back and forth between the two threads to do copy-pastes.

- second, the current implementation puts too much load on the same thread, which causes thread memory consumption alerts to be raised, and potentially memory issues.

-  third, from a design perspective, reusing the same thread for a different object is not clean at all. This causes risks of reusing or mixing variables from different contexts.






  • Hi Yana Ding,


    Yes, I confirm what you say. 

    Moreover, technically, there are many things to take into consideration if you open the "Create Knowledge" in a new thread:

    - First, you need to do it in all situations, i.e.:

    -- whether the user clicks the "Contribute Knowledge" button in the navigation bar

    --  or if he clicks the "New" button in top of the "Knowledge Queue" form.

    - Second, you need to investigate the whole Create Knowledge implementation and fix all the situations where variables from the parent thread are used. For example, the $cachedAuthoringSource variable.


    --> This is why this is something to be done by Micro Focus, and not by integrators like me.


    In Display Application Option Definition, there is a 'Spread Thread?' field in the RAD setting. It indicates whether the RAD application starts in its own thread. If you defined, threading allows you to open several active windows at once. With current investigation, there is no such function in ruleset settings.