MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Sergey Petrunia Date:July 17 2008 6:27pm
Subject:bzr commit into mysql-5.1 branch (sergefp:2701) Bug#35478
View as plain text  
#At file:///home/psergey/dev/mysql-5.1-bugteam-two/

 2701 Sergey Petrunia	2008-07-17 [merge]
      Merge BUG#35478 into mysql-5.1-bugteam
modified:
  mysql-test/include/query_prealloc_size_basic.inc
  mysql-test/r/query_prealloc_size_basic_32.result
  mysql-test/r/query_prealloc_size_basic_64.result
  sql/item_cmpfunc.cc
  sql/opt_range.cc

=== modified file 'mysql-test/include/query_prealloc_size_basic.inc'
--- a/mysql-test/include/query_prealloc_size_basic.inc	2008-05-08 18:13:39 +0000
+++ b/mysql-test/include/query_prealloc_size_basic.inc	2008-07-17 09:03:17 +0000
@@ -1,32 +1,35 @@
-############## mysql-test\t\query_prealloc_size_basic.test ###############
-#                                                                             #
-# Variable Name: query_prealloc_size                                          #
-# Scope: GLOBAL | SESSION                                                     #
-# Access Type: Dynamic                                                        #
-# Data Type: numeric                                                          #
-# Default Value:  8192                                                        #
-# Range:  8192-4294967295                                                     #
-#                                                                             #
-#                                                                             #
-# Creation Date: 2008-02-07                                                   #
-# Author:  Rizwan                                                             #
-#                                                                             #
-# Description: Test Cases of Dynamic System Variable query_prealloc_size      #
-#              that checks the behavior of this variable in the following ways#
-#              * Default Value                                                #
-#              * Valid & Invalid values                                       #
-#              * Scope & Access method                                        #
-#              * Data Integrity                                               #
-#                                                                             #
-# Reference: http://dev.mysql.com/doc/refman/5.1/en/                          #
-#  server-system-variables.html                                               #
-#                                                                             #
-###############################################################################
+################# mysql-test\t\query_prealloc_size_basic.test ##################
+#                                                                              #
+# Variable Name: query_prealloc_size                                           #
+# Scope: GLOBAL | SESSION                                                      #
+# Access Type: Dynamic                                                         #
+# Data Type: numeric                                                           #
+# Default Value:  8192                                                         #
+# Range:  8192-4294967295                                                      #
+#                                                                              #
+#                                                                              #
+# Creation Date: 2008-02-07                                                    #
+# Author:  Rizwan                                                              #
+#                                                                              #
+# Description: Test Cases of Dynamic System Variable query_prealloc_size       #
+#              that checks the behavior of this variable in the following ways #
+#              * Default Value                                                 #
+#              * Valid & Invalid values                                        #
+#              * Scope & Access method                                         #
+#              * Data Integrity                                                #
+#                                                                              #
+# Reference:                                                                   #
+#      http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html     #
+#                                                                              #
+# Last Modification:                                                           #
+# 2008-07-14 hhunger removed values for 64 bit platforms.                      #
+#                                                                              #
+################################################################################
 
 --source include/load_sysvars.inc
 
 ########################################################################
-#           START OF query_prealloc_size   TESTS                    #
+#              START OF query_prealloc_size   TESTS                    #
 ########################################################################
 
 
@@ -42,7 +45,7 @@ SELECT @start_session_value;
 
 --echo '#--------------------FN_DYNVARS_005_01-------------------------#'
 ########################################################################
-#     Display the DEFAULT value of myisam_block_size            #
+#            Display the DEFAULT value of myisam_block_size            #
 ########################################################################
 
 SET @@global.query_prealloc_size   = 100;
@@ -56,7 +59,7 @@ SELECT @@session.query_prealloc_size  ;
 
 --echo '#--------------------FN_DYNVARS_005_02-------------------------#'
 ########################################################################
-#     Check the DEFAULT value of query_prealloc_size                #
+#        Check the DEFAULT value of query_prealloc_size                #
 ########################################################################
 
 SET @@global.query_prealloc_size   = DEFAULT;
@@ -67,30 +70,32 @@ SELECT @@session.query_prealloc_size   =
 
 
 --echo '#--------------------FN_DYNVARS_005_03-------------------------#'
-##################################################################################
-# Change the value of query_prealloc_size   to a valid value for GLOBAL Scope #
-##################################################################################
+################################################################################
+# Change the value of query_prealloc_size   to a valid value for GLOBAL Scope  #
+################################################################################
 
 SET @@global.query_prealloc_size   = 8192;
 SELECT @@global.query_prealloc_size  ;
 
-SET @@global.query_prealloc_size   = 4294967295;
-SELECT @@global.query_prealloc_size  ;
+# Due to problems with 64 bit machines having less than 6 GB main memory.
+#SET @@global.query_prealloc_size   = 4294967295;
+#SELECT @@global.query_prealloc_size  ;
 
 SET @@global.query_prealloc_size   = 655354;
 SELECT @@global.query_prealloc_size  ;
 
 
 --echo '#--------------------FN_DYNVARS_005_04-------------------------#'
-###################################################################################
-# Change the value of query_prealloc_size   to a valid value for SESSION Scope #
-###################################################################################
- 
+##################################################################################
+# Change the value of query_prealloc_size   to a valid value for SESSION Scope   #
+##################################################################################
+
 SET @@session.query_prealloc_size   = 8192;
 SELECT @@session.query_prealloc_size  ;
 
-SET @@session.query_prealloc_size   = 4294967295;
-SELECT @@session.query_prealloc_size  ;
+# Due to problems with 64 bit machines having less than 6 GB main memory.
+#SET @@session.query_prealloc_size   = 4294967295;
+#SELECT @@session.query_prealloc_size  ;
 
 SET @@session.query_prealloc_size   = 655345;
 SELECT @@session.query_prealloc_size  ;
@@ -100,7 +105,7 @@ SELECT @@session.query_prealloc_size  ;
 
 --echo '#------------------FN_DYNVARS_005_05-----------------------#'
 ####################################################################
-# Change the value of query_prealloc_size   to an invalid value #
+#  Change the value of query_prealloc_size   to an invalid value   #
 ####################################################################
 
 SET @@global.query_prealloc_size   = 0;
@@ -109,8 +114,9 @@ SELECT @@global.query_prealloc_size  ;
 SET @@global.query_prealloc_size   = -1024;
 SELECT @@global.query_prealloc_size  ;
 
-SET @@global.query_prealloc_size   = 429496729533;
-SELECT @@global.query_prealloc_size  ;
+# Due to problems with 64 bit machines having less than 6 GB main memory.
+#SET @@global.query_prealloc_size   = 429496729533;
+#SELECT @@global.query_prealloc_size  ;
 
 
 --Error ER_PARSE_ERROR
@@ -161,8 +167,8 @@ SELECT @@session.query_prealloc_size  ;
 ####################################################################
 
 
-SELECT @@global.query_prealloc_size   = VARIABLE_VALUE 
-FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES 
+SELECT @@global.query_prealloc_size   = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
 WHERE VARIABLE_NAME='query_prealloc_size  ';
 
 --echo '#------------------FN_DYNVARS_005_07-----------------------#'
@@ -170,8 +176,8 @@ WHERE VARIABLE_NAME='query_prealloc_size
 #  Check if the value in SESSION Table matches value in variable   #
 ####################################################################
 
-SELECT @@session.query_prealloc_size   = VARIABLE_VALUE 
-FROM INFORMATION_SCHEMA.SESSION_VARIABLES 
+SELECT @@session.query_prealloc_size   = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
 WHERE VARIABLE_NAME='query_prealloc_size  ';
 
 
@@ -188,18 +194,19 @@ SELECT @@global.query_prealloc_size  ;
 
 
 --echo '#---------------------FN_DYNVARS_001_09----------------------#'
-#################################################################################### 
-#  Check if accessing variable with and without GLOBAL point to same variable   #
-#################################################################################### 
+################################################################################
+# Check if accessing variable with and without GLOBAL point to same variable   #
+################################################################################
 
 SET @@global.query_prealloc_size   = 10;
 SELECT @@query_prealloc_size   = @@global.query_prealloc_size  ;
 
 
 --echo '#---------------------FN_DYNVARS_001_10----------------------#'
-########################################################################################################
-#    Check if accessing variable with SESSION,LOCAL and without SCOPE points to same session variable  #
-########################################################################################################
+##############################################################################
+# Check if accessing variable with SESSION,LOCAL and without SCOPE points to #
+# to the same session variable                                               #
+##############################################################################
 
 SET @@query_prealloc_size   = 100;
 SELECT @@query_prealloc_size   = @@local.query_prealloc_size  ;
@@ -207,9 +214,9 @@ SELECT @@local.query_prealloc_size   = @
 
 
 --echo '#---------------------FN_DYNVARS_001_11----------------------#'
-###################################################################################  
-#   Check if query_prealloc_size   can be accessed with and without @@ sign    #
-###################################################################################
+################################################################################
+#    Check if query_prealloc_size   can be accessed with and without @@ sign   #
+################################################################################
 
 SET query_prealloc_size   = 1;
 SELECT @@query_prealloc_size  ;
@@ -235,5 +242,6 @@ SELECT @@session.query_prealloc_size  ;
 
 
 #############################################################
-#                 END OF query_prealloc_size   TESTS     #
+#                 END OF query_prealloc_size   TESTS        #
 #############################################################
+

=== modified file 'mysql-test/r/query_prealloc_size_basic_32.result'
--- a/mysql-test/r/query_prealloc_size_basic_32.result	2008-05-08 18:13:39 +0000
+++ b/mysql-test/r/query_prealloc_size_basic_32.result	2008-07-17 09:03:17 +0000
@@ -35,10 +35,6 @@ SET @@global.query_prealloc_size   = 819
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
 8192
-SET @@global.query_prealloc_size   = 4294967295;
-SELECT @@global.query_prealloc_size  ;
-@@global.query_prealloc_size
-4294966272
 SET @@global.query_prealloc_size   = 655354;
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
@@ -48,10 +44,6 @@ SET @@session.query_prealloc_size   = 81
 SELECT @@session.query_prealloc_size  ;
 @@session.query_prealloc_size
 8192
-SET @@session.query_prealloc_size   = 4294967295;
-SELECT @@session.query_prealloc_size  ;
-@@session.query_prealloc_size
-4294966272
 SET @@session.query_prealloc_size   = 655345;
 SELECT @@session.query_prealloc_size  ;
 @@session.query_prealloc_size
@@ -69,37 +61,31 @@ Warning	1292	Truncated incorrect query_p
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
 8192
-SET @@global.query_prealloc_size   = 429496729533;
-Warnings:
-Warning	1292	Truncated incorrect query_prealloc_size value: '429496729533'
-SELECT @@global.query_prealloc_size  ;
-@@global.query_prealloc_size
-4294966272
 SET @@global.query_prealloc_size   = 65530.34.;
 ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-4294966272
+8192
 SET @@global.query_prealloc_size   = test;
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-4294966272
+8192
 SET @@global.query_prealloc_size   = "test";
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-4294966272
+8192
 SET @@global.query_prealloc_size   = 'test';
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-4294966272
+8192
 SET @@global.query_prealloc_size   = ON;
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-4294966272
+8192
 SET @@session.query_prealloc_size   = 0;
 Warnings:
 Warning	1292	Truncated incorrect query_prealloc_size value: '0'
@@ -128,14 +114,14 @@ SELECT @@session.query_prealloc_size  ;
 @@session.query_prealloc_size
 8192
 '#------------------FN_DYNVARS_005_06-----------------------#'
-SELECT @@global.query_prealloc_size   = VARIABLE_VALUE 
-FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES 
+SELECT @@global.query_prealloc_size   = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
 WHERE VARIABLE_NAME='query_prealloc_size  ';
 @@global.query_prealloc_size   = VARIABLE_VALUE
 1
 '#------------------FN_DYNVARS_005_07-----------------------#'
-SELECT @@session.query_prealloc_size   = VARIABLE_VALUE 
-FROM INFORMATION_SCHEMA.SESSION_VARIABLES 
+SELECT @@session.query_prealloc_size   = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
 WHERE VARIABLE_NAME='query_prealloc_size  ';
 @@session.query_prealloc_size   = VARIABLE_VALUE
 1

=== modified file 'mysql-test/r/query_prealloc_size_basic_64.result'
--- a/mysql-test/r/query_prealloc_size_basic_64.result	2008-05-08 18:13:39 +0000
+++ b/mysql-test/r/query_prealloc_size_basic_64.result	2008-07-17 09:03:17 +0000
@@ -35,10 +35,6 @@ SET @@global.query_prealloc_size   = 819
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
 8192
-SET @@global.query_prealloc_size   = 4294967295;
-SELECT @@global.query_prealloc_size  ;
-@@global.query_prealloc_size
-4294966272
 SET @@global.query_prealloc_size   = 655354;
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
@@ -48,10 +44,6 @@ SET @@session.query_prealloc_size   = 81
 SELECT @@session.query_prealloc_size  ;
 @@session.query_prealloc_size
 8192
-SET @@session.query_prealloc_size   = 4294967295;
-SELECT @@session.query_prealloc_size  ;
-@@session.query_prealloc_size
-4294966272
 SET @@session.query_prealloc_size   = 655345;
 SELECT @@session.query_prealloc_size  ;
 @@session.query_prealloc_size
@@ -69,35 +61,31 @@ Warning	1292	Truncated incorrect query_p
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
 8192
-SET @@global.query_prealloc_size   = 429496729533;
-SELECT @@global.query_prealloc_size  ;
-@@global.query_prealloc_size
-429496728576
 SET @@global.query_prealloc_size   = 65530.34.;
 ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-429496728576
+8192
 SET @@global.query_prealloc_size   = test;
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-429496728576
+8192
 SET @@global.query_prealloc_size   = "test";
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-429496728576
+8192
 SET @@global.query_prealloc_size   = 'test';
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-429496728576
+8192
 SET @@global.query_prealloc_size   = ON;
 ERROR 42000: Incorrect argument type to variable 'query_prealloc_size'
 SELECT @@global.query_prealloc_size  ;
 @@global.query_prealloc_size
-429496728576
+8192
 SET @@session.query_prealloc_size   = 0;
 Warnings:
 Warning	1292	Truncated incorrect query_prealloc_size value: '0'
@@ -126,14 +114,14 @@ SELECT @@session.query_prealloc_size  ;
 @@session.query_prealloc_size
 8192
 '#------------------FN_DYNVARS_005_06-----------------------#'
-SELECT @@global.query_prealloc_size   = VARIABLE_VALUE 
-FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES 
+SELECT @@global.query_prealloc_size   = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
 WHERE VARIABLE_NAME='query_prealloc_size  ';
 @@global.query_prealloc_size   = VARIABLE_VALUE
 1
 '#------------------FN_DYNVARS_005_07-----------------------#'
-SELECT @@session.query_prealloc_size   = VARIABLE_VALUE 
-FROM INFORMATION_SCHEMA.SESSION_VARIABLES 
+SELECT @@session.query_prealloc_size   = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
 WHERE VARIABLE_NAME='query_prealloc_size  ';
 @@session.query_prealloc_size   = VARIABLE_VALUE
 1

=== modified file 'sql/item_cmpfunc.cc'
--- a/sql/item_cmpfunc.cc	2008-07-14 09:06:49 +0000
+++ b/sql/item_cmpfunc.cc	2008-07-15 12:12:08 +0000
@@ -3758,8 +3758,6 @@ longlong Item_func_in::val_int()
     return (longlong) (!null_value && tmp != negated);
   }
 
-  if ((null_value= args[0]->null_value))
-    return 0;
   have_null= 0;
   for (uint i= 1 ; i < arg_count ; i++)
   {
@@ -3769,6 +3767,8 @@ longlong Item_func_in::val_int()
     if (!(value_added_map & (1 << (uint)cmp_type)))
     {
       in_item->store_value(args[0]);
+      if ((null_value= args[0]->null_value))
+        return 0;
       value_added_map|= 1 << (uint)cmp_type;
     }
     if (!in_item->cmp(args[i]) && !args[i]->null_value)

=== modified file 'sql/opt_range.cc'
--- a/sql/opt_range.cc	2008-07-15 17:46:02 +0000
+++ b/sql/opt_range.cc	2008-07-17 18:26:55 +0000
@@ -7936,7 +7936,7 @@ int QUICK_INDEX_MERGE_SELECT::read_keys_
   handler *file= head->file;
   DBUG_ENTER("QUICK_INDEX_MERGE_SELECT::read_keys_and_merge");
 
-
+  /* We're going to just read rowids. */
   file->extra(HA_EXTRA_KEYREAD);
   head->prepare_for_position();
 

Thread
bzr commit into mysql-5.1 branch (sergefp:2701) Bug#35478Sergey Petrunia17 Jul