openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From allee8...@apache.org
Subject svn commit: r747489 [5/5] - in /openjpa/trunk: openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/ openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/ openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/sql/ openjpa-kernel/src/main/java/...
Date Tue, 24 Feb 2009 18:48:11 GMT
Added: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPA2LockManager.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPA2LockManager.java?rev=747489&view=auto
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPA2LockManager.java
(added)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPA2LockManager.java
Tue Feb 24 18:48:09 2009
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+package org.apache.openjpa.persistence;
+
+import org.apache.openjpa.conf.OpenJPAConfiguration;
+import org.apache.openjpa.jdbc.kernel.PessimisticLockManager;
+import org.apache.openjpa.jdbc.sql.Select;
+import org.apache.openjpa.kernel.LockLevels;
+import org.apache.openjpa.kernel.OpenJPAStateManager;
+import org.apache.openjpa.lib.log.Log;
+
+/**
+ * Test JPA 2.0 LockTypeMode semantics using JPA 2.0 "jpa2"
+ * lock manager.
+ *
+ * @author Albert Lee
+ * @since 2.0.0
+ */
+public class JPA2LockManager extends PessimisticLockManager {
+
+    /*
+     * (non-Javadoc)
+     * @see org.apache.openjpa.jdbc.kernel.PessimisticLockManager
+     *  #selectForUpdate(org.apache.openjpa.jdbc.sql.Select,int)
+     */
+    public boolean selectForUpdate(Select sel, int lockLevel) {
+        return (lockLevel >= JPA2LockLevels.LOCK_PESSIMISTIC_READ) 
+            ? super.selectForUpdate(sel, lockLevel) : false;
+    }
+
+    /*
+     * (non-Javadoc)
+     * @see org.apache.openjpa.jdbc.kernel.PessimisticLockManager#
+     *  lockInternal(org.apache.openjpa.kernel.OpenJPAStateManager, int, int,
+     *               java.lang.Object)
+     */
+    protected void lockInternal(OpenJPAStateManager sm, int level, int timeout,
+        Object sdata) {
+        if (level >= JPA2LockLevels.LOCK_PESSIMISTIC_FORCE_INCREMENT) {
+            setVersionCheckOnReadLock(true);
+            setVersionUpdateOnWriteLock(true);
+            super.lockInternal(sm, level, timeout, sdata);
+        } else if (level >= JPA2LockLevels.LOCK_PESSIMISTIC_READ) {
+            setVersionCheckOnReadLock(true);
+            setVersionUpdateOnWriteLock(false);
+            super.lockInternal(sm, level, timeout, sdata);
+        } else if (level >= JPA2LockLevels.LOCK_OPTIMISTIC) {
+            setVersionCheckOnReadLock(true);
+            setVersionUpdateOnWriteLock(true);
+            optimisticLockInternal(sm, level, timeout, sdata);
+        }
+    }
+}

Propchange: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/JPA2LockManager.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/LockTimeoutException.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/LockTimeoutException.java?rev=747489&view=auto
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/LockTimeoutException.java
(added)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/LockTimeoutException.java
Tue Feb 24 18:48:09 2009
@@ -0,0 +1,112 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+package org.apache.openjpa.persistence;
+
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.PrintStream;
+import java.io.PrintWriter;
+import java.io.Serializable;
+
+import org.apache.openjpa.util.ExceptionInfo;
+import org.apache.openjpa.util.Exceptions;
+import org.apache.openjpa.util.StoreException;
+
+/**
+ * Pessimistic lock timeout violation.
+ *
+ * @since 2.0.0
+ * @nojavadoc
+ */
+public class LockTimeoutException
+    extends javax.persistence.LockTimeoutException
+    implements Serializable, ExceptionInfo {
+
+    private static final long serialVersionUID = -3221030392419625394L;
+    
+    private transient boolean _fatal = false;
+    private transient Object _failed = null;
+    private transient Throwable[] _nested = null;
+
+    public LockTimeoutException(String msg, Throwable[] nested,
+        Object failed, boolean fatal) {
+        super(msg);
+        _nested = nested;
+        _failed = failed;
+        _fatal = fatal;
+    }
+
+    public int getType() {
+        return STORE;
+    }
+
+    public int getSubtype() {
+        return StoreException.LOCK;
+    }
+
+    public boolean isFatal() {
+        return _fatal;
+    }
+
+    public Throwable getCause() {
+        return PersistenceExceptions.getCause(_nested);
+    }
+
+    public Throwable[] getNestedThrowables() {
+        return (_nested == null) ? Exceptions.EMPTY_THROWABLES : _nested;
+    }
+
+    public Object getFailedObject() {
+        return _failed;
+    }
+
+    public String toString() {
+        return Exceptions.toString(this);
+    }
+
+    public void printStackTrace() {
+        printStackTrace(System.err);
+    }
+
+    public void printStackTrace(PrintStream out) {
+        super.printStackTrace(out);
+        Exceptions.printNestedThrowables(this, out);
+    }
+
+    public void printStackTrace(PrintWriter out) {
+        super.printStackTrace(out);
+        Exceptions.printNestedThrowables(this, out);
+    }
+
+    private void writeObject(ObjectOutputStream out)
+        throws IOException {
+        out.writeBoolean(_fatal);
+        out.writeObject(Exceptions.replaceFailedObject(_failed));
+        out.writeObject(Exceptions.replaceNestedThrowables(_nested));
+    }
+
+    private void readObject(ObjectInputStream in)
+        throws IOException, ClassNotFoundException {
+        _fatal = in.readBoolean();
+        _failed = in.readObject();
+        _nested = (Throwable[]) in.readObject();
+    }
+}
+

Propchange: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/LockTimeoutException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OptimisticLockException.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OptimisticLockException.java?rev=747489&r1=747488&r2=747489&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OptimisticLockException.java
(original)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/OptimisticLockException.java
Tue Feb 24 18:48:09 2009
@@ -57,7 +57,7 @@
     }
 
     public int getSubtype() {
-        return StoreException.OPTIMISTIC;
+        return StoreException.LOCK;
     }
 
     public boolean isFatal() {

Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceExceptions.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceExceptions.java?rev=747489&r1=747488&r2=747489&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceExceptions.java
(original)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceExceptions.java
Tue Feb 24 18:48:09 2009
@@ -22,6 +22,7 @@
 
 import org.apache.openjpa.kernel.Broker;
 import org.apache.openjpa.util.Exceptions;
+import org.apache.openjpa.util.LockException;
 import org.apache.openjpa.util.NoTransactionException;
 import org.apache.openjpa.util.ObjectExistsException;
 import org.apache.openjpa.util.ObjectNotFoundException;
@@ -64,6 +65,8 @@
                 RuntimeException ex = toPersistenceException(re);
                 if (!(ex instanceof NonUniqueResultException)
                     && !(ex instanceof NoResultException)
+                    && !(ex instanceof LockTimeoutException)
+                    && !(ex instanceof QueryTimeoutException)
                     && !throwing) {
                     try {
                         throwing = true;
@@ -152,11 +155,32 @@
                     (ke.getMessage(), getNestedThrowables(ke),
                         getFailedObject(ke), ke.isFatal());
         } else if (ke.getSubtype() == StoreException.OPTIMISTIC 
-        		|| ke.getSubtype() == StoreException.LOCK
         		|| cause instanceof OptimisticException) {
             	e = new org.apache.openjpa.persistence.OptimisticLockException
                     (ke.getMessage(), getNestedThrowables(ke),
                         getFailedObject(ke), ke.isFatal());
+        } else if (ke.getSubtype() == StoreException.LOCK 
+                || cause instanceof LockException) {
+            LockException lockEx = (LockException)
+                (ke instanceof LockException ? ke : cause);
+            if (lockEx != null && lockEx.getLockLevel() >= 
+                JPA2LockLevels.LOCK_PESSIMISTIC_READ) {
+                if (lockEx.isRecoverable()) {
+                    e = new org.apache.openjpa.persistence
+                        .LockTimeoutException(
+                        ke.getMessage(), getNestedThrowables(ke),
+                        getFailedObject(ke), ke.isFatal());
+                } else {
+                    e = new org.apache.openjpa.persistence
+                        .PessimisticLockException(
+                        ke.getMessage(), getNestedThrowables(ke),
+                        getFailedObject(ke), ke.isFatal());
+                }
+            } else {
+                e = new org.apache.openjpa.persistence.OptimisticLockException(
+                    ke.getMessage(), getNestedThrowables(ke),
+                    getFailedObject(ke), ke.isFatal());
+            }
         } else if (ke.getSubtype() == StoreException.OBJECT_EXISTS
         		|| cause instanceof ObjectExistsException) {
                 e = new org.apache.openjpa.persistence.EntityExistsException

Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProductDerivation.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProductDerivation.java?rev=747489&r1=747488&r2=747489&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProductDerivation.java
(original)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceProductDerivation.java
Tue Feb 24 18:48:09 2009
@@ -30,6 +30,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.MissingResourceException;
+
 import javax.persistence.spi.PersistenceUnitInfo;
 import javax.persistence.spi.PersistenceUnitTransactionType;
 
@@ -106,6 +107,32 @@
             PersistenceMetaDataFactory.class.getName());
         
         conf.addValue(new EntityManagerFactoryValue());
+        
+        conf.readLockLevel.setAlias("optimistic", String
+            .valueOf(JPA2LockLevels.LOCK_OPTIMISTIC));
+        conf.readLockLevel.setAlias("optimistic-force-increment", String
+            .valueOf(JPA2LockLevels.LOCK_OPTIMISTIC_FORCE_INCREMENT));
+        conf.readLockLevel.setAlias("pessimistic-read", String
+            .valueOf(JPA2LockLevels.LOCK_PESSIMISTIC_READ));
+        conf.readLockLevel.setAlias("pessimistic-write", String
+            .valueOf(JPA2LockLevels.LOCK_PESSIMISTIC_WRITE));
+        conf.readLockLevel.setAlias("pessimistic-force-increment", String
+            .valueOf(JPA2LockLevels.LOCK_PESSIMISTIC_FORCE_INCREMENT));
+
+        conf.writeLockLevel.setAlias("optimistic", String
+            .valueOf(JPA2LockLevels.LOCK_OPTIMISTIC));
+        conf.writeLockLevel.setAlias("optimistic-force-increment", String
+            .valueOf(JPA2LockLevels.LOCK_OPTIMISTIC_FORCE_INCREMENT));
+        conf.writeLockLevel.setAlias("pessimistic-read", String
+            .valueOf(JPA2LockLevels.LOCK_PESSIMISTIC_READ));
+        conf.writeLockLevel.setAlias("pessimistic-write", String
+            .valueOf(JPA2LockLevels.LOCK_PESSIMISTIC_WRITE));
+        conf.writeLockLevel.setAlias("pessimistic-force-increment", String
+            .valueOf(JPA2LockLevels.LOCK_PESSIMISTIC_FORCE_INCREMENT));
+
+        conf.lockManagerPlugin.setAlias("jpa2",
+            JPA2LockManager.class.getName());
+
         return true;
     }
 
@@ -118,8 +145,8 @@
         OpenJPAConfigurationImpl conf = (OpenJPAConfigurationImpl) c;
         conf.metaFactoryPlugin.setDefault(SPEC_JPA.getName());
         conf.metaFactoryPlugin.setString(SPEC_JPA.getName());
-        conf.lockManagerPlugin.setDefault("version");
-        conf.lockManagerPlugin.setString("version");
+        conf.lockManagerPlugin.setDefault("jpa2");
+        conf.lockManagerPlugin.setString("jpa2");
         conf.nontransactionalWrite.setDefault("true");
         conf.nontransactionalWrite.set(true);
         return true;

Added: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PessimisticLockException.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PessimisticLockException.java?rev=747489&view=auto
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PessimisticLockException.java
(added)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PessimisticLockException.java
Tue Feb 24 18:48:09 2009
@@ -0,0 +1,112 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+package org.apache.openjpa.persistence;
+
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.PrintStream;
+import java.io.PrintWriter;
+import java.io.Serializable;
+
+import org.apache.openjpa.util.ExceptionInfo;
+import org.apache.openjpa.util.Exceptions;
+import org.apache.openjpa.util.StoreException;
+
+/**
+ * Pessimistic concurrency violation.
+ *
+ * @since 2.0.0
+ * @nojavadoc
+ */
+public class PessimisticLockException
+    extends javax.persistence.PessimisticLockException
+    implements Serializable, ExceptionInfo {
+
+    private static final long serialVersionUID = -7241629816016553676L;
+    
+    private transient boolean _fatal = false;
+    private transient Object _failed = null;
+    private transient Throwable[] _nested = null;
+
+    public PessimisticLockException(String msg, Throwable[] nested,
+        Object failed, boolean fatal) {
+        super(msg);
+        _nested = nested;
+        _failed = failed;
+        _fatal = fatal;
+    }
+
+    public int getType() {
+        return STORE;
+    }
+
+    public int getSubtype() {
+        return StoreException.LOCK;
+    }
+
+    public boolean isFatal() {
+        return _fatal;
+    }
+
+    public Throwable getCause() {
+        return PersistenceExceptions.getCause(_nested);
+    }
+
+    public Throwable[] getNestedThrowables() {
+        return (_nested == null) ? Exceptions.EMPTY_THROWABLES : _nested;
+    }
+
+    public Object getFailedObject() {
+        return _failed;
+    }
+
+    public String toString() {
+        return Exceptions.toString(this);
+    }
+
+    public void printStackTrace() {
+        printStackTrace(System.err);
+    }
+
+    public void printStackTrace(PrintStream out) {
+        super.printStackTrace(out);
+        Exceptions.printNestedThrowables(this, out);
+    }
+
+    public void printStackTrace(PrintWriter out) {
+        super.printStackTrace(out);
+        Exceptions.printNestedThrowables(this, out);
+    }
+
+    private void writeObject(ObjectOutputStream out)
+        throws IOException {
+        out.writeBoolean(_fatal);
+        out.writeObject(Exceptions.replaceFailedObject(_failed));
+        out.writeObject(Exceptions.replaceNestedThrowables(_nested));
+    }
+
+    private void readObject(ObjectInputStream in)
+        throws IOException, ClassNotFoundException {
+        _fatal = in.readBoolean();
+        _failed = in.readObject();
+        _nested = (Throwable[]) in.readObject();
+    }
+}
+

Propchange: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PessimisticLockException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryTimeoutException.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryTimeoutException.java?rev=747489&view=auto
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryTimeoutException.java
(added)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryTimeoutException.java
Tue Feb 24 18:48:09 2009
@@ -0,0 +1,110 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+package org.apache.openjpa.persistence;
+
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.PrintStream;
+import java.io.PrintWriter;
+import java.io.Serializable;
+
+import org.apache.openjpa.util.ExceptionInfo;
+import org.apache.openjpa.util.Exceptions;
+import org.apache.openjpa.util.StoreException;
+
+/**
+ * Query lock timeout violation.
+ *
+ * @since 2.0.0
+ * @nojavadoc
+ */
+public class QueryTimeoutException
+    extends javax.persistence.QueryTimeoutException
+    implements Serializable, ExceptionInfo {
+
+    private transient boolean _fatal = false;
+    private transient Object _failed = null;
+    private transient Throwable[] _nested = null;
+
+    public QueryTimeoutException(String msg, Throwable[] nested,
+        Object failed, boolean fatal) {
+        super(msg);
+        _nested = nested;
+        _failed = failed;
+        _fatal = fatal;
+    }
+
+    public int getType() {
+        return STORE;
+    }
+
+    public int getSubtype() {
+        return StoreException.LOCK;
+    }
+
+    public boolean isFatal() {
+        return _fatal;
+    }
+
+    public Throwable getCause() {
+        return PersistenceExceptions.getCause(_nested);
+    }
+
+    public Throwable[] getNestedThrowables() {
+        return (_nested == null) ? Exceptions.EMPTY_THROWABLES : _nested;
+    }
+
+    public Object getFailedObject() {
+        return _failed;
+    }
+
+    public String toString() {
+        return Exceptions.toString(this);
+    }
+
+    public void printStackTrace() {
+        printStackTrace(System.err);
+    }
+
+    public void printStackTrace(PrintStream out) {
+        super.printStackTrace(out);
+        Exceptions.printNestedThrowables(this, out);
+    }
+
+    public void printStackTrace(PrintWriter out) {
+        super.printStackTrace(out);
+        Exceptions.printNestedThrowables(this, out);
+    }
+
+    private void writeObject(ObjectOutputStream out)
+        throws IOException {
+        out.writeBoolean(_fatal);
+        out.writeObject(Exceptions.replaceFailedObject(_failed));
+        out.writeObject(Exceptions.replaceNestedThrowables(_nested));
+    }
+
+    private void readObject(ObjectInputStream in)
+        throws IOException, ClassNotFoundException {
+        _fatal = in.readBoolean();
+        _failed = in.readObject();
+        _nested = (Throwable[]) in.readObject();
+    }
+}
+

Propchange: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/QueryTimeoutException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: openjpa/trunk/openjpa-project/src/doc/manual/ref_guide_conf.xml
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-project/src/doc/manual/ref_guide_conf.xml?rev=747489&r1=747488&r2=747489&view=diff
==============================================================================
--- openjpa/trunk/openjpa-project/src/doc/manual/ref_guide_conf.xml (original)
+++ openjpa/trunk/openjpa-project/src/doc/manual/ref_guide_conf.xml Tue Feb 24 18:48:09 2009
@@ -2116,12 +2116,12 @@
 LockManager</literal>
             </para>
             <para>
-<emphasis role="bold">Default: </emphasis><literal>version</literal>
+<emphasis role="bold">Default: </emphasis><literal>jpa2</literal>
             </para>
             <para>
 <emphasis role="bold">Possible values: </emphasis><literal>none</literal>,
-<literal>sjvm</literal>, <literal>pessimistic</literal>, 
-<literal>version</literal>
+<literal>sjvm</literal>, <literal>version</literal>,
+<literal>pessimistic</literal>, <literal>jpa2</literal>
             </para>
             <para>
 <emphasis role="bold">Description:</emphasis> A plugin string (see
@@ -2727,7 +2727,10 @@
             </para>
             <para>
 <emphasis role="bold">Possible values: </emphasis><literal>none</literal>,
-<literal>read</literal>, <literal>write</literal>, numeric values
for
+<literal>read</literal>, <literal>write</literal>,
+<literal>optimistic</literal>, <literal>optimistic-force-increment</literal>,
+<literal>pessimistic-read</literal>, <literal>pessimistic-write</literal>,
+<literal>pessimistic-force-increment</literal>, numeric values for
 lock-manager specific lock levels
             </para>
             <para>
@@ -3090,7 +3093,10 @@
             </para>
             <para>
 <emphasis role="bold">Possible values: </emphasis><literal>none</literal>,
-<literal>read</literal>, <literal>write</literal>, numeric values
for
+<literal>read</literal>, <literal>write</literal>,
+<literal>optimistic</literal>, <literal>optimistic-force-increment</literal>,
+<literal>pessimistic-read</literal>, <literal>pessimistic-write</literal>,
+<literal>pessimistic-force-increment</literal>, numeric values for
 lock-manager specific lock levels
             </para>
             <para>



Mime
View raw message