1. 10 Aug, 2016 5 commits
  2. 09 Aug, 2016 2 commits
  3. 08 Aug, 2016 5 commits
  4. 07 Aug, 2016 1 commit
  5. 04 Aug, 2016 4 commits
  6. 03 Aug, 2016 13 commits
  7. 02 Aug, 2016 1 commit
  8. 30 Jul, 2016 2 commits
  9. 26 Jul, 2016 1 commit
    • Sergei Petrunia's avatar
      MDEV-10228: Delete missing rows with OR conditions · 15ef38d2
      Sergei Petrunia authored
      Fix get_quick_keys(): When building range tree from a condition
      in form
      
        keypart1=const AND (keypart2 < 0 OR keypart2>=0)
      
      the SEL_ARG for keypart2 represents an interval (-inf, +inf).
      However, the logic that sets UNIQUE_RANGE flag fails to recognize
      this, and sets UNIQUE_RANGE flag if (keypart1, keypart2) covered
      a unique key.
      As a result, range access executor assumes the interval can have
      at most one row and only reads the first row from it.
      15ef38d2
  10. 21 Jul, 2016 1 commit
  11. 15 Jul, 2016 1 commit
  12. 12 Jul, 2016 1 commit
  13. 11 Jul, 2016 1 commit
  14. 07 Jul, 2016 1 commit
  15. 06 Jul, 2016 1 commit
    • Sergei Golubchik's avatar
      MDEV-7973 bigint fail with gcc 5.0 · e81455bb
      Sergei Golubchik authored
      -LONGLONG_MIN is the undefined behavior in C.
      longlong2decimal() used to do this:
      
        int longlong2decimal(longlong from, decimal_t *to) {
          if ((to->sign= from < 0))
            return ull2dec(-from, to);
          return ull2dec(from, to);
      
      and later in ull2dec() (DIG_BASE is 1000000000):
      
        static int ull2dec(ulonglong from, decimal_t *to) {
          for (intg1=1; from >= DIG_BASE; intg1++, from/=DIG_BASE) {}
      
      this breaks in gcc-5 at -O3. Here ull2dec is inlined into
      longlong2decimal. And gcc-5 believes that 'from' in the
      inlined ull2dec is always a positive integer (indeed, if it was
      negative, then -from was used instead). So gcc-5 uses
      *signed* comparison with DIG_BASE.
      
      Fix: make a special case for LONGLONG_MIN, don't negate it
      e81455bb