Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Excerpt
hiddentrue

Intro to tuning OpenJPA

Placeholder for dummies guide

OpenJPA Beginners Performance Guide

This guide is targeted at new users of OpenJPA that would like to know some of the important performance tuning properties. Please do not mistake this for an exhaustive tuning guide. This is just enough information to make a developer dangerous, not lethal.

Enhancement

OpenJPA uses byte-code weaving technologies to enhance user created Entity class objects at build time or dynamically at run time. This allows us to efficiently handle these objects. OpenJPA also has a feature that will auto-generate new subclasses or proxy objects that front the user's Entity objects at run time, but that feature is not recommended for use. There are numerous functional issues reported and it doesn't perform nearly as well. If you ever see the following message you are using the non-recommended subclassing approach to enhancement.

Wiki Markup
3328  pu_name INFO   \[main\] openjpa.Enhance - Creating subclass for "[class org.apache.openjpa.entity.E1 , class org.apache.openjpa.entity.E2]". This means that your application will be less efficient and will consume more memory than it would if you ran the OpenJPA enhancer. Additionally, lazy loading will not be available for one-to-one and many-to-one persistent attributes in types using field access; they will be loaded eagerly instead.