1. 23 Jan, 2007 1 commit
  2. 22 Jan, 2007 5 commits
  3. 19 Jan, 2007 6 commits
  4. 18 Jan, 2007 3 commits
    • gkodinov/kgeorge@rakia.gmz's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 0d665bd5
      gkodinov/kgeorge@rakia.gmz authored
      into  rakia.gmz:/home/kgeorge/mysql/autopush/B25382-5.0-opt
      0d665bd5
    • gkodinov/kgeorge@macbook.gmz's avatar
      Bug #25382: Passing NULL to an UDF called from stored procedures · 20d94f11
      gkodinov/kgeorge@macbook.gmz authored
       crashes server
       Check for null value is reliable only after calling some of the 
       val_xxx() methods. If the val_xxx() method is not called
       the null_value flag will be set only for certain types of NULL
       values (like SQL constant NULLs for example).
       This caused a crash while trying to dereference a NULL pointer
       that is returned by val_str() for NULL values.
       Fixed by swapping the order of val_xxx() and null_value check.
      20d94f11
    • igor@olga.mysql.com's avatar
      Fixed bug #25580: incorrect stored representations of views in cases · c1927e9a
      igor@olga.mysql.com authored
      when they contain the '!' operator.
      Added an implementation for the method Item_func_not::print. 
      The method encloses any NOT expression into extra parentheses to avoid
      incorrect stored representations of views that use the '!' operators.
      Without this change when a view was created that contained
      the expression !0*5  its stored representation contained not this
      expression but rather the expression not(0)*5 . 
      The operator '!' is of a higher precedence than '*', while NOT is 
      of a lower precedence than '*'. That's why the expression !0*5 
      is interpreted as not(0)*5, while the expression not(0)*5 is interpreted
      as not((0)*5) unless sql_mode is set to HIGH_NOT_PRECEDENCE.
      Now we translate !0*5 into (not(0))*5. 
      c1927e9a
  5. 15 Jan, 2007 8 commits
  6. 14 Jan, 2007 1 commit
  7. 13 Jan, 2007 1 commit
  8. 12 Jan, 2007 11 commits
  9. 11 Jan, 2007 4 commits
    • mmj@tiger.mmj.dk's avatar
      Merge mjorgensen@bk-internal.mysql.com:/home/bk/mysql-5.0 · ebb48853
      mmj@tiger.mmj.dk authored
      into  tiger.mmj.dk:/Users/mmj/bktrees/mysql-5.1-build
      ebb48853
    • tsmith@siva.hindu.god's avatar
      Merge siva.hindu.god:/home/tsmith/m/bk/mysql-5.0-build · bc0e0ba7
      tsmith@siva.hindu.god authored
      into  siva.hindu.god:/home/tsmith/m/bk/mysql-5.1-build
      bc0e0ba7
    • evgen@moonbone.local's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 1d92b6cd
      evgen@moonbone.local authored
      into  moonbone.local:/work/23417-bug-5.0-opt-mysql
      1d92b6cd
    • evgen@moonbone.local's avatar
      Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode. · 19ee0a94
      evgen@moonbone.local authored
      Currently in the ONLY_FULL_GROUP_BY mode no hidden fields are allowed in the
      select list. To ensure this each expression in the select list is checked
      to be a constant, an aggregate function or to occur in the GROUP BY list.
      The last two requirements are wrong and doesn't allow valid expressions like
      "MAX(b) - MIN(b)" or "a + 1" in a query with grouping by a.
      
      The correct check implemented by the patch will ensure that:
      any field reference in the [sub]expressions of the select list 
        is under an aggregate function or
        is mentioned as member of the group list or
        is an outer reference or
        is part of the select list element that coincide with a grouping element.
      
      The Item_field objects now can contain the position of the select list
      expression which they belong to. The position is saved during the
      field's Item_field::fix_fields() call.
      
      The non_agg_fields list for non-aggregated fields is added to the SELECT_LEX
      class. The SELECT_LEX::cur_pos_in_select_list now contains the position in the
      select list of the expression being currently fixed.
      19ee0a94