diff --git a/openjpa-project/src/doc/manual/ref_guide_slice.xml b/openjpa-project/src/doc/manual/ref_guide_slice.xml index 5b13a7481..4aeaf640d 100644 --- a/openjpa-project/src/doc/manual/ref_guide_slice.xml +++ b/openjpa-project/src/doc/manual/ref_guide_slice.xml @@ -73,6 +73,7 @@ of the data itself. For example, all Customer whose first name begins with character 'A' to 'M' will be stored in one slice while names beginning with 'N' to 'Z' will be stored in another slice. + This custom data distribution policy is specified by implementing org.apache.openjpa.slice.DistributionPolicy @@ -194,31 +195,35 @@ How to configure each database slice? Each database slice is identified by a logical name unique within a - persistent unit. The list of the slices is specified by slice.Names property. + persistent unit. The list of the slices is specified by + openjpa.slice.Names property. For example, specify three slices named "One", "Two" and "Three" as follows: - ]]> + ]]> This property is not mandatory. If this property is not specified then the configuration is scanned for logical slice names. Any property - of the form slice.XYZ.abc will register a slice with logical + "abc" of the form openjpa.slice.XYZ.abc will + register a slice with logical name "XYZ". - The order of the names can be significant if no slice.Master - property is specified. + The order of the names is significant when no openjpa.slice.Master + property is not specified. Then the persistence unit is scanned to find + all configured slice names and they are ordered alphabetically. - Each database slice can be configured independently. For example, the + Each database slice properties can be configured independently. + For example, the following configuration will register two slices with logical name One and Two. - - ]]> + + ]]> @@ -227,8 +232,8 @@ For example, the following configuration will use two different JDBC drivers for slice One and Two. - - ]]> + + ]]> @@ -236,12 +241,12 @@ Any property if unspecified for a particular slice will be defaulted by corresponding OpenJPA property. For example, consider following three slices - - - + + + - ]]> + ]]> In this example, Three will use slice-specific oracle.jdbc.Driver driver while slice @@ -263,7 +268,7 @@ org.apache.openjpa.slice.DistributionPolicy and specify the implementation class in configuration - ]]> + ]]> @@ -300,7 +305,7 @@ public interface DistributionPolicy { Slice can determine the closure of a root object by traversal of cascaded relationships. Hence user-defined policy has to only decide the database for the root instance that is the explicit argument to - EntityManager.persist() call. + EntityManager.persist() call. Slice will ensure that all other related instances that gets persisted by cascade is assigned to the same database slice as that of the root instance. However, the user-defined distribution policy must return the @@ -327,7 +332,7 @@ the JDBC connection URL of a slice. Global Properties
- slice.DistributionPolicy + openjpa.slice.DistributionPolicy This mandatory plug-in property determines how newly persistent instances are distributed across individual slices. @@ -338,7 +343,7 @@ the JDBC connection URL of a slice.
-
slice.Lenient +
openjpa.slice.Lenient This boolean plug-in property controls the behavior when one or more slice can not be connected or unavailable for some other reasons. @@ -353,7 +358,7 @@ the JDBC connection URL of a slice.
- slice.Master + openjpa.slice.Master This plug-in property can be used to identify the name of the master slice. Master slice is used when a primary key is to be generated from a database sequence. @@ -370,7 +375,7 @@ the JDBC connection URL of a slice.
- slice.Names + openjpa.slice.Names This plug-in property can be used to register the logical slice names. The value of this property is comma-separated list of slice names. @@ -392,7 +397,7 @@ the JDBC connection URL of a slice.
- slice.ThreadingPolicy + openjpa.slice.ThreadingPolicy This plug-in property determines the nature of thread pool being used for database operations such as query or flush on individual slices. @@ -439,7 +444,7 @@ the JDBC connection URL of a slice.
- slice.TransactionPolicy + openjpa.slice.TransactionPolicy This plug-in property determines the policy for transaction commit across multiple slices. The value of this property is a fully-qualified @@ -483,8 +488,8 @@ the JDBC connection URL of a slice. Per-Slice Properties Any OpenJPA property can be configured for each individual slice. The property name - is of the form slice.[Logical slice name].[OpenJPA Property Name]. - For example, slice.One.ConnectionURL where One + is of the form openjpa.slice.[Logical slice name].[OpenJPA Property Name]. + For example, openjpa.slice.One.ConnectionURL where One is the logical slice name and ConnectionURL is a OpenJPA property name.