List:Commits« Previous MessageNext Message »
From:antony Date:July 19 2007 11:50pm
Subject:bk commit into 5.1 tree (acurtis:1.2557)
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of antony. When antony does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-07-19 16:50:30-07:00, acurtis@stripped +4 -0
  post import and merge fixups for InnoBase.

  mysql-test/t/innodb_trx_weight.test@stripped, 2007-07-19 16:50:26-07:00, acurtis@stripped +8 -0
    post import fixes
      this test doesn't work when using other protocols

  sql/ha_partition.cc@stripped, 2007-07-19 16:50:26-07:00, acurtis@stripped +1 -0
    first_value_part was uninitialized so initialize it to the first_value used 
    by the caller.

  storage/innobase/handler/ha_innodb.cc@stripped, 2007-07-19 16:50:26-07:00, acurtis@stripped +2 -9
    post import fixes
      no need for int_table_flags
      don't decrement trx->n_autoinc_rows if it is already zero. 

  storage/innobase/handler/ha_innodb.h@stripped, 2007-07-19 16:50:26-07:00, acurtis@stripped +12 -2
    post import fixes
      no need for int_table_flags
    merge fixups
      table_flags() return type is Table_flags and return constant value.

diff -Nrup a/mysql-test/t/innodb_trx_weight.test b/mysql-test/t/innodb_trx_weight.test
--- a/mysql-test/t/innodb_trx_weight.test	2007-07-18 18:10:26 -07:00
+++ b/mysql-test/t/innodb_trx_weight.test	2007-07-19 16:50:26 -07:00
@@ -8,6 +8,14 @@
 
 -- source include/have_innodb.inc
 
+# The file with expected results fits only to a run without
+# ps-protocol/sp-protocol/cursor-protocol/view-protocol.
+if (`SELECT $PS_PROTOCOL + $SP_PROTOCOL + $CURSOR_PROTOCOL
+            + $VIEW_PROTOCOL > 0`)
+{
+   --skip Test requires: ps-protocol/sp-protocol/cursor-protocol/view-protocol disabled
+}
+
 SET storage_engine=InnoDB;
 
 # we do not really care about what gets output-ed, we are only
diff -Nrup a/sql/ha_partition.cc b/sql/ha_partition.cc
--- a/sql/ha_partition.cc	2007-07-04 12:55:21 -07:00
+++ b/sql/ha_partition.cc	2007-07-19 16:50:26 -07:00
@@ -5432,6 +5432,7 @@ void ha_partition::get_auto_increment(ul
 
   for (pos=m_file, end= m_file+ m_tot_parts; pos != end ; pos++)
   {
+    first_value_part= *first_value;
     (*pos)->get_auto_increment(offset, increment, nb_desired_values,
                                &first_value_part, &nb_reserved_values_part);
     if (first_value_part == ~(ulonglong)(0)) // error in one partition
diff -Nrup a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
--- a/storage/innobase/handler/ha_innodb.cc	2007-07-18 18:10:22 -07:00
+++ b/storage/innobase/handler/ha_innodb.cc	2007-07-19 16:50:26 -07:00
@@ -970,14 +970,6 @@ Construct ha_innobase handler. */
 
 ha_innobase::ha_innobase(handlerton *hton, TABLE_SHARE *table_arg)
   :handler(hton, table_arg),
-  int_table_flags(HA_REC_NOT_IN_SEQ |
-		  HA_NULL_IN_KEY |
-		  HA_CAN_INDEX_BLOBS |
-		  HA_CAN_SQL_HANDLER |
-		  HA_PRIMARY_KEY_REQUIRED_FOR_POSITION |
-		  HA_PRIMARY_KEY_IN_READ_INDEX |
-		  HA_CAN_GEOMETRY | HA_PARTIAL_COLUMN_READ |
-		  HA_TABLE_SCAN_ON_INDEX),
   start_of_scan(0),
   num_write_row(0)
 {}
@@ -3556,7 +3548,8 @@ no_commit:
 		by get_auto_increment() to determine the number of AUTO-INC
 		values to reserve. This is only useful for a mult-value INSERT
 		and is a statement level counter.*/
-		--trx->n_autoinc_rows;
+		if (trx->n_autoinc_rows)
+			--trx->n_autoinc_rows;
 
 		/* Get the value that MySQL attemted to store in the table.*/
 		auto_inc = table->next_number_field->val_int();
diff -Nrup a/storage/innobase/handler/ha_innodb.h b/storage/innobase/handler/ha_innodb.h
--- a/storage/innobase/handler/ha_innodb.h	2007-07-18 18:10:22 -07:00
+++ b/storage/innobase/handler/ha_innodb.h	2007-07-19 16:50:26 -07:00
@@ -57,7 +57,6 @@ class ha_innobase: public handler
 	ulong		upd_and_key_val_buff_len;
 					/* the length of each of the previous
 					two buffers */
-	ulong		int_table_flags;
 	uint		primary_key;
 	ulong		start_of_scan;	/* this is set to 1 when we are
 					starting a table scan but have not
@@ -92,7 +91,18 @@ class ha_innobase: public handler
 	const char* table_type() const { return("InnoDB");}
 	const char *index_type(uint key_number) { return "BTREE"; }
 	const char** bas_ext() const;
-	ulonglong table_flags() const { return int_table_flags; }
+	Table_flags table_flags() const
+	{
+	  return (HA_REC_NOT_IN_SEQ |
+		  HA_NULL_IN_KEY |
+		  HA_CAN_INDEX_BLOBS |
+		  HA_CAN_SQL_HANDLER |
+		  HA_PRIMARY_KEY_REQUIRED_FOR_POSITION |
+		  HA_PRIMARY_KEY_IN_READ_INDEX |
+		  HA_BINLOG_ROW_CAPABLE | HA_BINLOG_STMT_CAPABLE |
+		  HA_CAN_GEOMETRY | HA_PARTIAL_COLUMN_READ |
+		  HA_TABLE_SCAN_ON_INDEX);
+	}
 	ulong index_flags(uint idx, uint part, bool all_parts) const
 	{
 	  return (HA_READ_NEXT |
Thread
bk commit into 5.1 tree (acurtis:1.2557)antony20 Jul