1. 07 Jun, 2007 6 commits
    • evgen@moonbone.local's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 6d3e2399
      evgen@moonbone.local authored
      into  moonbone.local:/mnt/gentoo64/work/28763-bug-5.0-opt-mysql
      6d3e2399
    • evgen@moonbone.local's avatar
      Bug#28763: Selecting geometry fields in UNION caused server crash. · eb9e174b
      evgen@moonbone.local authored
      This bug was introduced by the fix for the bug#27300. In this fix a section
      of code was added to the Item::tmp_table_field_from_field_type method.
      This section intended to create Field_geom fields for the Item_geometry_func
      class and its descendants. In order to get the geometry type of the current
      item it casted "this" to the Item_geometry_func* type. But the
      Item::tmp_table_field_from_field_type method is also used for creation of
      fields for UNION and in this case this method is called for an object of the
      Item_type_holder class and the cast to the Item_geometry_func* type causes 
      a server crash.
      
      Now the Item::tmp_table_field_from_field_type method correctly works when it's
      called for both the Item_type_holder and the Item_geometry_func classes.
      The new geometry_type variable is added to the Item_type_holder class.
      The new method called get_geometry_type is added to the Item_field
      and the Field classes. It returns geometry type from the field for the
      Item_field and the Field_geom classes and fails an assert for other Field
      descendants.
      eb9e174b
    • igor@olga.mysql.com's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · d55e54c7
      igor@olga.mysql.com authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug28449
      d55e54c7
    • igor@olga.mysql.com's avatar
      Fixed bug #28449: a crash may happen at some rare conditions when · 56996041
      igor@olga.mysql.com authored
      a temporary table has grown out of heap memory reserved for it and 
      the remaining disk space is not big enough to store the table as
      a MyISAM table.
      
      The crash happens because the function create_myisam_from_heap
      does not handle safely the mem_root structure associated 
      with the converted table in the case when an error has occurred.
      56996041
    • gkodinov/kgeorge@magare.gmz's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · e4e141cf
      gkodinov/kgeorge@magare.gmz authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B28878-5.0-opt
      e4e141cf
    • gkodinov/kgeorge@magare.gmz's avatar
      Bug#28878: InnoDB tables with UTF8 character set and indexes cause · b1e936b9
      gkodinov/kgeorge@magare.gmz authored
      wrong result for DML
      When making key reference buffers over CHAR fields whitespace (0x20) 
      must be used to fill in the remaining space in the field's buffer.
      This is what Field_string::store() does.
      Fixed Field_string::get_key_image() to do the same.
      b1e936b9
  2. 06 Jun, 2007 4 commits
  3. 05 Jun, 2007 1 commit
    • evgen@moonbone.local's avatar
      Bug#28778: Wrong result of BETWEEN when comparing a DATETIME field with an · 0a91c7cc
      evgen@moonbone.local authored
      integer constants.
      
      This bug is introduced by the fix for bug#16377. Before the fix the 
      Item_func_between::fix_length_and_dec method converted the second and third
      arguments to the type of the first argument if they were constant and the first
      argument is of the DATE/DATETIME type. That approach worked well for integer
      constants and sometimes produced bad result for string constants. The fix for
      the bug#16377 wrongly removed that code at all and as a result of this the
      comparison of a DATETIME field and an integer constant was carried out in a
      wrong way and sometimes led to wrong result sets.
      
      Now the Item_func_between::fix_length_and_dec method converts the second and
      third arguments to the type of the first argument if they are constant, the
      first argument is of the DATE/DATETIME type and the DATETIME comparator isn't
      applicable.
      0a91c7cc
  4. 04 Jun, 2007 1 commit
  5. 03 Jun, 2007 8 commits
  6. 02 Jun, 2007 8 commits
  7. 01 Jun, 2007 6 commits
  8. 31 May, 2007 6 commits
    • gshchepa/uchum@gleb.loc's avatar
      Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 5d15377d
      gshchepa/uchum@gleb.loc authored
      into  gleb.loc:/home/uchum/work/bk/mysql-5.0-opt
      5d15377d
    • gshchepa/uchum@gleb.loc's avatar
      Merge gleb.loc:/home/uchum/work/bk/mysql-5.0-opt-27827-fresh · 92737068
      gshchepa/uchum@gleb.loc authored
      into  gleb.loc:/home/uchum/work/bk/mysql-5.0-opt
      92737068
    • gshchepa/uchum@gleb.loc's avatar
      sql_view.cc: · d6a0bbf2
      gshchepa/uchum@gleb.loc authored
        Additional patch for bug #28244 to workaround valgrind warnings.
      d6a0bbf2
    • evgen@moonbone.local's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · df3b7082
      evgen@moonbone.local authored
      into  moonbone.local:/mnt/gentoo64/work/28494-bug-5.0-opt-mysql
      df3b7082
    • evgen@moonbone.local's avatar
      Bug#28494: Grouping by Item_func_set_user_var produces incorrect result. · f70ae3a6
      evgen@moonbone.local authored
      The end_update() function uses the Item::save_org_in_field() function to
      save original values of items into the group buffer. But for the 
      Item_func_set_user_var this method was mapped to the save_in_field method.
      The latter function wrongly decides to use the result_field. This leads to
      saving incorrect value in the grouping buffer and wrong result of the whole
      query.
      
      The can_use_result_field argument of the bool type is added to the
      Item_func_set_user_var::save_in_field() function. If it is set to FALSE
      then the item's result field won't be used. Otherwise it will be detected
      whether the result field will be used (old behaviour).
      Two wrapping functions for the function above are added to the 
      Item_func_set_user_var class:
      the save_in_field(Field *field, bool no_conversions) - it calls the above
      function with the can_use_result_field set to TRUE.
      the save_org_in_field(Field *field) - same, but the can_use_result_field
      is set to FALSE.
      f70ae3a6
    • gshchepa/uchum@gleb.loc's avatar
      Fixed bug #27827. · cab4ca9c
      gshchepa/uchum@gleb.loc authored
      ON conditions from JOIN expression were ignored at CHECK OPTION
      check when updating a multi-table view with CHECK OPTION.
      
      The st_table_list::prep_check_option function has been
      modified to to take into account ON conditions at CHECK OPTION check
      It was also changed to build the check option condition only once
      for any update used in PS/SP.
      cab4ca9c