List:Commits« Previous MessageNext Message »
From:Craig L Russell Date:December 29 2011 2:43pm
Subject:bzr push into mysql-5.1-telco-7.1 branch (Craig.Russell:4394 to 4395)
View as plain text  
 4395 Craig L Russell	2011-12-29
      Improve error handling for persistent interfaces
        collect multiple field errors
        report all field errors during analysis
      Change to use standard ports for mysql and cluster

    modified:
      storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainFieldHandlerImpl.java
      storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainTypeHandlerImpl.java
      storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainFieldHandlerImpl.java
      storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainTypeHandlerImpl.java
      storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/spi/DomainTypeHandler.java
      storage/ndb/clusterj/clusterj-core/src/main/resources/com/mysql/clusterj/core/Bundle.properties
      storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-bad-connection-lifecycle-interceptor.properties
      storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-connection-lifecycle-interceptor.properties
      storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-statement-interceptor.properties
      storage/ndb/clusterj/clusterj-jdbc/src/test/resources/clusterj.properties
      storage/ndb/clusterj/clusterj-jpatest/src/main/java/com/mysql/clusterj/jpatest/AbstractJPABaseTest.java
      storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaClusterj.properties
      storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaMysql.properties
      storage/ndb/clusterj/clusterj-openjpa/src/main/java/com/mysql/clusterj/openjpa/NdbOpenJPADomainTypeHandlerImpl.java
      storage/ndb/clusterj/clusterj-openjpa/src/test/resources/META-INF/persistence.xml
      storage/ndb/clusterj/clusterj-test/src/main/java/regression/Bug54619.java
      storage/ndb/clusterj/clusterj-test/src/main/java/testsuite/clusterj/domaintypehandler/CrazyDomainTypeHandlerFactoryImpl.java
      storage/ndb/clusterj/clusterj-tie/src/test/resources/clusterj.properties
 4394 jonas oreland	2011-12-23 [merge]
      ndb - merge 70 to 71

    added:
      mysql-test/suite/ndb_rpl/r/ndb_rpl_bug_13440282.result
      mysql-test/suite/ndb_rpl/t/ndb_rpl_bug_13440282.test
      storage/ndb/src/kernel/vm/test_context.cpp
      storage/ndb/src/kernel/vm/test_context.hpp
    modified:
      storage/ndb/src/kernel/Makefile.am
      storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp
      storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp
      storage/ndb/src/kernel/blocks/dbtup/DbtupTrigger.cpp
      storage/ndb/src/kernel/blocks/dbtup/tuppage.hpp
      storage/ndb/src/kernel/vm/DLList.hpp
      storage/ndb/src/kernel/vm/DynArr256.cpp
      storage/ndb/src/kernel/vm/Makefile.am
      storage/ndb/src/kernel/vm/SLList.hpp
      storage/ndb/test/ndbapi/testNodeRestart.cpp
      storage/ndb/test/ndbapi/testSystemRestart.cpp
=== modified file 'storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainFieldHandlerImpl.java'
--- a/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainFieldHandlerImpl.java	2011-10-02 21:20:50 +0000
+++ b/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainFieldHandlerImpl.java	2011-12-29 14:39:37 +0000
@@ -417,7 +417,7 @@ public abstract class AbstractDomainFiel
 
     protected void reportErrors() {
         if (errorMessages != null) {
-            throw new ClusterJUserException(errorMessages.toString());
+            domainTypeHandler.setUnsupported(errorMessages.toString());
         }
     }
 

=== modified file 'storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainTypeHandlerImpl.java'
--- a/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainTypeHandlerImpl.java	2011-07-04 15:58:21 +0000
+++ b/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/AbstractDomainTypeHandlerImpl.java	2011-12-29 14:39:37 +0000
@@ -115,6 +115,9 @@ public abstract class AbstractDomainType
     /** Set of index names to check for duplicates. */
     protected Set<String> indexNames = new HashSet<String>();
 
+    /** Errors reported during construction; see getUnsupported(), setUnsupported(String) */
+    private StringBuilder reasons = null;
+
     /** Register a primary key column field. This is used to associate
      * primary key and partition key column names with field handlers.
      * This method is called by the DomainFieldHandlerImpl constructor
@@ -428,4 +431,15 @@ public abstract class AbstractDomainType
         return fieldNames;
     }
 
+    public void setUnsupported(String reason) {
+        if (reasons == null) {
+            reasons = new StringBuilder();
+        }
+        reasons.append(reason);
+    }
+
+    public String getUnsupported() {
+        return reasons == null?null:reasons.toString();
+    }
+
 }

=== modified file 'storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainFieldHandlerImpl.java'
--- a/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainFieldHandlerImpl.java	2011-03-23 22:41:01 +0000
+++ b/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainFieldHandlerImpl.java	2011-12-29 14:39:37 +0000
@@ -255,7 +255,7 @@ public class DomainFieldHandlerImpl exte
             } else {
                 objectOperationHandlerDelegate = objectOperationHandlerUnsupportedType;
                 error(
-                    local.message("ERR_Unsupported_Field_Type", type.getName()));
+                    local.message("ERR_Unsupported_Field_Type", type.getName(), name));
             }
         }
         // Handle indexes. One index can be annotated on this field.
@@ -438,7 +438,7 @@ public class DomainFieldHandlerImpl exte
                     this.type = Byte.class;
                     break;
                 case Undefined:
-                    error(local.message("ERR_Unsupported_Field_Type", "Undefined"));
+                    error(local.message("ERR_Unsupported_Field_Type", "Undefined", name));
                     objectOperationHandlerDelegate = objectOperationHandlerUnsupportedType;
                     break;
                 case Unsigned:
@@ -458,7 +458,7 @@ public class DomainFieldHandlerImpl exte
                     this.type = Short.class;
                     break;
                 default:
-                    error(local.message("ERR_Unsupported_Field_Type", this.storeColumnType));
+                    error(local.message("ERR_Unsupported_Field_Type", this.storeColumnType, name));
                     objectOperationHandlerDelegate = objectOperationHandlerUnsupportedType;
             }
         }

=== modified file 'storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainTypeHandlerImpl.java'
--- a/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainTypeHandlerImpl.java	2011-10-27 23:43:25 +0000
+++ b/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/metadata/DomainTypeHandlerImpl.java	2011-12-29 14:39:37 +0000
@@ -45,10 +45,8 @@ import java.lang.reflect.Proxy;
 
 import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 /** This instance manages a persistence-capable type.
  * Currently, only interfaces can be persistence-capable. Persistent
@@ -226,12 +224,20 @@ public class DomainTypeHandlerImpl<T> ex
             fieldNames = fieldNameList.toArray(new String[fieldNameList.size()]);
             // done with methods; if anything in unmatched we have a problem
             if ((!unmatchedGetMethods.isEmpty()) || (!unmatchedSetMethods.isEmpty())) {
-                throw new ClusterJUserException(
+                setUnsupported(
                         local.message("ERR_Unmatched_Methods", 
                         unmatchedGetMethods, unmatchedSetMethods));
             }
 
         }
+
+        // Check that no errors were reported during field analysis
+        String reasons = getUnsupported();
+        if (reasons != null) {
+            throw new ClusterJUserException(
+                    local.message("ERR_Field_Construction", name, reasons.toString()));
+        }
+
         // Check that all index columnNames have corresponding fields
         // indexes without fields will be unusable for query
         for (IndexHandlerImpl indexHandler:indexHandlerImpls) {

=== modified file 'storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/spi/DomainTypeHandler.java'
--- a/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/spi/DomainTypeHandler.java	2011-02-02 09:52:33 +0000
+++ b/storage/ndb/clusterj/clusterj-core/src/main/java/com/mysql/clusterj/core/spi/DomainTypeHandler.java	2011-12-29 14:39:37 +0000
@@ -90,4 +90,6 @@ public interface DomainTypeHandler<T> {
 
     public void operationSetValues(ValueHandler valueHandler, Operation op);
 
+    public void setUnsupported(String reason);
+
 }

=== modified file 'storage/ndb/clusterj/clusterj-core/src/main/resources/com/mysql/clusterj/core/Bundle.properties'
--- a/storage/ndb/clusterj/clusterj-core/src/main/resources/com/mysql/clusterj/core/Bundle.properties	2011-11-22 22:01:23 +0000
+++ b/storage/ndb/clusterj/clusterj-core/src/main/resources/com/mysql/clusterj/core/Bundle.properties	2011-12-29 14:39:37 +0000
@@ -36,6 +36,7 @@ ERR_Get_Constructor:Cannot get Construct
 ERR_Annotate_Set_Method:Property {0}: Cannot annotate set methods with {1}.
 ERR_Primary_Field_Type:For class {0}, primary key column {1}: field type {2} is not supported.
 ERR_Primary_Column_Type:For class {0}, primary key column {1}: column type {2} is not supported.
+ERR_Field_Construction:Error in metadata initialization for {0}:\n{1}
 ERR_Value_Delegate:For field {0} column {1} valueDelegate {2}, error executing {3}.
 ERR_Filter_Value:Error performing filter operation for field {0} column {1} \
 valueDelegate {2}, value {3}.

=== modified file 'storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-bad-connection-lifecycle-interceptor.properties'
--- a/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-bad-connection-lifecycle-interceptor.properties	2011-06-30 16:04:23 +0000
+++ b/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-bad-connection-lifecycle-interceptor.properties	2011-12-29 14:39:37 +0000
@@ -13,6 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
-jdbc.url=jdbc:mysql://localhost:9306/test?connectionLifecycleInterceptors=jdbctest.BadConnectionLifecycleInterceptor&poop=doop&com.mysql.clusterj.connectstring=localhost:9311
+jdbc.url=jdbc:mysql://localhost:3306/test?connectionLifecycleInterceptors=jdbctest.BadConnectionLifecycleInterceptor&com.mysql.clusterj.connectstring=localhost:1186
 jdbc.driverName=com.mysql.jdbc.Driver
-ndb.connectString=localhost:9311
+ndb.connectString=localhost:1186

=== modified file 'storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-connection-lifecycle-interceptor.properties'
--- a/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-connection-lifecycle-interceptor.properties	2011-06-30 16:04:23 +0000
+++ b/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-connection-lifecycle-interceptor.properties	2011-12-29 14:39:37 +0000
@@ -13,6 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
-jdbc.url=jdbc:mysql://localhost:9306/test?statementInterceptors=com.mysql.clusterj.jdbc.StatementInterceptor&poop=doop&com.mysql.clusterj.connectstring=localhost:9311
+jdbc.url=jdbc:mysql://localhost:3306/test?statementInterceptors=com.mysql.clusterj.jdbc.StatementInterceptor&com.mysql.clusterj.connectstring=localhost:1186
 jdbc.driverName=com.mysql.jdbc.Driver
-ndb.connectString=localhost:9311
+ndb.connectString=localhost:1186

=== modified file 'storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-statement-interceptor.properties'
--- a/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-statement-interceptor.properties	2011-06-30 16:04:23 +0000
+++ b/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/bad-connection-no-statement-interceptor.properties	2011-12-29 14:39:37 +0000
@@ -13,6 +13,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
-jdbc.url=jdbc:mysql://localhost:9306/test?connectionLifecycleInterceptors=com.mysql.clusterj.jdbc.ConnectionLifecycleInterceptor&poop=doop&com.mysql.clusterj.connectstring=localhost:9311
+jdbc.url=jdbc:mysql://localhost:3306/test?connectionLifecycleInterceptors=com.mysql.clusterj.jdbc.ConnectionLifecycleInterceptor&com.mysql.clusterj.connectstring=localhost:1186
 jdbc.driverName=com.mysql.jdbc.Driver
-ndb.connectString=localhost:9311
+ndb.connectString=localhost:1186

=== modified file 'storage/ndb/clusterj/clusterj-jdbc/src/test/resources/clusterj.properties'
--- a/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/clusterj.properties	2011-09-26 13:57:18 +0000
+++ b/storage/ndb/clusterj/clusterj-jdbc/src/test/resources/clusterj.properties	2011-12-29 14:39:37 +0000
@@ -13,13 +13,13 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
-com.mysql.clusterj.connectstring=localhost:9311
+com.mysql.clusterj.connectstring=localhost:1186
 com.mysql.clusterj.connect.retries=4
 com.mysql.clusterj.connect.delay=5
 com.mysql.clusterj.connect.verbose=1
 com.mysql.clusterj.connect.timeout.before=30
 com.mysql.clusterj.connect.timeout.after=20
-com.mysql.clusterj.jdbc.url=jdbc:mysql://localhost:9306/test?statementInterceptors=com.mysql.clusterj.jdbc.StatementInterceptor&connectionLifecycleInterceptors=com.mysql.clusterj.jdbc.ConnectionLifecycleInterceptor&com.mysql.clusterj.connectstring=localhost:9311&cachePrepStmts=true&rewriteBatchedStatements=true
+com.mysql.clusterj.jdbc.url=jdbc:mysql://localhost:3306/test?statementInterceptors=com.mysql.clusterj.jdbc.StatementInterceptor&connectionLifecycleInterceptors=com.mysql.clusterj.jdbc.ConnectionLifecycleInterceptor&com.mysql.clusterj.connectstring=localhost:1186&cachePrepStmts=true&rewriteBatchedStatements=true
 com.mysql.clusterj.jdbc.driver=com.mysql.jdbc.Driver
 com.mysql.clusterj.jdbc.username=root
 com.mysql.clusterj.jdbc.password=

=== modified file 'storage/ndb/clusterj/clusterj-jpatest/src/main/java/com/mysql/clusterj/jpatest/AbstractJPABaseTest.java'
--- a/storage/ndb/clusterj/clusterj-jpatest/src/main/java/com/mysql/clusterj/jpatest/AbstractJPABaseTest.java	2011-02-02 09:52:33 +0000
+++ b/storage/ndb/clusterj/clusterj-jpatest/src/main/java/com/mysql/clusterj/jpatest/AbstractJPABaseTest.java	2011-12-29 14:39:37 +0000
@@ -409,7 +409,7 @@ public abstract class AbstractJPABaseTes
         }
     }
 
-    protected void removeAll(Class<? extends IdBase> modelClass) {
+    protected void removeAll(Class<?> modelClass) {
         Query query = em.createQuery("DELETE FROM " + modelClass.getSimpleName());
         em.getTransaction().begin();
         query.executeUpdate();

=== modified file 'storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaClusterj.properties'
--- a/storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaClusterj.properties	2011-06-30 16:04:23 +0000
+++ b/storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaClusterj.properties	2011-12-29 14:39:37 +0000
@@ -1,5 +1,4 @@
-# Copyright (c) 2010 Sun Microsystems, Inc.
-# Use is subject to license terms.
+# Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -18,7 +17,7 @@
 #exclude=navA->B0,navA->B0_opt
 
 # OpenJPA - MySQL JDBC connection settings
-openjpa.ConnectionURL=jdbc:mysql://localhost:9306/test
+openjpa.ConnectionURL=jdbc:mysql://localhost:3306/test
 openjpa.ConnectionDriverName=com.mysql.jdbc.Driver
 openjpa.ConnectionUserName=md
 openjpa.ConnectionPassword=
@@ -28,7 +27,7 @@ openjpa.Log=DefaultLevel=WARN
 openjpa.ConnectionRetainMode=transaction
 
 # OpenJPA - ClusterJ settings
-openjpa.ndb.connectString=localhost:9311
+openjpa.ndb.connectString=localhost:1186
 openjpa.BrokerFactory=ndb
 
 # JPA - Derby connection settings

=== modified file 'storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaMysql.properties'
--- a/storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaMysql.properties	2011-06-30 16:04:23 +0000
+++ b/storage/ndb/clusterj/clusterj-openjpa/crundOpenjpaMysql.properties	2011-12-29 14:39:37 +0000
@@ -1,5 +1,4 @@
-# Copyright (c) 2010 Sun Microsystems, Inc.
-# Use is subject to license terms.
+# Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -18,7 +17,7 @@
 #exclude=navA->B0,navA->B0_opt
 
 # OpenJPA - MySQL JDBC connection settings
-openjpa.ConnectionURL=jdbc:mysql://localhost:9306/test
+openjpa.ConnectionURL=jdbc:mysql://localhost:3306/test
 openjpa.ConnectionDriverName=com.mysql.jdbc.Driver
 openjpa.ConnectionUserName=md
 openjpa.ConnectionPassword=

=== modified file 'storage/ndb/clusterj/clusterj-openjpa/src/main/java/com/mysql/clusterj/openjpa/NdbOpenJPADomainTypeHandlerImpl.java'
--- a/storage/ndb/clusterj/clusterj-openjpa/src/main/java/com/mysql/clusterj/openjpa/NdbOpenJPADomainTypeHandlerImpl.java	2011-08-03 01:02:19 +0000
+++ b/storage/ndb/clusterj/clusterj-openjpa/src/main/java/com/mysql/clusterj/openjpa/NdbOpenJPADomainTypeHandlerImpl.java	2011-12-29 14:39:37 +0000
@@ -1,5 +1,5 @@
 /*
-   Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+   Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -653,7 +653,7 @@ public class NdbOpenJPADomainTypeHandler
         }
     }
 
-    private void setUnsupported(String reason) {
+    public void setUnsupported(String reason) {
         if (status != Status.BAD) {
             if (logger.isDetailEnabled()) logger.detail("Class " + typeName + " marked as BAD.");
             status = Status.BAD;

=== modified file 'storage/ndb/clusterj/clusterj-openjpa/src/test/resources/META-INF/persistence.xml'
--- a/storage/ndb/clusterj/clusterj-openjpa/src/test/resources/META-INF/persistence.xml	2011-01-31 09:07:01 +0000
+++ b/storage/ndb/clusterj/clusterj-openjpa/src/test/resources/META-INF/persistence.xml	2011-12-29 14:39:37 +0000
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-   Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+   Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -22,12 +22,12 @@
     <class>com.mysql.clusterj.jpatest.model.B0</class>
     <!--
     <properties>
-      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:9306/test"/>
+      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:3306/test"/>
       <property name="openjpa.ConnectionDriverName" value="com.mysql.jdbc.Driver"/>
       <property name="openjpa.ConnectionRetainMode" value="transaction"/>
       <property name="openjpa.DataCache" value="false"/>
       <property name="openjpa.BrokerFactory" value="ndb"/>
-      <property name="openjpa.ndb.connectString" value="localhost:9311"/>
+      <property name="openjpa.ndb.connectString" value="localhost:1186"/>
     </properties>
     -->
   </persistence-unit>
@@ -57,13 +57,13 @@
     <class>com.mysql.clusterj.jpatest.model.TimestampAsUtilDateTypes</class>
     <class>com.mysql.clusterj.jpatest.model.TimestampAsSqlTimestampTypes</class>
     <properties>
-      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:9306/test"/>
+      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:3306/test"/>
       <property name="openjpa.ConnectionDriverName" value="com.mysql.jdbc.Driver"/>
       <property name="openjpa.ConnectionRetainMode" value="transaction"/>
       <property name="openjpa.DataCache" value="false"/>
       <property name="openjpa.Log" value="SQL=trace"/>
       <property name="openjpa.BrokerFactory" value="ndb"/>
-      <property name="openjpa.ndb.connectString" value="localhost:9311"/>
+      <property name="openjpa.ndb.connectString" value="localhost:1186"/>
     </properties>
   </persistence-unit>
   <persistence-unit name="jdbc" transaction-type="RESOURCE_LOCAL">
@@ -83,7 +83,7 @@
     <class>com.mysql.clusterj.jpatest.model.LongIntStringPKOneOne</class>
     <class>com.mysql.clusterj.jpatest.model.LongIntStringFKOneOne</class>
     <properties>
-      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:9306/test"/>
+      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:3306/test"/>
       <property name="openjpa.ConnectionDriverName" value="com.mysql.jdbc.Driver"/>
       <property name="openjpa.ConnectionRetainMode" value="transaction"/>
       <property name="openjpa.DataCache" value="false"/>
@@ -94,7 +94,7 @@
     <class>com.mysql.clusterj.jpatest.model.Employee</class>
     <properties>
       <property name="openjpa.BrokerFactory" value="ndb"/>
-      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:9306/test"/>
+      <property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:3306/test"/>
       <property name="openjpa.ConnectionDriverName" value="com.mysql.jdbc.Driver"/>
     </properties>
   </persistence-unit>

=== modified file 'storage/ndb/clusterj/clusterj-test/src/main/java/regression/Bug54619.java'
--- a/storage/ndb/clusterj/clusterj-test/src/main/java/regression/Bug54619.java	2011-02-02 09:52:33 +0000
+++ b/storage/ndb/clusterj/clusterj-test/src/main/java/regression/Bug54619.java	2011-12-29 14:39:37 +0000
@@ -1,5 +1,5 @@
 /*
- Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
 
  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
@@ -112,7 +112,7 @@ class Manager {
 
     static void createClusterJSession() {
         Properties properties = new Properties();
-        properties.put("com.mysql.clusterj.connectstring", "localhost:9311");
+        properties.put("com.mysql.clusterj.connectstring", "localhost:1186");
         properties.put("com.mysql.clusterj.database", "test");
         sessionfactory = ClusterJHelper.getSessionFactory(properties);
 

=== modified file 'storage/ndb/clusterj/clusterj-test/src/main/java/testsuite/clusterj/domaintypehandler/CrazyDomainTypeHandlerFactoryImpl.java'
--- a/storage/ndb/clusterj/clusterj-test/src/main/java/testsuite/clusterj/domaintypehandler/CrazyDomainTypeHandlerFactoryImpl.java	2011-02-02 09:52:33 +0000
+++ b/storage/ndb/clusterj/clusterj-test/src/main/java/testsuite/clusterj/domaintypehandler/CrazyDomainTypeHandlerFactoryImpl.java	2011-12-29 14:39:37 +0000
@@ -1,5 +1,5 @@
 /*
-   Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+   Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -196,6 +196,10 @@ public class CrazyDomainTypeHandlerFacto
                 public void objectSetKeys(Object keys, Object instance) {
                     throw new UnsupportedOperationException("Not supported yet.");
                 }
+
+                public void setUnsupported(String reason) {
+                    throw new UnsupportedOperationException("Not supported yet.");
+               }
             };
         } else {
             return null;

=== modified file 'storage/ndb/clusterj/clusterj-tie/src/test/resources/clusterj.properties'
--- a/storage/ndb/clusterj/clusterj-tie/src/test/resources/clusterj.properties	2011-01-31 09:07:01 +0000
+++ b/storage/ndb/clusterj/clusterj-tie/src/test/resources/clusterj.properties	2011-12-29 14:39:37 +0000
@@ -1,4 +1,4 @@
-# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -13,16 +13,15 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
-#com.mysql.clusterj.connectstring=127.0.0.1:9311
-com.mysql.clusterj.connectstring=localhost:9311
+com.mysql.clusterj.connectstring=localhost:1186
 #com.mysql.clusterj.connect.host=localhost
-#com.mysql.clusterj.connect.port=9311
+#com.mysql.clusterj.connect.port=1186
 com.mysql.clusterj.connect.retries=4
 com.mysql.clusterj.connect.delay=5
 com.mysql.clusterj.connect.verbose=1
 com.mysql.clusterj.connect.timeout.before=30
 com.mysql.clusterj.connect.timeout.after=20
-com.mysql.clusterj.jdbc.url=jdbc:mysql://localhost:9306/test
+com.mysql.clusterj.jdbc.url=jdbc:mysql://localhost:3306/test
 com.mysql.clusterj.jdbc.driver=com.mysql.jdbc.Driver
 com.mysql.clusterj.jdbc.username=root
 com.mysql.clusterj.jdbc.password=

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-5.1-telco-7.1 branch (Craig.Russell:4394 to 4395) Craig L Russell29 Dec