<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="https://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    Re: Questions about knowledge session and memory resource issues
</h3>
<span style="margin-bottom: 10px;">
    created by <a href="https://community.jboss.org/people/swiderski.maciej">Maciej Swiderski</a> in <i>jBPM</i> - <a href="https://community.jboss.org/message/734640#734640">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><blockquote class="jive-quote"><p>pmukundan wrote:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><span style="text-decoration: underline;"><strong>Questions </strong></span></p><p>1. Does JBPM keep all process instance information in memory at all times ?</p></blockquote><p>Process instance is kept in session (working memory) one when it is active, meaning under execution. Once done with the processing it is persisted into db.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><p>pmukundan wrote:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><span style="text-decoration: underline;"><strong>Questions </strong></span></p><p>2. Does JBPM keep all the knowledge base in memory at all times ?</p></blockquote><p>Yes, knowledge base is kept there all the time to secure all sessions will have access to all artifacts stored in it.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><p>pmukundan wrote:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>3. For approach b to work, the internal handling of JBPM should enable me to load/unload session at will. Does that work well? any firsthand experience ?</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p></blockquote><p>As far as I can tell it works well. If you keep session small you should get quite good performance.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><p>pmukundan wrote:</p><br/><p>4. For approach b, if session dispose is called, do all process instances associated with that session go dormant ? In other words, if a session dispose is executed, are the process instances started by that session still in memory ?</p></blockquote><p>Once the process instance execution is completed (by completed I mean that it reached a safe point like human task or catch events that makes process be in a sort of wait state) it is persisted into db and will now longer be active/managed object. It still resides in memory as object but it is disconnected from the session so it is safe to dispose the session.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><p>pmukundan wrote:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p>5. My JVM crashes or needs to be restarted. Would all process instance information be loaded into memory automatically or would that be done programatically ?</blockquote><p>No, they won't be, as mentioned earlier process instances are persisted in db and retrieved only when requested. Just make sure you load knowledge base and session on startup and register all work item handlers that are required.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>NOTE: all my comments assume session persistence is used.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>HTH</p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Reply to this message by <a href="https://community.jboss.org/message/734640#734640">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in jBPM at <a href="https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034">Community</a></p>
</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>