An error occurred fetching the project authors.
  1. 09 Jan, 2007 1 commit
    • evgen@moonbone.local's avatar
      Fixed bug#16861: User defined variable can have a wrong value if a tmp table was · e098f736
      evgen@moonbone.local authored
      used.
      
      The Item::save_in_field() function is called from fill_record() to fill the 
      new row with data while execution of the CREATE TABLE ... SELECT statement.
      Item::save_in_field() calls val_xxx() methods in order to get values.
      val_xxx() methods do not take into account the result field. Due to this
      Item_func_set_user_var::val_xxx() methods returns values from the original
      table, not from the temporary one.
      
      The save_in_field() member function is added to the Item_func_set_user_var
      class. It detects whether the result field should be used and properly updates
      the value of the user variable.
      e098f736
  2. 04 Oct, 2006 1 commit
  3. 13 Sep, 2006 1 commit
  4. 12 Sep, 2006 1 commit
  5. 08 Sep, 2006 1 commit
  6. 22 Aug, 2006 1 commit
    • evgen@sunlight.local's avatar
      Fixed bug#16861: User defined variable can have a wrong value if a tmp table was · f17a536e
      evgen@sunlight.local authored
      used.
      
      Sorting by RAND() uses a temporary table in order to get a correct results.
      User defined variable was set during filling the temporary table and later
      on it is substituted for its value from the temporary table. Due to this
      it contains the last value stored in the temporary table.
      
      Now if the result_field is set for the Item_func_set_user_var object it 
      updates variable from the result_field value when being sent to a client.
      
      The Item_func_set_user_var::check() now accepts a use_result_field
      parameter. Depending on its value the result_field or the args[0] is used
      to get current value.
      f17a536e
  7. 09 Jun, 2006 1 commit
  8. 27 Apr, 2006 1 commit
  9. 01 Nov, 2005 1 commit
  10. 02 Aug, 2005 1 commit
  11. 25 Jul, 2005 1 commit
  12. 18 May, 2005 1 commit
  13. 30 Apr, 2005 1 commit
  14. 06 Apr, 2005 2 commits
  15. 30 Mar, 2005 1 commit
  16. 28 Mar, 2005 1 commit
  17. 16 Mar, 2005 1 commit
    • dlenev@brandersnatch.localdomain's avatar
      WL#874 "Extended LOAD DATA". · f1691140
      dlenev@brandersnatch.localdomain authored
      Now one can use user variables as target for data loaded from file
      (besides table's columns). Also LOAD DATA got new SET-clause in which
      one can specify values for table columns as expressions.
      
      For example the following is possible:
      LOAD DATA INFILE 'words.dat' INTO TABLE t1 (a, @b) SET c = @b + 1;
      
      This patch also implements new way of replicating LOAD DATA.
      Now we do it similarly to other queries.
      We store LOAD DATA query in new Execute_load_query event
      (which is last in the sequence of events representing LOAD DATA).
      When we are executing this event we simply rewrite part of query which
      holds name of file (we use name of temporary file) and then execute it
      as usual query. In the beggining of this sequence we use Begin_load_query
      event which is almost identical to Append_file event
      f1691140
  18. 23 Feb, 2005 1 commit
  19. 22 Feb, 2005 1 commit
    • bar@mysql.com's avatar
      A user variable are now always have IMPLICIT coercibility, · 89a55308
      bar@mysql.com authored
      independently from the expression it is initialized from.
      In other words, this change treats a user variable like
      a table with one column and one record. Discussed with 
      PeterG, Serg and Lars. This change also simplifies replication
      allowing not to replicate variables' coercibility.
      89a55308
  20. 17 Feb, 2005 1 commit
  21. 16 Feb, 2005 1 commit
  22. 09 Feb, 2005 1 commit
  23. 08 Feb, 2005 1 commit
  24. 07 Feb, 2005 1 commit
  25. 03 Feb, 2005 1 commit
    • guilhem@mysql.com's avatar
      WL#1062 "log charset info into all Query_log_event": · ed1696f6
      guilhem@mysql.com authored
      we store 7 bytes (1 + 2*3) in every Query_log_event.
      In the future if users want binlog optimized for small size and less safe,
      we could add --binlog-no-charset (and binlog-no-sql-mode etc): charset info
      is something by design optional (even if for now we don't offer possibility to disable it):
      it's not a binlog format change.
      We try to reduce the number of get_charset() calls in the slave SQL thread to a minimum
      by caching the charset read from the previous event (which will often be equal to the one of the current event).
      We don't use SET ONE_SHOT for charset-aware repl (we still do for timezones, will be fixed later).
      No more errors if one changes the global value of charset vars on master or slave
      (as we log charset info in all Query_log_event).
      Not fixing Load_log_event as it will be rewritten soon by Dmitri.
      Testing how mysqlbinlog behaves in rpl_charset.test.
      mysqlbinlog needs to know where charset file is (to be able to convert a charset number found
      in binlog (e.g. in User_var_log_event) to a charset name); mysql-test-run needs to pass
      the correct value for this option to mysqlbinlog.
      Many result udpates (adding charset info into every event shifts log_pos in SHOW BINLOG EVENTS).
      Roughly the same job is to be done for timezones :)
      ed1696f6
  26. 17 Jan, 2005 2 commits
  27. 16 Jan, 2005 1 commit
  28. 12 Jan, 2005 1 commit
  29. 17 Nov, 2004 2 commits
  30. 05 Nov, 2004 1 commit
    • bar@mysql.com's avatar
      user_var.result, user_var.test: · 813b2f33
      bar@mysql.com authored
        My previous change that "set @A=NULL" doesn't change charset
        fixed 'Bug #6321' as well. Prove with a new test that
        FIELD(<uservariable content NULL>, ...) now works fine too.
      813b2f33
  31. 09 Sep, 2004 1 commit
    • monty@mysql.com's avatar
      After merge fixes of merge with 4.1 that included the new arena code. · f2829d03
      monty@mysql.com authored
      Fixed (together with Guilhem) bugs in mysqlbinlog regarding --offset
      Prefix addresses with 0x for easier comparisons of debug logs
      Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
      This fix changed some 'index' queries to 'range' queries in the test suite
      Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
      This fix removed of a lot of 'Using where' notes in the test suite.
      Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
      Give NOTE instead of WARNING for safe field-type conversions
      f2829d03
  32. 15 Jul, 2004 1 commit
    • monty@mysql.com's avatar
      After merge fixes · 5b3c418b
      monty@mysql.com authored
      Note: The following tests fails
      - fulltext (Sergei has promised to fix)
      - rpl_charset (Guilhem should fix)
      - rpl_timezone (Dimitray has promised to fix)
      
      Sanja needs to check out the calling of close_thread_tables() in sp_head.cc
      5b3c418b
  33. 08 Jun, 2004 1 commit
    • guilhem@mysql.com's avatar
      Correction to replication of charsets in 4.1: · b514e6a8
      guilhem@mysql.com authored
      In mysqlbinlog, there was a problem with how we escaped the content of a string user variable.
      To be perfect, we should have escaped with character_set_client. But this charset is unknown
      to mysqlbinlog. So the simplest is to print the string in hex. This is unreadable but
      100% safe with any charset (checked with Bar), no more need to bother with character_set_client.
      b514e6a8
  34. 03 Jun, 2004 1 commit
    • guilhem@mysql.com's avatar
      Implementation of WL#1824 "Add replication of character set variables in 4.1", · 86e8ecc9
      guilhem@mysql.com authored
      by binlogging some SET ONE_SHOT CHARACTER_SETetc,
      which will be enough until we have it more compact and more complete in 5.0. With the present patch,
      replication will work ok between 4.1.3 master and slaves, as long as:
      - master and slave have the same GLOBAL.COLLATION_SERVER
      - COLLATION_DATABASE and CHARACTER_SET_DATABASE are not used
      - application does not use the fact that table is created with charset of the USEd db (BUG#2326).
      all of which are not too hard to fulfill. 
      ONE_SHOT is reserved for internal use of mysqlbinlog|mysql and works only for charsets,
      so we give error if used for non-charset vars.
      Fix for BUG#3875 "mysqlbinlog produces wrong ouput  if query uses
       variables containing quotes" and BUG#3943 "Queries with non-ASCII literals are not replicated
       properly after SET NAMES".
      Detecting that master and slave have different global charsets or server ids.
      86e8ecc9
  35. 31 Dec, 2003 1 commit
  36. 03 Dec, 2003 1 commit
  37. 18 Nov, 2003 1 commit