1. 08 Nov, 2006 2 commits
    • cmiller@zippy.cornsilk.net's avatar
      Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug10963/my50-bug10963 · f05faf34
      cmiller@zippy.cornsilk.net authored
      into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug10963/my51-bug10963
      f05faf34
    • cmiller@zippy.cornsilk.net's avatar
      Bug#10963: LEFT/RIGHT/SUBSTR/.. string functions returns wrong result \ · 6260e12b
      cmiller@zippy.cornsilk.net authored
        on large length
        
      Problem:  Most (all) of the numeric inputs were being coerced into
      int (32 bit) sized variables.  Works OK for sane inputs; any input
      larger than 2^32 (or 2^31 for signed vars) exihibited predictable
      wrapping behavior (up to about 10^18) and then started having really
      strange behaviour past that point (since the conversion to 64 bit int
      from the DECIMAL type can do weird things on out of range numbers).
      
      Solution: 1)  Add many tests.  2)  Convert input from (u)long type to
      (u)longlong.  3)  Do (sometimes multiple) sanity checks on input,
      keeping in mind that sometimes a negative longlong is not a negative
      longlong (if the unsigned_flag is set).  4) Emulate existing behavior
      w/rt negative and "small" out-of-bounds values.
      6260e12b
  2. 07 Nov, 2006 4 commits
  3. 06 Nov, 2006 3 commits
  4. 04 Nov, 2006 6 commits
  5. 03 Nov, 2006 14 commits
  6. 02 Nov, 2006 11 commits