List:Commits« Previous MessageNext Message »
From:damien Date:June 12 2007 10:12pm
Subject:bk commit into 5.0 tree (dkatz:1.2533) BUG#28897
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of dkatz. When dkatz 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-06-12 16:12:47-04:00, dkatz@stripped +4 -0
  Bug #28897  	UUID() returns non-unique values when query cache is enabled
  
  Changed UUID() from non-special function in lex.h to a special one parsed by sql_yacc.yy
and set Lex->safe_to_cache_query to 0. 

  sql/item_create.cc@stripped, 2007-06-12 16:12:44-04:00, dkatz@stripped +0
-5
    removed uncalled code

  sql/item_create.h@stripped, 2007-06-12 16:12:44-04:00, dkatz@stripped +0
-1
    removed uncalled code

  sql/lex.h@stripped, 2007-06-12 16:12:44-04:00, dkatz@stripped +1 -1
    Changed UUID from a non-special, lex function to instead use a rule in sql_yacc.yy

  sql/sql_yacc.yy@stripped, 2007-06-12 16:12:45-04:00, dkatz@stripped +3
-0
    Changed UUID from a non-special, lex function to instead use a rule in sql_yacc.yy and
set Lex->safe_to_cache_query to false.

# 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:	dkatz
# Host:	damien-katzs-computer.local
# Root:	/Users/dkatz/50_win

--- 1.63/sql/item_create.cc	2007-05-09 15:17:20 -04:00
+++ 1.64/sql/item_create.cc	2007-06-12 16:12:44 -04:00
@@ -416,11 +416,6 @@ Item *create_func_unhex(Item* a)
   return new Item_func_unhex(a);
 }
 
-Item *create_func_uuid(void)
-{
-  return new Item_func_uuid();
-}
-
 Item *create_func_version(void)
 {
   return new Item_static_string_func("version()", server_version,

--- 1.47/sql/item_create.h	2007-05-09 15:17:20 -04:00
+++ 1.48/sql/item_create.h	2007-06-12 16:12:44 -04:00
@@ -94,7 +94,6 @@ Item *create_func_time_to_sec(Item* a);
 Item *create_func_to_days(Item* a);
 Item *create_func_ucase(Item* a);
 Item *create_func_unhex(Item* a);
-Item *create_func_uuid(void);
 Item *create_func_version(void);
 Item *create_func_weekday(Item* a);
 Item *create_load_file(Item* a);

--- 1.146/sql/lex.h	2007-03-08 04:04:41 -05:00
+++ 1.147/sql/lex.h	2007-06-12 16:12:44 -04:00
@@ -762,7 +762,7 @@ static SYMBOL sql_functions[] = {
   { "UNIQUE_USERS",	SYM(UNIQUE_USERS)},
   { "UNIX_TIMESTAMP",	SYM(UNIX_TIMESTAMP)},
   { "UPPER",		F_SYM(FUNC_ARG1),0,CREATE_FUNC(create_func_ucase)},
-  { "UUID",		F_SYM(FUNC_ARG0),0,CREATE_FUNC(create_func_uuid)},
+  { "UUID",		F_SYM(UUID_SYM)},
   { "VARIANCE",		SYM(VARIANCE_SYM)},
   { "VAR_POP",		SYM(VARIANCE_SYM)},
   { "VAR_SAMP",		SYM(VAR_SAMP_SYM)},

--- 1.522/sql/sql_yacc.yy	2007-06-05 17:04:34 -04:00
+++ 1.523/sql/sql_yacc.yy	2007-06-12 16:12:45 -04:00
@@ -982,6 +982,7 @@ bool my_yyoverflow(short **a, YYSTYPE **
 %token  UTC_DATE_SYM
 %token  UTC_TIMESTAMP_SYM
 %token  UTC_TIME_SYM
+%token  UUID_SYM
 %token  VAR_SAMP_SYM
 %token  VALUES
 %token  VALUE_SYM
@@ -5172,6 +5173,8 @@ simple_expr:
 	  { $$= new Item_func_curtime_utc(); Lex->safe_to_cache_query=0;}
 	| UTC_TIMESTAMP_SYM optional_braces
 	  { $$= new Item_func_now_utc(); Lex->safe_to_cache_query=0;}
+	| UUID_SYM optional_braces
+	  { $$= new Item_func_uuid(); Lex->safe_to_cache_query=0;}
 	| WEEK_SYM '(' expr ')'
 	  {
             $$= new Item_func_week($3,new Item_int((char*) "0",
Thread
bk commit into 5.0 tree (dkatz:1.2533) BUG#28897damien12 Jun