Hi Salaboy,
Thanks for you replying.
Yes, of course it is storing multiple process instance Id in the database.
But, what I feel is that it will fail when I am trying to run two workflow at the same time simultaneously, using the same code by dynamically providing the workflow name and the parameters for each of them.
Ideally there should be two entries for the StatfulKnowledgeSession object because when I try to load the StatefulKnowledgeSession object from the database it will give me the session object of the workflow which is last executed.

For example lets  suppose I have two workflow 1 and 2 having two humantask in each of them . So when I finish the first Human Task of both workflow one by one.  SessionInfo  present in the database is of workflow 2 (if 2 is executed last). Because there is no field in the sessioninfo entity of the database regarding to which workflow it belongs to. Am I right ?
So when I  try to finish the 1st workflow by executing the 2nd humantask left in it , I need to reload the StatfulKnowledgeSession object from the database. As there is no way of distinguishing that the session object store in the database is of which workflow , there might be a problem as I may get the ksession object of 2nd workflow.

In case of Process Instance it is fine , because there is a field 'processId' which will distinguish which processInstanceId belongs to which worklowId or processId.
But in case of Session , there is noting as such.
I don't what I am saying is handled in drools persistence. Please let me know if it there or not.

Thanks & Regards

Pardeep Ruhil

______________________________________________________________________