<!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="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">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;">
    Multiple Persistence Units with the same entities
</h3>
<span style="margin-bottom: 10px;">
    reply from <a href="http://community.jboss.org/people/andy.miller%40jboss.com">Andrig Miller</a> in <i>EJB 3.0</i> - <a href="http://community.jboss.org/message/536638#536638">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>jaikiran pai wrote:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><p>Andrig Miller wrote:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>So, I created two persistence units in my persistence.xml, with two different sets of Hibernate properties, pointing at the same database, and let it default to scanning for the Entities in my jar.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p></blockquote><p>I missed this earlier. So effectively, you are sharing the same entities between multiple entity managers. Do those entity managers really "share" those entities in your application? For example, if you try to access an entity which is shared (i.e. you access the entity using both the entity managers) then you will end up running into issues because each of these entity managers, that come from different entity manager factories, will (possibly) hold a different state.</p></blockquote><p>Well, I don't use the same entities from two different entity manager's at the same time, or within the same transaction.&#160; One entity manager is used to do an initial data load of a bunch of reference data into the database, and the other entity manager is used for transaction processing against that data.&#160; The two processes are independent, and the OLTP processing cannot occur until after the batch process has completed anyway.&#160; So, there is no overlap, where the same entity would be used in two entity managers at the same time, and have different state.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Before even doing this, I thought through that, but is this something that is compliant with the spec.&#160; All the reading I have done, only vaguely hint at having the same entities into two different persistence units, and everything I have read basically says that a persistence unit is tied to one data source (maybe implying that multiple persistence units should have "unique" data sources).</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>So, while it works now, and based on the functions involved, there is no overlap, will this continue to work in the future?&#160; If its not supported by the spec, then I have a reasonable expectation that this might break in the future.</p></div>

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


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

</div>

</body>
</html>