List:Internals« Previous MessageNext Message »
From:monty Date:October 27 2005 2:15pm
Subject:bk commit into 5.0 tree (monty:1.2025)
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of monty. When monty 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
  1.2025 05/10/27 15:15:01 monty@stripped +6 -0
  Fixes during review of pushed code
  Added back missing return in mysql_delete()

  sql/sql_delete.cc
    1.167 05/10/27 15:13:53 monty@stripped +5 -3
    Add back missing RETURN (was lost in a merge)
    Indentation fixes

  sql/log_event.h
    1.122 05/10/27 15:13:52 monty@stripped +2 -3
    Remove number from last even to help future merges
    (all compilers I know of can handle this properly)

  sql/log.cc
    1.180 05/10/27 15:13:52 monty@stripped +4 -4
    false -> FALSE
    true -> TRUE
    Wait until readers_count is 0 (not just for a signal)
    
    NOTE: it's very likely that the way to handle readers_count is wrong.
    (We are in pthread_cond_wait freeing a mutex that is not the innermost mutex,
    which can lead to deadlocks)
    
    I will talk with Guilhem about this ASAP

  mysql-test/t/drop_temp_table.test
    1.8 05/10/27 15:13:52 monty@stripped +4 -0
    Delete database that may be left from other test

  mysql-test/r/drop_temp_table.result
    1.16 05/10/27 15:13:52 monty@stripped +1 -0
    Delete database that may be left from other test

  mysql-test/my_manage.c
    1.10 05/10/27 15:13:52 monty@stripped +10 -13
    Cleanup: Remove some #ifdef

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	monty
# Host:	narttu.mysql.fi
# Root:	/home/my/mysql-5.0

--- 1.179/sql/log.cc	2005-10-17 18:36:06 +03:00
+++ 1.180/sql/log.cc	2005-10-27 15:13:52 +03:00
@@ -358,7 +358,7 @@
   :bytes_written(0), last_time(0), query_start(0), name(0),
    file_id(1), open_count(1), log_type(LOG_CLOSED), write_error(0), inited(0),
    need_start_event(1), prepared_xids(0), description_event_for_exec(0),
-   description_event_for_queue(0), readers_count(0), reset_pending(false)
+   description_event_for_queue(0), readers_count(0), reset_pending(FALSE)
 {
   /*
     We don't want to initialize LOCK_Log here as such initialization depends on
@@ -965,7 +965,7 @@
     goto err;
   }
 
-  reset_pending= true;
+  reset_pending= TRUE;
   /* 
     send update signal just in case so that all reader threads waiting
     for log update will leave wait condition
@@ -975,7 +975,7 @@
     if there are active readers wait until all of them will 
     release opened files 
   */
-  if (readers_count)
+  while (readers_count)
     pthread_cond_wait(&reset_cond, &LOCK_log);
 
   for (;;)
@@ -996,7 +996,7 @@
   my_free((gptr) save_name, MYF(0));
 
 err:
-  reset_pending= false;
+  reset_pending= FALSE;
 
   (void) pthread_mutex_unlock(&LOCK_thread_count);
   pthread_mutex_unlock(&LOCK_readers);

--- 1.121/sql/log_event.h	2005-10-25 01:23:06 +03:00
+++ 1.122/sql/log_event.h	2005-10-27 15:13:52 +03:00
@@ -430,11 +430,10 @@
 
   /*
     Add new events here - right above this comment!
-    And change the ENUM_END_EVENT_MARKER below.
-    Existing events should never change their numbers
+    Existing events (except ENUM_END_EVENT) should never change their numbers
   */
 
-  ENUM_END_EVENT= 19 /* end marker */
+  ENUM_END_EVENT /* end marker */
 };
 
 /*

--- 1.166/sql/sql_delete.cc	2005-10-19 11:41:23 +03:00
+++ 1.167/sql/sql_delete.cc	2005-10-27 15:13:53 +03:00
@@ -158,14 +158,16 @@
       table->sort.io_cache= (IO_CACHE *) my_malloc(sizeof(IO_CACHE),
                                                    MYF(MY_FAE | MY_ZEROFILL));
     
-      if ( !(sortorder=make_unireg_sortorder((ORDER*) order->first, &length)) ||
+      if (!(sortorder= make_unireg_sortorder((ORDER*) order->first,
+                                             &length)) ||
 	  (table->sort.found_records = filesort(thd, table, sortorder, length,
-					   select, HA_POS_ERROR,
-					   &examined_rows))
+                                                select, HA_POS_ERROR,
+                                                &examined_rows))
 	  == HA_POS_ERROR)
       {
         delete select;
         free_underlaid_joins(thd, &thd->lex->select_lex);
+        DBUG_RETURN(TRUE);
       }
       /*
         Filesort has already found and selected the rows we want to delete,

--- 1.15/mysql-test/r/drop_temp_table.result	2005-03-02 18:52:25 +02:00
+++ 1.16/mysql-test/r/drop_temp_table.result	2005-10-27 15:13:52 +03:00
@@ -1,3 +1,4 @@
+drop database if exists `drop-temp+table-test`;
 reset master;
 create database `drop-temp+table-test`;
 use `drop-temp+table-test`;

--- 1.7/mysql-test/t/drop_temp_table.test	2005-09-15 17:17:12 +03:00
+++ 1.8/mysql-test/t/drop_temp_table.test	2005-10-27 15:13:52 +03:00
@@ -1,6 +1,10 @@
 # Embedded server doesn't support binlog
 -- source include/not_embedded.inc
 
+--disable_warnings
+drop database if exists `drop-temp+table-test`;
+--enable_warnings
+
 connect (con1,localhost,root,,);
 connect (con2,localhost,root,,);
 connection con1;

--- 1.9/mysql-test/my_manage.c	2005-10-19 23:43:40 +03:00
+++ 1.10/mysql-test/my_manage.c	2005-10-27 15:13:52 +03:00
@@ -231,9 +231,6 @@
 {
   arg_list_t al;
   int err= 0;
-#ifndef __WIN__
-  int i;
-#endif
   char trash[FN_REFLEN];
 
   /* mysqladmin file */
@@ -247,16 +244,11 @@
   add_arg(&al, "--user=%s", user);
   add_arg(&al, "--password=%s", password);
   add_arg(&al, "--silent");
+  add_arg(&al, "--host=localhost");
 
-/* #ifdef NOT_USED */
 #ifndef __NETWARE__
-  add_arg(&al, "-O");
-  add_arg(&al, "connect_timeout=10");
+  add_arg(&al, "--connect_timeout=10");
   add_arg(&al, "-w");
-#endif
-
-  add_arg(&al, "--host=localhost");
-#ifndef __NETWARE__
   add_arg(&al, "--protocol=tcp");
 #endif
   add_arg(&al, "ping");
@@ -266,9 +258,14 @@
     -- we will try the ping multiple times
   */
 #ifndef __WIN__
-  for (i= 0; (i < TRY_MAX)
-         && (err= spawn(mysqladmin_file, &al, TRUE, NULL,
-                        trash, NULL, NULL)); i++) sleep(1);
+  {
+    int i;
+    for (i= 0;
+         (i < TRY_MAX) && (err= spawn(mysqladmin_file, &al, TRUE, NULL,
+                                      trash, NULL, NULL));
+         i++)
+      sleep(1);
+  }
 #else
   err= spawn(mysqladmin_file, &al, TRUE, NULL,trash, NULL, NULL);
 #endif
Thread
bk commit into 5.0 tree (monty:1.2025)monty27 Oct