List:Commits« Previous MessageNext Message »
From:Magnus Blåudd Date:February 2 2011 8:20am
Subject:bzr push into mysql-5.5-telco-7.0 branch (magnus.blaudd:3164 to 3168)
View as plain text  
 3168 Magnus Blåudd	2011-02-02
      ndb
       - remove code for which supports runing without --ndb-log-empty-epoch
       -  injector::rollback now supporte in 5.5-telco-7.0 and trunk

    modified:
      sql/ha_ndbcluster.cc
      sql/ha_ndbcluster_binlog.cc
      sql/ha_ndbcluster_glue.h
 3167 Magnus Blåudd	2011-02-01 [merge]
      Merge 7.0 -> 5.5-telco-7.0

    added:
      mysql-test/suite/ndb/r/ndbinfo_cache.result
      mysql-test/suite/ndb/t/ndbinfo_cache.test
    modified:
      sql/ha_ndbinfo.h
 3166 Magnus Blåudd	2011-02-01 [merge]
      Merge 7.0 -> 5.5-telco-7.0

    modified:
      mysql-test/suite/ndb/r/ndb_dd_basic.result
      mysql-test/suite/ndb/t/ndb_dd_alter.test
      mysql-test/suite/ndb/t/ndb_dd_basic.test
      mysql-test/suite/ndb_team/t/ndb_dd_backuprestore.test
      sql/ha_ndbcluster.cc
      storage/ndb/docs/doxygen/Doxyfile.mgmapi
      storage/ndb/docs/doxygen/Doxyfile.ndb
      storage/ndb/docs/doxygen/Doxyfile.ndbapi
      storage/ndb/docs/doxygen/Doxyfile.odbc
      storage/ndb/docs/doxygen/postdoxy.pl
      storage/ndb/docs/doxygen/predoxy.pl
      storage/ndb/include/kernel/signaldata/ConfigChange.hpp
      storage/ndb/include/kernel/signaldata/GCP.hpp
      storage/ndb/include/mgmcommon/IPCConfig.hpp
      storage/ndb/include/ndbapi/ndb_cluster_connection.hpp
      storage/ndb/include/portlib/NdbDir.hpp
      storage/ndb/include/portlib/ndb_daemon.h
      storage/ndb/include/util/HashMap.hpp
      storage/ndb/ndbjtie/Makefile.defaults
      storage/ndb/ndbjtie/env.properties
      storage/ndb/ndbjtie/src/jtie/jtie/Wrapper.java
      storage/ndb/src/common/debugger/SignalLoggerManager.cpp
      storage/ndb/src/common/debugger/signaldata/CreateTrigImpl.cpp
      storage/ndb/src/common/logger/message.h
      storage/ndb/src/common/mgmcommon/IPCConfig.cpp
      storage/ndb/src/common/portlib/NdbDir.cpp
      storage/ndb/src/common/portlib/ndb_daemon.cc
      storage/ndb/src/common/util/ndb_opts.c
      storage/ndb/src/common/util/require.c
      storage/ndb/src/kernel/angel.cpp
      storage/ndb/src/kernel/angel.hpp
      storage/ndb/src/kernel/blocks/ERROR_codes.txt
      storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp
      storage/ndb/src/kernel/blocks/dbinfo/Dbinfo.hpp
      storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp
      storage/ndb/src/kernel/blocks/dbtc/Dbtc.hpp
      storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
      storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp
      storage/ndb/src/kernel/blocks/dbtup/DbtupDebug.cpp
      storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp
      storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp
      storage/ndb/src/kernel/blocks/dbtup/DbtupStoredProcDef.cpp
      storage/ndb/src/kernel/blocks/dbtup/test_dynbm.c
      storage/ndb/src/kernel/blocks/dbtux/DbtuxBuild.cpp
      storage/ndb/src/kernel/blocks/lgman.cpp
      storage/ndb/src/kernel/blocks/tsman.cpp
      storage/ndb/src/kernel/blocks/tsman.hpp
      storage/ndb/src/kernel/ndbd.cpp
      storage/ndb/src/kernel/ndbd.hpp
      storage/ndb/src/kernel/vm/SimulatedBlock.hpp
      storage/ndb/src/kernel/vm/dummy_mt.cpp
      storage/ndb/src/kernel/vm/dummy_nonmt.cpp
      storage/ndb/src/libndb.ver.in
      storage/ndb/src/mgmclient/CommandInterpreter.cpp
      storage/ndb/src/mgmsrv/ConfigManager.cpp
      storage/ndb/src/mgmsrv/ConfigManager.hpp
      storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp
      storage/ndb/src/ndbapi/NdbScanOperation.cpp
      storage/ndb/src/ndbapi/ndb_cluster_connection.cpp
      storage/ndb/src/ndbapi/trp_client.cpp
      storage/ndb/test/ndbapi/bench/mainAsyncGenerator.cpp
      storage/ndb/test/ndbapi/slow_select.cpp
      storage/ndb/test/ndbapi/testBasic.cpp
      storage/ndb/test/ndbapi/testBitfield.cpp
      storage/ndb/test/ndbapi/testDict.cpp
      storage/ndb/test/ndbapi/testLcp.cpp
      storage/ndb/test/run-test/16node-tests.txt
      storage/ndb/test/run-test/CMakeLists.txt
      storage/ndb/test/run-test/atrt-analyze-result.sh
      storage/ndb/test/run-test/atrt-backtrace.sh
      storage/ndb/test/run-test/atrt-gather-result.sh
      storage/ndb/test/run-test/atrt-mysql-test-run
      storage/ndb/test/run-test/atrt-mysqltest
      storage/ndb/test/run-test/atrt-setup.sh
      storage/ndb/test/run-test/atrt-testBackup
      storage/ndb/test/run-test/autotest-boot.sh
      storage/ndb/test/run-test/autotest-run.sh
      storage/ndb/test/run-test/basic.txt
      storage/ndb/test/run-test/check-tests.sh
      storage/ndb/test/run-test/create_mtr_suites.pl
      storage/ndb/test/run-test/daily-basic-tests.txt
      storage/ndb/test/run-test/daily-devel-tests.txt
      storage/ndb/test/run-test/files.cpp
      storage/ndb/test/run-test/make-config.sh
      storage/ndb/test/run-test/make-html-reports.sh
      storage/ndb/test/run-test/make-index.sh
      storage/ndb/test/run-test/ndb-autotest.sh
      storage/ndb/test/run-test/setup.cpp
      storage/ndb/test/run-test/upgrade-boot.sh
      storage/ndb/test/sql/BANK.sql
      storage/ndb/test/sql/T1.sql
      storage/ndb/test/sql/test_create_drop.pl
      storage/ndb/test/sql/test_range_bounds.pl
      storage/ndb/test/tools/log_listner.cpp
      storage/ndb/tools/clean-links.sh
      storage/ndb/tools/make-errors.pl
      storage/ndb/tools/make-links.sh
      storage/ndb/tools/ndb_error_reporter
 3165 Magnus Blåudd	2011-02-01
      ndb
       - add MCP patch for bug58082

    modified:
      sql/rpl_injector.cc
      sql/rpl_injector.h
 3164 Magnus Blåudd	2011-01-31 [merge]
      Merge 7.0 -> 5.5-telco-7.0

    modified:
      mysql-test/suite/ndb/r/ndb_dd_basic.result
      mysql-test/suite/ndb/r/ndb_partition_range.result
      mysql-test/suite/ndb/t/ndb_dd_basic.test
      sql/ha_ndbcluster.cc
      sql/ha_ndbcluster.h
=== modified file 'mysql-test/suite/ndb/r/ndb_dd_basic.result'
--- a/mysql-test/suite/ndb/r/ndb_dd_basic.result	2011-01-31 08:20:49 +0000
+++ b/mysql-test/suite/ndb/r/ndb_dd_basic.result	2011-02-01 14:58:18 +0000
@@ -167,12 +167,20 @@ INSERT INTO t1 VALUES
 SELECT COUNT(*) FROM t1;
 COUNT(*)
 501
-select  TABLE_NAME, PARTITION_NAME, TABLE_ROWS, DATA_LENGTH, MAX_DATA_LENGTH, DATA_FREE from INFORMATION_SCHEMA.partitions where table_name='t1';
-TABLE_NAME	PARTITION_NAME	TABLE_ROWS	DATA_LENGTH	MAX_DATA_LENGTH	DATA_FREE
-t1	p0	259	32768	1048576	1039300
-t1	p1	242	32768	1048576	1039640
-select  TABLE_NAME, TABLE_ROWS, DATA_LENGTH, MAX_DATA_LENGTH, DATA_FREE from INFORMATION_SCHEMA.tables where table_name='t1';
-TABLE_NAME	TABLE_ROWS	DATA_LENGTH	MAX_DATA_LENGTH	DATA_FREE
+SELECT table_name, 
+SUM(table_rows),
+SUM(data_length),
+MAX(max_data_length),
+SUM(data_free)
+FROM INFORMATION_SCHEMA.partitions
+WHERE table_name='t1'
+GROUP BY table_name;
+table_name	SUM(table_rows)	SUM(data_length)	MAX(max_data_length)	SUM(data_free)
+t1	501	65536	1048576	2078940
+SELECT table_name, table_rows, data_length, max_data_length, data_free
+FROM information_schema.tables
+WHERE table_name='t1';
+table_name	table_rows	data_length	max_data_length	data_free
 t1	501	65536	2097152	2078940
 CREATE LOGFILE GROUP lg2
 ADD UNDOFILE 'x.dat'

=== added file 'mysql-test/suite/ndb/r/ndbinfo_cache.result'
--- a/mysql-test/suite/ndb/r/ndbinfo_cache.result	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/ndb/r/ndbinfo_cache.result	2011-02-01 14:58:21 +0000
@@ -0,0 +1,16 @@
+USE ndbinfo;
+set GLOBAL query_cache_type=on;
+set GLOBAL query_cache_size=1355776;
+reset query cache;
+flush status;
+select * from counters;
+select * from counters;
+select * from counters;
+show status like "Qcache_queries_in_cache";
+Variable_name	Value
+Qcache_queries_in_cache	0
+show status like "Qcache_inserts";
+Variable_name	Value
+Qcache_inserts	0
+SET GLOBAL query_cache_size=default;
+SET GLOBAL query_cache_type=default;

=== modified file 'mysql-test/suite/ndb/t/ndb_dd_alter.test'
--- a/mysql-test/suite/ndb/t/ndb_dd_alter.test	2010-11-30 10:35:37 +0000
+++ b/mysql-test/suite/ndb/t/ndb_dd_alter.test	2011-01-28 11:00:16 +0000
@@ -161,10 +161,12 @@ enable_query_log;
 
 SELECT * FROM test.t1 ORDER BY a1;
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't1' AND partition_name = 'p0';
 
 ALTER TABLE test.t1 ADD a2 FLOAT, ADD a3 DOUBLE;
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't1' AND partition_name = 'p0';
 
 let $1=20;

=== modified file 'mysql-test/suite/ndb/t/ndb_dd_basic.test'
--- a/mysql-test/suite/ndb/t/ndb_dd_basic.test	2011-01-27 17:57:43 +0000
+++ b/mysql-test/suite/ndb/t/ndb_dd_basic.test	2011-01-28 10:48:23 +0000
@@ -203,9 +203,18 @@ SELECT COUNT(*) FROM t1;
 # WL#5568: Check disk space usage.
 ########################################
 
-select  TABLE_NAME, PARTITION_NAME, TABLE_ROWS, DATA_LENGTH, MAX_DATA_LENGTH, DATA_FREE from INFORMATION_SCHEMA.partitions where table_name='t1';
+SELECT table_name, 
+       SUM(table_rows),
+       SUM(data_length),
+       MAX(max_data_length),
+       SUM(data_free)
+FROM INFORMATION_SCHEMA.partitions
+WHERE table_name='t1'
+GROUP BY table_name;
 
-select  TABLE_NAME, TABLE_ROWS, DATA_LENGTH, MAX_DATA_LENGTH, DATA_FREE from INFORMATION_SCHEMA.tables where table_name='t1';
+SELECT table_name, table_rows, data_length, max_data_length, data_free
+FROM information_schema.tables
+WHERE table_name='t1';
 
 ####################################
 # Test error cases with size numbers

=== added file 'mysql-test/suite/ndb/t/ndbinfo_cache.test'
--- a/mysql-test/suite/ndb/t/ndbinfo_cache.test	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/ndb/t/ndbinfo_cache.test	2011-02-01 14:58:21 +0000
@@ -0,0 +1,31 @@
+--source include/have_query_cache.inc
+--source include/have_ndb.inc
+
+--source ndbinfo_create.inc
+
+USE ndbinfo;
+
+# BUG#59831 ndbinfo - counters not increasing after first query
+# - ndbinfo tables should never be cached in query cache
+
+# Turn on and reset query cache
+set GLOBAL query_cache_type=on;
+set GLOBAL query_cache_size=1355776;
+reset query cache;
+flush status;
+
+# Perform same query several times, which were inserted
+# in the cache  before fix but not inserted anymore
+--disable_result_log
+select * from counters;
+select * from counters;
+select * from counters;
+--enable_result_log
+show status like "Qcache_queries_in_cache";
+show status like "Qcache_inserts";
+
+# Turn off query cache
+SET GLOBAL query_cache_size=default;
+SET GLOBAL query_cache_type=default;
+
+--source ndbinfo_drop.inc

=== modified file 'mysql-test/suite/ndb_team/t/ndb_dd_backuprestore.test'
--- a/mysql-test/suite/ndb_team/t/ndb_dd_backuprestore.test	2008-12-22 16:27:38 +0000
+++ b/mysql-test/suite/ndb_team/t/ndb_dd_backuprestore.test	2011-01-28 10:55:54 +0000
@@ -288,16 +288,22 @@ SHOW CREATE TABLE test.t5;
 
 SHOW CREATE TABLE test.t6;
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't1'; 
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't2'; 
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't3'; 
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't4'; 
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't5'; 
 
+--replace_column 13 0 14 0 15 0 16 NULL 18 0
 SELECT * FROM information_schema.partitions WHERE table_name= 't6'; 
 
 SELECT COUNT(*) FROM test.t1; 

=== modified file 'sql/ha_ndbcluster.cc'
--- a/sql/ha_ndbcluster.cc	2011-01-31 08:20:49 +0000
+++ b/sql/ha_ndbcluster.cc	2011-02-02 08:07:45 +0000
@@ -7658,20 +7658,74 @@ static uint get_no_fragments(ulonglong m
   of number of nodes and never more than 4 times the number of nodes.
 
 */
-static bool adjusted_frag_count(uint no_fragments, 
-                                uint no_nodes,
-                                uint &reported_frags)
-{
-  uint i= 0;
-
-  // Should really depend on #replicas
-  uint max_per_node = no_nodes == 1 ? 8 : 4;
-
-  reported_frags= no_nodes;
-  while (reported_frags < no_fragments && ++i < max_per_node &&
-         (reported_frags + no_nodes) < MAX_PARTITIONS) 
-    reported_frags+= no_nodes;
-  return (reported_frags < no_fragments);
+static
+bool
+adjusted_frag_count(Ndb* ndb,
+                    uint requested_frags,
+                    uint &reported_frags)
+{
+  unsigned no_nodes= g_ndb_cluster_connection->no_db_nodes();
+  unsigned no_replicas= no_nodes == 1 ? 1 : 2;
+
+  unsigned no_threads= 1;
+  const unsigned no_nodegroups= g_ndb_cluster_connection->max_nodegroup() + 1;
+
+  {
+    /**
+     * Use SYSTAB_0 to get #replicas, and to guess #threads
+     */
+    char dbname[FN_HEADLEN+1];
+    dbname[FN_HEADLEN]= 0;
+    strnmov(dbname, ndb->getDatabaseName(), sizeof(dbname) - 1);
+    ndb->setDatabaseName("sys");
+    Ndb_table_guard ndbtab_g(ndb->getDictionary(), "SYSTAB_0");
+    const NdbDictionary::Table * tab = ndbtab_g.get_table();
+    if (tab)
+    {
+      no_replicas= ndbtab_g.get_table()->getReplicaCount();
+
+      /**
+       * Guess #threads
+       */
+      {
+        const Uint32 frags = tab->getFragmentCount();
+        Uint32 node = 0;
+        Uint32 cnt = 0;
+        for (Uint32 i = 0; i<frags; i++)
+        {
+          Uint32 replicas[4];
+          if (tab->getFragmentNodes(i, replicas, NDB_ARRAY_SIZE(replicas)))
+          {
+            if (node == replicas[0] || node == 0)
+            {
+              node = replicas[0];
+              cnt ++;
+            }
+          }
+        }
+        no_threads = cnt; // No of primary replica on 1-node
+      }
+    }
+    ndb->setDatabaseName(dbname);
+  }
+
+  const unsigned usable_nodes = no_replicas * no_nodegroups;
+  const uint max_replicas = 8 * usable_nodes * no_threads;
+
+  reported_frags = usable_nodes * no_threads; // Start with 1 frag per threads
+  Uint32 replicas = reported_frags * no_replicas;
+
+  /**
+   * Loop until requested replicas, and not exceed max-replicas
+   */
+  while (reported_frags < requested_frags &&
+         (replicas + usable_nodes * no_threads * no_replicas) <= max_replicas)
+  {
+    reported_frags += usable_nodes * no_threads;
+    replicas += usable_nodes * no_threads * no_replicas;
+  }
+
+  return (reported_frags < requested_frags);
 }
 
 
@@ -8013,30 +8067,8 @@ int ha_ndbcluster::create(const char *na
       create_info->max_rows : 
       create_info->min_rows;
     uint no_fragments= get_no_fragments(rows);
-
-    uint no_nodes= g_ndb_cluster_connection->no_db_nodes();
-    {
-      /**
-       * Use SYSTAB_0 to guess #threads per node
-       */
-      ndb->setDatabaseName("sys");
-      Ndb_table_guard ndbtab_g(dict, "SYSTAB_0");
-      if (ndbtab_g.get_table())
-      {
-        Uint32 frags= ndbtab_g.get_table()->getFragmentCount();
-        if (frags > no_nodes)
-        {
-          /**
-           * And use this as argument adjusted_frag_count...
-           */
-          no_nodes= frags;
-        }
-      }
-      ndb->setDatabaseName(m_dbname);
-    }
-
     uint reported_frags= no_fragments;
-    if (adjusted_frag_count(no_fragments, no_nodes, reported_frags))
+    if (adjusted_frag_count(ndb, no_fragments, reported_frags))
     {
       push_warning(current_thd,
                    MYSQL_ERROR::WARN_LEVEL_WARN, ER_UNKNOWN_ERROR,
@@ -11749,7 +11781,7 @@ ndb_get_table_statistics(THD *thd, ha_nd
     
     while ((check= pOp->nextResult(&dummyRowPtr, TRUE, TRUE)) == 0)
     {
-      DBUG_PRINT("info", ("nextResult rows: %d  commits: %d",
+      DBUG_PRINT("info", ("nextResult rows: %d  commits: %d"
                           "fixed_mem_size %d var_mem_size %d "
                           "fragmentid %d extent_space %d free_extent_space %d",
                           (int)rows, (int)commits, (int)fixed_mem,
@@ -13007,39 +13039,38 @@ ndbcluster_show_status(handlerton *hton,
 
 int ha_ndbcluster::get_default_no_partitions(HA_CREATE_INFO *create_info)
 {
+  if (unlikely(g_ndb_cluster_connection->get_no_ready() <= 0))
+  {
+err:
+    my_error(HA_ERR_NO_CONNECTION, MYF(0));
+    return -1;
+  }
+
+  THD* thd = current_thd;
+  if (thd == 0)
+    goto err;
+  Thd_ndb * thd_ndb = get_thd_ndb(thd);
+  if (thd_ndb == 0)
+    goto err;
+
   ha_rows max_rows, min_rows;
   if (create_info)
   {
     max_rows= create_info->max_rows;
     min_rows= create_info->min_rows;
-    
-    /**
-     * we hate this method...just return 1??
-     */
-    return 1;
   }
   else
   {
     max_rows= table_share->max_rows;
     min_rows= table_share->min_rows;
   }
+  uint no_fragments= get_no_fragments(max_rows >= min_rows ?
+                                      max_rows : min_rows);
   uint reported_frags;
-  uint no_fragments=
-    get_no_fragments(max_rows >= min_rows ? max_rows : min_rows);
-  if (unlikely(g_ndb_cluster_connection->get_no_ready() <= 0))
-  {
-    my_error(HA_ERR_NO_CONNECTION, MYF(0));
-    return -1;
-  }
-  uint no_nodes= g_ndb_cluster_connection->no_db_nodes();
-
-  if (adjusted_frag_count(no_fragments, no_nodes, reported_frags))
-  {
-    push_warning(current_thd,
-                 MYSQL_ERROR::WARN_LEVEL_WARN, ER_UNKNOWN_ERROR,
-    "Ndb might have problems storing the max amount of rows specified");
-  }
-  return (int)reported_frags;
+  adjusted_frag_count(thd_ndb->ndb,
+                      no_fragments,
+                      reported_frags);
+  return reported_frags;
 }
 
 uint32 ha_ndbcluster::calculate_key_hash_value(Field **field_array)
@@ -14925,23 +14956,16 @@ static MYSQL_SYSVAR_BOOL(
   1                                  /* default */
 );
 
-#ifndef NDB_NO_LOG_EMPTY_EPOCHS
-#define LOG_EMPTY_EPOCHS_OPTS PLUGIN_VAR_OPCMDARG
-#define LOG_EMPTY_EPOCHS_DEFAULT 0
-#else
-#define LOG_EMPTY_EPOCHS_OPTS PLUGIN_VAR_OPCMDARG | PLUGIN_VAR_READONLY
-#define LOG_EMPTY_EPOCHS_DEFAULT 1
-#endif
 
 static my_bool opt_ndb_log_empty_epochs;
 static MYSQL_SYSVAR_BOOL(
   log_empty_epochs,                  /* name */
   opt_ndb_log_empty_epochs,          /* var */
-  LOG_EMPTY_EPOCHS_OPTS,
+  PLUGIN_VAR_OPCMDARG,
   "",
   NULL,                              /* check func. */
   NULL,                              /* update func. */
-  LOG_EMPTY_EPOCHS_DEFAULT           /* default */
+  0                                  /* default */
 );
 
 bool ndb_log_empty_epochs(void)

=== modified file 'sql/ha_ndbcluster_binlog.cc'
--- a/sql/ha_ndbcluster_binlog.cc	2011-01-31 08:20:49 +0000
+++ b/sql/ha_ndbcluster_binlog.cc	2011-02-02 08:07:45 +0000
@@ -6693,7 +6693,6 @@ restart_cluster_failure:
                 (! (opt_ndb_log_apply_status &&
                     trans_slave_row_count) ))
             {
-#ifndef NDB_NO_LOG_EMPTY_EPOCHS
               /* nothing to commit, rollback instead */
               if (int r= trans.rollback())
               {
@@ -6703,9 +6702,6 @@ restart_cluster_failure:
                 /* TODO: Further handling? */
               }
               break;
-#else
-              abort(); // Should not come here, log-empty-epochs is always on
-#endif
             }
           }
       commit_to_binlog:

=== modified file 'sql/ha_ndbcluster_glue.h'
--- a/sql/ha_ndbcluster_glue.h	2011-01-27 13:25:19 +0000
+++ b/sql/ha_ndbcluster_glue.h	2011-02-02 08:07:45 +0000
@@ -94,9 +94,6 @@ enum column_format_type {
 /* Global schema lock not available */
 #define NDB_NO_GLOBAL_SCHEMA_LOCK
 
-/* Missing functionality in injector -> no --ndb-log-empty-epochs */
-#define NDB_NO_LOG_EMPTY_EPOCHS
-
 /*
   The enum open_table_mode has been removed in 5.5.7 and 'open_table_from_share'
   now takes "bool is_create_table" instead of the enum type. Define OTM_OPEN

=== modified file 'sql/ha_ndbinfo.h'
--- a/sql/ha_ndbinfo.h	2010-01-25 10:04:59 +0000
+++ b/sql/ha_ndbinfo.h	2011-02-01 14:58:21 +0000
@@ -72,6 +72,11 @@ public:
 
   bool get_error_message(int error, String *buf);
 
+  uint8 table_cache_type() {
+    // Don't put ndbinfo results in query cache
+    return HA_CACHE_TBL_NOCACHE;
+  }
+
 private:
   void unpack_record(uchar *dst_row);
 

=== modified file 'sql/rpl_injector.cc'
--- a/sql/rpl_injector.cc	2010-10-27 11:32:32 +0000
+++ b/sql/rpl_injector.cc	2011-02-01 16:06:26 +0000
@@ -97,6 +97,21 @@ int injector::transaction::commit()
    DBUG_RETURN(error);
 }
 
+#ifndef MCP_BUG58082
+int injector::transaction::rollback()
+{
+   DBUG_ENTER("injector::transaction::rollback()");
+   trans_rollback_stmt(m_thd);
+   if (!trans_rollback(m_thd))
+   {
+     close_thread_tables(m_thd);
+     if (!m_thd->locked_tables_mode)
+       m_thd->mdl_context.release_transactional_locks();
+   }
+   DBUG_RETURN(0);
+}
+#endif
+
 
 int injector::transaction::use_table(server_id_type sid, table tbl)
 {

=== modified file 'sql/rpl_injector.h'
--- a/sql/rpl_injector.h	2010-10-27 11:32:32 +0000
+++ b/sql/rpl_injector.h	2011-02-01 16:06:26 +0000
@@ -209,6 +209,16 @@ public:
       */
       int commit();
 
+#ifndef MCP_BUG58082
+       /*
+        Rollback a transaction.
+
+        This member function will clean up after a sequence of *_row calls by,
+        for example, releasing resource and unlocking files.
+      */
+      int rollback();
+#endif
+
       /*
         Get the position for the start of the transaction.
 

=== modified file 'storage/ndb/docs/doxygen/Doxyfile.mgmapi'
--- a/storage/ndb/docs/doxygen/Doxyfile.mgmapi	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/docs/doxygen/Doxyfile.mgmapi	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # Doxyfile 1.2.12
 
 # This file describes the settings to be used by the documentation system

=== modified file 'storage/ndb/docs/doxygen/Doxyfile.ndb'
--- a/storage/ndb/docs/doxygen/Doxyfile.ndb	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/docs/doxygen/Doxyfile.ndb	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # Doxyfile 1.2.14
 
 # This file describes the settings to be used by the documentation system

=== modified file 'storage/ndb/docs/doxygen/Doxyfile.ndbapi'
--- a/storage/ndb/docs/doxygen/Doxyfile.ndbapi	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/docs/doxygen/Doxyfile.ndbapi	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # Doxyfile 1.2.12
 
 # This file describes the settings to be used by the documentation system

=== modified file 'storage/ndb/docs/doxygen/Doxyfile.odbc'
--- a/storage/ndb/docs/doxygen/Doxyfile.odbc	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/docs/doxygen/Doxyfile.odbc	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # Doxyfile 1.2.14
 
 # This file describes the settings to be used by the documentation system

=== modified file 'storage/ndb/docs/doxygen/postdoxy.pl'
--- a/storage/ndb/docs/doxygen/postdoxy.pl	2008-11-14 16:29:38 +0000
+++ b/storage/ndb/docs/doxygen/postdoxy.pl	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #
 #  Written by Lars Thalmann, lars@stripped, 2003.
 #

=== modified file 'storage/ndb/docs/doxygen/predoxy.pl'
--- a/storage/ndb/docs/doxygen/predoxy.pl	2010-02-11 10:55:30 +0000
+++ b/storage/ndb/docs/doxygen/predoxy.pl	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2003, 2005 MySQL AB, 2010 Sun Microsystems, Inc.
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #
 #  Written by Lars Thalmann, lars@stripped, 2003.
 #
@@ -21,7 +36,7 @@ print OUTFILE "Documentation generated "
     " from mysql source files.";
 print OUTFILE<<EOT;
 <br>
-&copy; 2003-2004 MySQL AB
+&copy; 2003, 2005 MySQL AB, 2010 Sun Microsystems, Inc.
 <br>
 </center>
 </small></address>

=== modified file 'storage/ndb/include/kernel/signaldata/ConfigChange.hpp'
--- a/storage/ndb/include/kernel/signaldata/ConfigChange.hpp	2010-09-21 06:04:04 +0000
+++ b/storage/ndb/include/kernel/signaldata/ConfigChange.hpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008 Sun Microsystems, Inc.
+/* Copyright (c) 2008, 2010, 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

=== modified file 'storage/ndb/include/kernel/signaldata/GCP.hpp'
--- a/storage/ndb/include/kernel/signaldata/GCP.hpp	2009-05-27 15:21:45 +0000
+++ b/storage/ndb/include/kernel/signaldata/GCP.hpp	2011-01-28 13:54:32 +0000
@@ -55,7 +55,8 @@ struct GCPCommit // Distr. DIH-DIH
 
 struct GCPNoMoreTrans // Local DIH/TC
 {
-  STATIC_CONST( SignalLength = 3 );
+  STATIC_CONST( SignalLength = 4 );
+  Uint32 senderRef;
   Uint32 senderData;
   Uint32 gci_hi;
   Uint32 gci_lo;

=== modified file 'storage/ndb/include/mgmcommon/IPCConfig.hpp'
--- a/storage/ndb/include/mgmcommon/IPCConfig.hpp	2010-12-15 06:07:35 +0000
+++ b/storage/ndb/include/mgmcommon/IPCConfig.hpp	2011-01-30 23:13:49 +0000
@@ -1,6 +1,5 @@
 /* 
-   Copyright (C) 2003-2008 MySQL AB, Sun Microsystems Inc.
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 2010, 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

=== modified file 'storage/ndb/include/ndbapi/ndb_cluster_connection.hpp'
--- a/storage/ndb/include/ndbapi/ndb_cluster_connection.hpp	2010-11-15 09:23:10 +0000
+++ b/storage/ndb/include/ndbapi/ndb_cluster_connection.hpp	2011-01-28 11:26:27 +0000
@@ -177,6 +177,7 @@ public:
   void set_optimized_node_selection(int val);
 
   unsigned no_db_nodes();
+  unsigned max_nodegroup();
   unsigned node_id();
   unsigned get_connect_count() const;
 

=== modified file 'storage/ndb/include/portlib/NdbDir.hpp'
--- a/storage/ndb/include/portlib/NdbDir.hpp	2010-11-18 10:03:45 +0000
+++ b/storage/ndb/include/portlib/NdbDir.hpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2009 Sun Microsystems, Inc.
+/* Copyright (c) 2008, 2010, 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

=== modified file 'storage/ndb/include/portlib/ndb_daemon.h'
--- a/storage/ndb/include/portlib/ndb_daemon.h	2010-06-16 12:06:41 +0000
+++ b/storage/ndb/include/portlib/ndb_daemon.h	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2009 Sun Microsystems, Inc.
+/* Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/include/util/HashMap.hpp'
--- a/storage/ndb/include/util/HashMap.hpp	2010-09-21 07:36:08 +0000
+++ b/storage/ndb/include/util/HashMap.hpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2009 Sun Microsystems Inc.
+/* Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/ndbjtie/Makefile.defaults'
--- a/storage/ndb/ndbjtie/Makefile.defaults	2009-06-20 21:40:43 +0000
+++ b/storage/ndb/ndbjtie/Makefile.defaults	2011-01-30 20:42:21 +0000
@@ -1,3 +1,17 @@
+# Copyright 2009 Sun Microsystems, Inc.
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 #------------------------------------------------------------------------------
 
 # Default Variables Section:

=== modified file 'storage/ndb/ndbjtie/env.properties'
--- a/storage/ndb/ndbjtie/env.properties	2009-06-19 04:54:13 +0000
+++ b/storage/ndb/ndbjtie/env.properties	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright 2009 Sun Microsystems, Inc.
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # ----------------------------------------------------------------------
 
 #

=== modified file 'storage/ndb/ndbjtie/src/jtie/jtie/Wrapper.java'
--- a/storage/ndb/ndbjtie/src/jtie/jtie/Wrapper.java	2009-06-19 04:54:13 +0000
+++ b/storage/ndb/ndbjtie/src/jtie/jtie/Wrapper.java	2011-01-30 20:42:21 +0000
@@ -1,4 +1,22 @@
 /*
+   Copyright 2009 Sun Microsystems, Inc.
+    All rights reserved. Use is subject to license terms.
+
+   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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
+/*
  * Wrapper.java
  */
 

=== modified file 'storage/ndb/src/common/debugger/SignalLoggerManager.cpp'
--- a/storage/ndb/src/common/debugger/SignalLoggerManager.cpp	2011-01-03 15:08:41 +0000
+++ b/storage/ndb/src/common/debugger/SignalLoggerManager.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/common/debugger/signaldata/CreateTrigImpl.cpp'
--- a/storage/ndb/src/common/debugger/signaldata/CreateTrigImpl.cpp	2010-05-03 04:49:08 +0000
+++ b/storage/ndb/src/common/debugger/signaldata/CreateTrigImpl.cpp	2011-01-30 23:13:49 +0000
@@ -2,8 +2,7 @@
 
    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
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
+   the Free Software Foundation; version 2 of the License.
 
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of

=== modified file 'storage/ndb/src/common/logger/message.h'
--- a/storage/ndb/src/common/logger/message.h	2010-04-07 09:14:43 +0000
+++ b/storage/ndb/src/common/logger/message.h	2011-01-30 23:13:49 +0000
@@ -1,4 +1,21 @@
 /*
+   Copyright (c) 2010, 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
+/*
   To change or add messages ndbd or ndb_mgmd writes to the Windows
   error log, run
    mc.exe message.mc

=== modified file 'storage/ndb/src/common/mgmcommon/IPCConfig.cpp'
--- a/storage/ndb/src/common/mgmcommon/IPCConfig.cpp	2010-12-15 06:07:35 +0000
+++ b/storage/ndb/src/common/mgmcommon/IPCConfig.cpp	2011-01-30 23:13:49 +0000
@@ -1,6 +1,5 @@
 /* 
-   Copyright (C) 2003-2008 MySQL AB, Sun Microsystems Inc.
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 2010, 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

=== modified file 'storage/ndb/src/common/portlib/NdbDir.cpp'
--- a/storage/ndb/src/common/portlib/NdbDir.cpp	2010-11-30 07:47:55 +0000
+++ b/storage/ndb/src/common/portlib/NdbDir.cpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2009 Sun Microsystems, Inc.
+/* Copyright (c) 2008, 2010, 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

=== modified file 'storage/ndb/src/common/portlib/ndb_daemon.cc'
--- a/storage/ndb/src/common/portlib/ndb_daemon.cc	2010-11-17 10:20:39 +0000
+++ b/storage/ndb/src/common/portlib/ndb_daemon.cc	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2009 Sun Microsystems, Inc.
+/* Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/src/common/util/ndb_opts.c'
--- a/storage/ndb/src/common/util/ndb_opts.c	2010-11-17 10:01:47 +0000
+++ b/storage/ndb/src/common/util/ndb_opts.c	2011-01-30 23:13:49 +0000
@@ -1,3 +1,20 @@
+/*
+   Copyright (c) 2008, 2010, 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #define OPTEXPORT
 #include <ndb_opts.h>
 

=== modified file 'storage/ndb/src/common/util/require.c'
--- a/storage/ndb/src/common/util/require.c	2009-12-03 11:39:48 +0000
+++ b/storage/ndb/src/common/util/require.c	2011-01-30 23:13:49 +0000
@@ -1,3 +1,21 @@
+/*
+   Copyright 2009 Sun Microsystems, Inc.
+    All rights reserved. Use is subject to license terms.
+
+   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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include <ndb_global.h>
 
 void require_failed(int exitcode, RequirePrinter printer,

=== modified file 'storage/ndb/src/kernel/angel.cpp'
--- a/storage/ndb/src/kernel/angel.cpp	2010-11-03 13:59:57 +0000
+++ b/storage/ndb/src/kernel/angel.cpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003-2008 MySQL AB, 2009 Sun Microsystems, Inc.
+/* Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/src/kernel/angel.hpp'
--- a/storage/ndb/src/kernel/angel.hpp	2010-11-03 11:09:03 +0000
+++ b/storage/ndb/src/kernel/angel.hpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003-2008 MySQL AB, 2009 Sun Microsystems, Inc.
+/* Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/src/kernel/blocks/ERROR_codes.txt'
--- a/storage/ndb/src/kernel/blocks/ERROR_codes.txt	2011-01-14 12:05:51 +0000
+++ b/storage/ndb/src/kernel/blocks/ERROR_codes.txt	2011-01-30 20:56:00 +0000
@@ -1,3 +1,18 @@
+# Copyright (c) 2003, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 Next QMGR 938
 Next NDBCNTR 1002
 Next NDBFS 2000

=== modified file 'storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp'
--- a/storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp	2010-11-22 14:27:12 +0000
+++ b/storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp	2011-02-01 08:50:17 +0000
@@ -5373,6 +5373,7 @@ void Dbdih::checkGcpOutstanding(Signal*
     }
      
     GCPNoMoreTrans* req = (GCPNoMoreTrans*)signal->getDataPtrSend();
+    req->senderRef = reference();
     req->senderData = m_micro_gcp.m_master_ref;
     req->gci_hi = Uint32(m_micro_gcp.m_old_gci >> 32);
     req->gci_lo = Uint32(m_micro_gcp.m_old_gci);
@@ -5631,6 +5632,7 @@ void Dbdih::execMASTER_GCPREQ(Signal* si
 
     {
       GCPNoMoreTrans* req2 = (GCPNoMoreTrans*)signal->getDataPtrSend();
+      req2->senderRef = reference();
       req2->senderData = m_micro_gcp.m_master_ref;
       req2->gci_hi = (Uint32)(m_micro_gcp.m_old_gci >> 32);
       req2->gci_lo = (Uint32)(m_micro_gcp.m_old_gci & 0xFFFFFFFF);
@@ -9952,6 +9954,7 @@ void Dbdih::execGCP_COMMIT(Signal* signa
   emptyverificbuffer(signal, true);
 
   GCPNoMoreTrans* req2 = (GCPNoMoreTrans*)signal->getDataPtrSend();
+  req2->senderRef = reference();
   req2->senderData = calcDihBlockRef(masterNodeId);
   req2->gci_hi = (Uint32)(m_micro_gcp.m_old_gci >> 32);
   req2->gci_lo = (Uint32)(m_micro_gcp.m_old_gci & 0xFFFFFFFF);

=== modified file 'storage/ndb/src/kernel/blocks/dbinfo/Dbinfo.hpp'
--- a/storage/ndb/src/kernel/blocks/dbinfo/Dbinfo.hpp	2010-01-15 11:15:33 +0000
+++ b/storage/ndb/src/kernel/blocks/dbinfo/Dbinfo.hpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2007-2008 MySQL AB, 2009-2010 Sun Microsystems Inc.
+/* Copyright 2008-2010 Sun Microsystems, Inc.
    All rights reserved. Use is subject to license terms.
 
    This program is free software; you can redistribute it and/or modify

=== modified file 'storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp'
--- a/storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp	2011-01-17 15:00:13 +0000
+++ b/storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp	2011-01-31 17:37:07 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/kernel/blocks/dbtc/Dbtc.hpp'
--- a/storage/ndb/src/kernel/blocks/dbtc/Dbtc.hpp	2011-01-17 15:00:13 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtc/Dbtc.hpp	2011-01-28 13:54:32 +0000
@@ -2050,6 +2050,7 @@ private:
   /**************************************************************************/
 
   Uint32 c_gcp_ref;
+  Uint32 c_gcp_data;
 
   Uint32 c_sttor_ref;
 

=== modified file 'storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp'
--- a/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp	2011-01-17 15:00:13 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp	2011-01-31 17:37:07 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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
@@ -7813,7 +7812,8 @@ void Dbtc::execGCP_NOMORETRANS(Signal* s
 {
   jamEntry();
   GCPNoMoreTrans* req = (GCPNoMoreTrans*)signal->getDataPtr();
-  c_gcp_ref = req->senderData;
+  c_gcp_ref = req->senderRef;
+  c_gcp_data = req->senderData;
   Uint32 gci_lo = req->gci_lo;
   Uint32 gci_hi = req->gci_hi;
   tcheckGcpId = gci_lo | (Uint64(gci_hi) << 32);
@@ -11629,10 +11629,10 @@ void Dbtc::sendScanTabConf(Signal* signa
 void Dbtc::gcpTcfinished(Signal* signal, Uint64 gci)
 {
   GCPTCFinished* conf = (GCPTCFinished*)signal->getDataPtrSend();
-  conf->senderData = c_gcp_ref;
+  conf->senderData = c_gcp_data;
   conf->gci_hi = Uint32(gci >> 32);
   conf->gci_lo = Uint32(gci);
-  sendSignal(cdihblockref, GSN_GCP_TCFINISHED, signal, 
+  sendSignal(c_gcp_ref, GSN_GCP_TCFINISHED, signal,
              GCPTCFinished::SignalLength, JBB);
 }//Dbtc::gcpTcfinished()
 

=== modified file 'storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp'
--- a/storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp	2011-01-03 15:08:41 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/kernel/blocks/dbtup/DbtupDebug.cpp'
--- a/storage/ndb/src/kernel/blocks/dbtup/DbtupDebug.cpp	2011-01-03 15:08:41 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtup/DbtupDebug.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp'
--- a/storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp	2011-01-14 12:05:51 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp'
--- a/storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp	2011-01-03 15:08:41 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/kernel/blocks/dbtup/DbtupStoredProcDef.cpp'
--- a/storage/ndb/src/kernel/blocks/dbtup/DbtupStoredProcDef.cpp	2011-01-03 15:08:41 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtup/DbtupStoredProcDef.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/kernel/blocks/dbtup/test_dynbm.c'
--- a/storage/ndb/src/kernel/blocks/dbtup/test_dynbm.c	2007-04-03 12:49:05 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtup/test_dynbm.c	2011-01-30 20:42:21 +0000
@@ -1,3 +1,21 @@
+/*
+   Copyright (C) 2007 MySQL AB
+    All rights reserved. Use is subject to license terms.
+
+   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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>

=== modified file 'storage/ndb/src/kernel/blocks/dbtux/DbtuxBuild.cpp'
--- a/storage/ndb/src/kernel/blocks/dbtux/DbtuxBuild.cpp	2010-09-24 18:19:07 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtux/DbtuxBuild.cpp	2011-01-30 20:56:00 +0000
@@ -1,3 +1,19 @@
+/*
+   Copyright (c) 2009, 2010, 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
 
 #include "Dbtux.hpp"
 

=== modified file 'storage/ndb/src/kernel/blocks/lgman.cpp'
--- a/storage/ndb/src/kernel/blocks/lgman.cpp	2011-01-15 06:29:18 +0000
+++ b/storage/ndb/src/kernel/blocks/lgman.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2005, 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

=== modified file 'storage/ndb/src/kernel/blocks/tsman.cpp'
--- a/storage/ndb/src/kernel/blocks/tsman.cpp	2011-01-15 06:29:18 +0000
+++ b/storage/ndb/src/kernel/blocks/tsman.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2005, 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

=== modified file 'storage/ndb/src/kernel/blocks/tsman.hpp'
--- a/storage/ndb/src/kernel/blocks/tsman.hpp	2011-01-15 06:29:18 +0000
+++ b/storage/ndb/src/kernel/blocks/tsman.hpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2005, 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

=== modified file 'storage/ndb/src/kernel/ndbd.cpp'
--- a/storage/ndb/src/kernel/ndbd.cpp	2010-12-20 10:33:24 +0000
+++ b/storage/ndb/src/kernel/ndbd.cpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003-2008 MySQL AB, 2009 Sun Microsystems, Inc.
+/* Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/src/kernel/ndbd.hpp'
--- a/storage/ndb/src/kernel/ndbd.hpp	2010-05-05 15:27:29 +0000
+++ b/storage/ndb/src/kernel/ndbd.hpp	2011-01-30 23:13:49 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003-2008 MySQL AB, 2009 Sun Microsystems, Inc.
+/* Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/src/kernel/vm/SimulatedBlock.hpp'
--- a/storage/ndb/src/kernel/vm/SimulatedBlock.hpp	2011-01-03 15:08:41 +0000
+++ b/storage/ndb/src/kernel/vm/SimulatedBlock.hpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/kernel/vm/dummy_mt.cpp'
--- a/storage/ndb/src/kernel/vm/dummy_mt.cpp	2008-01-01 12:45:11 +0000
+++ b/storage/ndb/src/kernel/vm/dummy_mt.cpp	2011-01-30 23:13:49 +0000
@@ -1,3 +1,21 @@
+/*
+   Copyright (C) 2008 MySQL AB
+    All rights reserved. Use is subject to license terms.
+
+   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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include "FastScheduler.hpp"
 #include "RefConvert.hpp"
 

=== modified file 'storage/ndb/src/kernel/vm/dummy_nonmt.cpp'
--- a/storage/ndb/src/kernel/vm/dummy_nonmt.cpp	2009-01-23 14:21:31 +0000
+++ b/storage/ndb/src/kernel/vm/dummy_nonmt.cpp	2011-01-30 23:13:49 +0000
@@ -1,3 +1,21 @@
+/*
+   Copyright (C) 2008 MySQL AB, 2008, 2009 Sun Microsystems, Inc.
+    All rights reserved. Use is subject to license terms.
+
+   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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include <assert.h>
 #include <ndb_types.h>
 

=== modified file 'storage/ndb/src/libndb.ver.in'
--- a/storage/ndb/src/libndb.ver.in	2007-01-19 00:31:43 +0000
+++ b/storage/ndb/src/libndb.ver.in	2011-01-30 20:42:21 +0000
@@ -1,2 +1,17 @@
+# Copyright (C) 2007 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 libndbclient_@NDB_SHARED_LIB_MAJOR_VERSION@ { global: *; };
 

=== modified file 'storage/ndb/src/mgmclient/CommandInterpreter.cpp'
--- a/storage/ndb/src/mgmclient/CommandInterpreter.cpp	2010-11-28 11:34:01 +0000
+++ b/storage/ndb/src/mgmclient/CommandInterpreter.cpp	2011-01-30 23:13:49 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB, 2010 Sun Microsystems, Inc.
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 2010, 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

=== modified file 'storage/ndb/src/mgmsrv/ConfigManager.cpp'
--- a/storage/ndb/src/mgmsrv/ConfigManager.cpp	2011-01-18 09:52:49 +0000
+++ b/storage/ndb/src/mgmsrv/ConfigManager.cpp	2011-01-31 17:37:07 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008-2009 Sun Microsystems, Inc.
+/* Copyright (c) 2008, 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

=== modified file 'storage/ndb/src/mgmsrv/ConfigManager.hpp'
--- a/storage/ndb/src/mgmsrv/ConfigManager.hpp	2011-01-18 09:52:49 +0000
+++ b/storage/ndb/src/mgmsrv/ConfigManager.hpp	2011-01-31 17:37:07 +0000
@@ -1,4 +1,4 @@
-/* Copyright (C) 2008 Sun Microsystems, Inc.
+/* Copyright (c) 2008, 2010, 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

=== modified file 'storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp'
--- a/storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp	2011-01-10 11:22:17 +0000
+++ b/storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp	2011-01-28 11:27:55 +0000
@@ -595,10 +595,19 @@ NdbEventOperationImpl::execute_nolock()
     int res = myDict->beginSchemaTrans();
     if (res != 0)
     {
-      m_error.code= myDict->getNdbError().code;
-      DBUG_RETURN(-1);
+      switch(myDict->getNdbError().code){
+      case 711:
+        // ignore;
+        break;
+      default:
+        m_error.code= myDict->getNdbError().code;
+        DBUG_RETURN(-1);
+      }
+    }
+    else
+    {
+      schemaTrans = true;
     }
-    schemaTrans = true;
   }
 
   if (theFirstPkAttrs[0] == NULL && 

=== modified file 'storage/ndb/src/ndbapi/NdbScanOperation.cpp'
--- a/storage/ndb/src/ndbapi/NdbScanOperation.cpp	2011-01-03 15:08:41 +0000
+++ b/storage/ndb/src/ndbapi/NdbScanOperation.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/src/ndbapi/ndb_cluster_connection.cpp'
--- a/storage/ndb/src/ndbapi/ndb_cluster_connection.cpp	2010-12-02 11:02:29 +0000
+++ b/storage/ndb/src/ndbapi/ndb_cluster_connection.cpp	2011-01-28 11:26:27 +0000
@@ -229,6 +229,38 @@ Ndb_cluster_connection::node_id()
   return m_impl.m_transporter_facade->ownId();
 }
 
+unsigned
+Ndb_cluster_connection::max_nodegroup()
+{
+  TransporterFacade *tp = m_impl.m_transporter_facade;
+  if (tp == 0 || tp->ownId() == 0)
+    return 0;
+
+  Bitmask<MAX_NDB_NODES> ng;
+  tp->lock_mutex();
+  for(unsigned i= 0; i < no_db_nodes(); i++)
+  {
+    //************************************************
+    // If any node is answering, ndb is answering
+    //************************************************
+    trp_node n = tp->theClusterMgr->getNodeInfo(m_impl.m_all_nodes[i].id);
+    if (n.is_confirmed() && n.m_state.nodeGroup <= MAX_NDB_NODES)
+      ng.set(n.m_state.nodeGroup);
+  }
+  tp->unlock_mutex();
+
+  if (ng.isclear())
+    return 0;
+
+  Uint32 n = ng.find_first();
+  Uint32 m;
+  do
+  {
+    m = n;
+  } while ((n = ng.find(n+1)) != ng.NotFound);
+
+  return m;
+}
 
 int Ndb_cluster_connection::get_no_ready()
 {

=== modified file 'storage/ndb/src/ndbapi/trp_client.cpp'
--- a/storage/ndb/src/ndbapi/trp_client.cpp	2011-01-21 18:31:51 +0000
+++ b/storage/ndb/src/ndbapi/trp_client.cpp	2011-01-31 17:37:07 +0000
@@ -1,3 +1,20 @@
+/*
+   Copyright (c) 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include "trp_client.hpp"
 #include "TransporterFacade.hpp"
 

=== modified file 'storage/ndb/test/ndbapi/bench/mainAsyncGenerator.cpp'
--- a/storage/ndb/test/ndbapi/bench/mainAsyncGenerator.cpp	2011-01-16 06:24:02 +0000
+++ b/storage/ndb/test/ndbapi/bench/mainAsyncGenerator.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2005, 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

=== modified file 'storage/ndb/test/ndbapi/slow_select.cpp'
--- a/storage/ndb/test/ndbapi/slow_select.cpp	2009-12-04 05:53:03 +0000
+++ b/storage/ndb/test/ndbapi/slow_select.cpp	2011-01-30 20:56:00 +0000
@@ -1,3 +1,20 @@
+/*
+   Copyright (C) 2004, 2005 MySQL AB, 2009 Sun Microsystems, Inc.
+    All rights reserved. Use is subject to license terms.
+
+   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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
 
 #include <ndb_global.h>
 #include <NdbApi.hpp>

=== modified file 'storage/ndb/test/ndbapi/testBasic.cpp'
--- a/storage/ndb/test/ndbapi/testBasic.cpp	2011-01-14 12:05:51 +0000
+++ b/storage/ndb/test/ndbapi/testBasic.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/test/ndbapi/testBitfield.cpp'
--- a/storage/ndb/test/ndbapi/testBitfield.cpp	2010-11-28 11:34:01 +0000
+++ b/storage/ndb/test/ndbapi/testBitfield.cpp	2011-01-30 20:56:00 +0000
@@ -1,3 +1,19 @@
+/*
+   Copyright (c) 2004, 2010, 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
 
 #include <ndb_global.h>
 #include <ndb_opts.h>

=== modified file 'storage/ndb/test/ndbapi/testDict.cpp'
--- a/storage/ndb/test/ndbapi/testDict.cpp	2011-01-03 18:10:25 +0000
+++ b/storage/ndb/test/ndbapi/testDict.cpp	2011-01-30 20:56:00 +0000
@@ -1,6 +1,5 @@
 /*
-   Copyright (C) 2003 MySQL AB
-    All rights reserved. Use is subject to license terms.
+   Copyright (c) 2003, 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

=== modified file 'storage/ndb/test/ndbapi/testLcp.cpp'
--- a/storage/ndb/test/ndbapi/testLcp.cpp	2010-04-13 16:01:38 +0000
+++ b/storage/ndb/test/ndbapi/testLcp.cpp	2011-01-30 20:56:00 +0000
@@ -1,3 +1,20 @@
+/*
+   Copyright (C) 2004, 2005 MySQL AB, 2009 Sun Microsystems, Inc.
+    All rights reserved. Use is subject to license terms.
+
+   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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
 
 #include <NDBT.hpp>
 #include <NdbApi.hpp>

=== modified file 'storage/ndb/test/run-test/16node-tests.txt'
--- a/storage/ndb/test/run-test/16node-tests.txt	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/test/run-test/16node-tests.txt	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # BASIC FUNCTIONALITY
 max-time: 500
 cmd: testBasic

=== modified file 'storage/ndb/test/run-test/CMakeLists.txt'
--- a/storage/ndb/test/run-test/CMakeLists.txt	2010-11-17 11:35:04 +0000
+++ b/storage/ndb/test/run-test/CMakeLists.txt	2011-01-30 23:13:49 +0000
@@ -1,5 +1,4 @@
-# Copyright (C) 2009 Sun Microsystems
-#  All rights reserved. Use is subject to license terms.
+# Copyright (c) 2009, 2010, 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

=== modified file 'storage/ndb/test/run-test/atrt-analyze-result.sh'
--- a/storage/ndb/test/run-test/atrt-analyze-result.sh	2008-08-24 18:38:25 +0000
+++ b/storage/ndb/test/run-test/atrt-analyze-result.sh	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (C) 2003, 2008 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 cores=`find result -name 'core*'`
 if [ "$cores" ]
 then

=== modified file 'storage/ndb/test/run-test/atrt-backtrace.sh'
--- a/storage/ndb/test/run-test/atrt-backtrace.sh	2010-04-16 12:25:53 +0000
+++ b/storage/ndb/test/run-test/atrt-backtrace.sh	2011-01-30 20:56:00 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (C) 2008 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # Does not work on Windows (gcc only)
 if uname | grep -iq cygwin
 then

=== modified file 'storage/ndb/test/run-test/atrt-gather-result.sh'
--- a/storage/ndb/test/run-test/atrt-gather-result.sh	2010-04-28 08:10:55 +0000
+++ b/storage/ndb/test/run-test/atrt-gather-result.sh	2011-01-30 23:13:49 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (c) 2003, 2010, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 set -e
 
 mkdir -p result

=== modified file 'storage/ndb/test/run-test/atrt-mysql-test-run'
--- a/storage/ndb/test/run-test/atrt-mysql-test-run	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/test/run-test/atrt-mysql-test-run	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (C) 2004, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 set -x
 p=`pwd`
 cd $MYSQL_BASE_DIR/mysql-test 

=== modified file 'storage/ndb/test/run-test/atrt-mysqltest'
--- a/storage/ndb/test/run-test/atrt-mysqltest	2010-08-02 11:36:25 +0000
+++ b/storage/ndb/test/run-test/atrt-mysqltest	2011-01-30 20:42:21 +0000
@@ -1,4 +1,20 @@
 #!/bin/sh
+
+# Copyright (c) 2010, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #
 # Use like this in the ATRT test file:
 #

=== modified file 'storage/ndb/test/run-test/atrt-setup.sh'
--- a/storage/ndb/test/run-test/atrt-setup.sh	2010-04-30 09:47:32 +0000
+++ b/storage/ndb/test/run-test/atrt-setup.sh	2011-01-30 20:56:00 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 MACHINE=$1
 LOCAL_DIR=$2
 REMOTE_DIR=$3

=== modified file 'storage/ndb/test/run-test/atrt-testBackup'
--- a/storage/ndb/test/run-test/atrt-testBackup	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/test/run-test/atrt-testBackup	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (C) 2004, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 PATH=$PATH:$MYSQL_BASE_DIR/bin
 export PATH
 

=== modified file 'storage/ndb/test/run-test/autotest-boot.sh'
--- a/storage/ndb/test/run-test/autotest-boot.sh	2010-05-26 10:49:22 +0000
+++ b/storage/ndb/test/run-test/autotest-boot.sh	2011-01-30 23:13:49 +0000
@@ -1,4 +1,20 @@
 #!/bin/sh
+
+# Copyright (c) 2007, 2010, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #############################################################
 # This script created by Jonas does the following	    #
 # Cleans up clones and pevious builds, pulls new clones,    #

=== modified file 'storage/ndb/test/run-test/autotest-run.sh'
--- a/storage/ndb/test/run-test/autotest-run.sh	2010-04-28 08:10:55 +0000
+++ b/storage/ndb/test/run-test/autotest-run.sh	2011-01-30 23:13:49 +0000
@@ -1,4 +1,20 @@
 #!/bin/sh
+
+# Copyright (c) 2007, 2010, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #############################################################
 # This script created by Jonas does the following	    #
 # Cleans up clones and pevious builds, pulls new clones,    #

=== modified file 'storage/ndb/test/run-test/basic.txt'
--- a/storage/ndb/test/run-test/basic.txt	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/test/run-test/basic.txt	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2004, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # BASIC FUNCTIONALITY
 max-time: 500
 cmd: testBasic

=== modified file 'storage/ndb/test/run-test/check-tests.sh'
--- a/storage/ndb/test/run-test/check-tests.sh	2010-12-13 13:20:16 +0000
+++ b/storage/ndb/test/run-test/check-tests.sh	2011-01-30 23:13:49 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (c) 2009, 2010, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 set -e
 
 files="daily-basic-tests.txt daily-devel-tests.txt upgrade-tests.txt"

=== modified file 'storage/ndb/test/run-test/create_mtr_suites.pl'
--- a/storage/ndb/test/run-test/create_mtr_suites.pl	2009-03-13 13:34:10 +0000
+++ b/storage/ndb/test/run-test/create_mtr_suites.pl	2011-01-30 23:13:49 +0000
@@ -1,6 +1,22 @@
 #!/usr/bin/perl
 # -*- cperl -*-
 
+# Copyright 2009 Sun Microsystems, Inc.
+#  All rights reserved. Use is subject to license terms.
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
 use strict;
 use warnings;
 use IO::File;

=== modified file 'storage/ndb/test/run-test/daily-basic-tests.txt'
--- a/storage/ndb/test/run-test/daily-basic-tests.txt	2011-01-14 12:05:51 +0000
+++ b/storage/ndb/test/run-test/daily-basic-tests.txt	2011-02-01 08:36:25 +0000
@@ -1,3 +1,17 @@
+# Copyright (c) 2004, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 max-time: 600
 cmd: atrt-testBackup
 args: -n NFMaster T1

=== modified file 'storage/ndb/test/run-test/daily-devel-tests.txt'
--- a/storage/ndb/test/run-test/daily-devel-tests.txt	2010-06-21 08:51:07 +0000
+++ b/storage/ndb/test/run-test/daily-devel-tests.txt	2011-02-01 08:36:25 +0000
@@ -1,3 +1,17 @@
+# Copyright (c) 2004, 2010, 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 #
 # BACKUP
 #

=== modified file 'storage/ndb/test/run-test/files.cpp'
--- a/storage/ndb/test/run-test/files.cpp	2010-10-29 12:24:08 +0000
+++ b/storage/ndb/test/run-test/files.cpp	2011-01-30 20:56:00 +0000
@@ -1,3 +1,20 @@
+/*
+   Copyright (c) 2007, 2010, 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include "atrt.hpp"
 #include <portlib/NdbDir.hpp>
 #include <portlib/NdbSleep.h>

=== modified file 'storage/ndb/test/run-test/make-config.sh'
--- a/storage/ndb/test/run-test/make-config.sh	2005-11-22 17:05:10 +0000
+++ b/storage/ndb/test/run-test/make-config.sh	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 baseport=""
 basedir=""
 proc_no=1

=== modified file 'storage/ndb/test/run-test/make-html-reports.sh'
--- a/storage/ndb/test/run-test/make-html-reports.sh	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/test/run-test/make-html-reports.sh	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #!/bin/sh
 
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 src_dir=$1
 run=$2
 date=$3

=== modified file 'storage/ndb/test/run-test/make-index.sh'
--- a/storage/ndb/test/run-test/make-index.sh	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/test/run-test/make-index.sh	2011-01-30 20:42:21 +0000
@@ -1,4 +1,20 @@
 #!/bin/sh
+
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # NAME
 #   make-index.sh
 #

=== modified file 'storage/ndb/test/run-test/ndb-autotest.sh'
--- a/storage/ndb/test/run-test/ndb-autotest.sh	2006-08-21 13:34:29 +0000
+++ b/storage/ndb/test/run-test/ndb-autotest.sh	2011-01-30 20:42:21 +0000
@@ -1,4 +1,20 @@
 #!/bin/sh
+
+# Copyright (C) 2005, 2006 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #############################################################
 # This script created by Jonas does the following	    #
 # Cleans up clones and pevious builds, pulls new clones,    #

=== modified file 'storage/ndb/test/run-test/setup.cpp'
--- a/storage/ndb/test/run-test/setup.cpp	2010-11-17 10:02:52 +0000
+++ b/storage/ndb/test/run-test/setup.cpp	2011-02-01 14:58:18 +0000
@@ -1,3 +1,20 @@
+/*
+   Copyright (c) 2007, 2010, 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include "atrt.hpp"
 #include <ndb_global.h>
 #include <util/ndb_opts.h>

=== modified file 'storage/ndb/test/run-test/upgrade-boot.sh'
--- a/storage/ndb/test/run-test/upgrade-boot.sh	2007-08-31 14:12:51 +0000
+++ b/storage/ndb/test/run-test/upgrade-boot.sh	2011-01-30 20:42:21 +0000
@@ -1,4 +1,20 @@
 #!/bin/sh
+
+# Copyright (C) 2007 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #############################################################
 # This script created by Jonas does the following	    #
 # Cleans up clones and pevious builds, pulls new clones,    #

=== modified file 'storage/ndb/test/sql/BANK.sql'
--- a/storage/ndb/test/sql/BANK.sql	2005-09-15 10:53:59 +0000
+++ b/storage/ndb/test/sql/BANK.sql	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+-- Copyright (C) 2005 MySQL AB
+--
+-- 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
+-- the Free Software Foundation; version 2 of the License.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program; if not, write to the Free Software
+-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 CREATE DATABASE IF NOT EXISTS BANK default charset=latin1 default collate=latin1_bin;
 USE BANK;
 DROP TABLE IF EXISTS GL;

=== modified file 'storage/ndb/test/sql/T1.sql'
--- a/storage/ndb/test/sql/T1.sql	2005-09-15 10:53:59 +0000
+++ b/storage/ndb/test/sql/T1.sql	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+-- Copyright (C) 2005 MySQL AB
+--
+-- 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
+-- the Free Software Foundation; version 2 of the License.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program; if not, write to the Free Software
+-- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 create database if not exists TEST_DB;
 use TEST_DB;
 drop table if exists T1;

=== modified file 'storage/ndb/test/sql/test_create_drop.pl'
--- a/storage/ndb/test/sql/test_create_drop.pl	2005-10-07 07:29:55 +0000
+++ b/storage/ndb/test/sql/test_create_drop.pl	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 use strict;
 use IO::Socket;
 use DBI;

=== modified file 'storage/ndb/test/sql/test_range_bounds.pl'
--- a/storage/ndb/test/sql/test_range_bounds.pl	2005-10-07 07:29:55 +0000
+++ b/storage/ndb/test/sql/test_range_bounds.pl	2011-01-30 20:42:21 +0000
@@ -1,3 +1,18 @@
+# Copyright (C) 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 #
 # test range scan bounds
 # give option --all to test all cases

=== modified file 'storage/ndb/test/tools/log_listner.cpp'
--- a/storage/ndb/test/tools/log_listner.cpp	2010-08-11 10:21:17 +0000
+++ b/storage/ndb/test/tools/log_listner.cpp	2011-01-30 20:56:00 +0000
@@ -1,3 +1,20 @@
+/*
+   Copyright (c) 2007, 2010, 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
+   the Free Software Foundation; version 2 of the License.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+*/
+
 #include <mgmapi.h>
 #include <ndb_global.h>
 #include <ndb_opts.h>

=== modified file 'storage/ndb/tools/clean-links.sh'
--- a/storage/ndb/tools/clean-links.sh	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/tools/clean-links.sh	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #! /bin/sh
 
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # 1 - Dir
 # 2 - Link dst
 

=== modified file 'storage/ndb/tools/make-errors.pl'
--- a/storage/ndb/tools/make-errors.pl	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/tools/make-errors.pl	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #! /usr/local/bin/perl
 
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 use strict;
 use Getopt::Long;
 use XML::Parser;

=== modified file 'storage/ndb/tools/make-links.sh'
--- a/storage/ndb/tools/make-links.sh	2005-04-27 01:19:54 +0000
+++ b/storage/ndb/tools/make-links.sh	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #! /bin/sh
 
+# Copyright (C) 2003, 2005 MySQL AB
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 # 1 - Link top src
 # 2 - Link dst
 

=== modified file 'storage/ndb/tools/ndb_error_reporter'
--- a/storage/ndb/tools/ndb_error_reporter	2009-02-12 08:29:00 +0000
+++ b/storage/ndb/tools/ndb_error_reporter	2011-01-30 20:42:21 +0000
@@ -1,5 +1,20 @@
 #!/usr/bin/perl -w
 
+# Copyright (C) 2006, 2007 MySQL AB, 2009 Sun Microsystems, Inc.
+#
+# 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
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
+
 use strict;
 
 if(@ARGV < 1)

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-5.5-telco-7.0 branch (magnus.blaudd:3164 to 3168) Magnus Blåudd2 Feb