Kevin,Can you tell me how to replay a thread in openjpa? I didn't find any
link to reply a topic on the web page.
For openjap on tomcat issue, since tomcat is not a EE5 compliant application
server, we need enhance all entity class on the compilation time.
You can add enhancement action into your ant file like below:
<taskdef name="openjpac"
classname="org.apache.openjpa.ant.PCEnhancerTask">
<classpath refid="classpath" />
</taskdef>
<target name="enhance" depends="compile">
<openjpac>
<config
propertiesFile="${basedir}\WebContent\WEB-INF\classes\META-INF\persistence.xml"/>
<classpath>
<pathelement location="${builddir}"/>
</classpath>
<fileset dir="${builddir}" includes="$**/*.class"/>
</openjpac>
</target>
On Fri, Mar 14, 2008 at 11:03 AM, wang yu <[EMAIL PROTECTED]> wrote:
> Hello,
> I met one performance issue with apache-openjpa-1.0.2.
> My environment includes apache-openjpa-1.0.2,db-derby-10.3.2.1-bin,and
> apache-tomcat-5.5.26.
>
> Below is the openjpa-related properties defined in the persistnce.xml:
> <property name="openjpa.ConnectionDriverName" value="
> org.apache.derby.jdbc.ClientDriver"/>
> <property name="openjpa.ConnectionURL"
> value="jdbc:derby://localhost:1527/tsam20-database;create=true"/>
> <property name="openjpa.ConnectionUserName" value="app"/>
> <property name="openjpa.ConnectionPassword" value="app"/>
> <property name="openjpa.jdbc.SynchronizeMappings"
> value="buildSchema"/>
> <property name="openjpa.Log" value="DefaultLevel=WARN,SQL=TRACE"/>
>
> And there is my main testing code:
> EntityManagerFactory factory = (EntityManagerFactory)
> servlet_context.getAttribute("FACTORY");
> EntityManager em = null;
> try {
> em = factory.createEntityManager();
> for (int i = 0; i < 1000000; i++) {
> em.getTransaction().begin();
> for (int j = 0; j < 100; j++) {
> MyMessage m = new MyMessage("Hello Persistence!"+j);
> em.persist(m);
> }
> System.out.print("#");
> em.getTransaction().commit();
> em.clear();
> }
> } catch (Exception e) {
> if (em != null)
> em.getTransaction().rollback();
> e.printStackTrace();
> } finally {
> em.close();
> }
>
> I noticed if I run openjpa in a j2se env, the performance is very good and
> keeps steady for long time.
>
> But If I run openjpa persisting in a tomcat container, the performance
> degrades after half an hour and the java process will be totally "fronzen"
> after one or two hour.
>
> Does anybody have ideas about this issue? If there's some tips about how
> to use openjpa in a j2ee application? Or, I should use a more
> enterprise-grade DB server like oracle?
>
> Regards,
> Yu Wong
>
>
>
>
>