1. 06 Nov, 2017 1 commit
  2. 04 Nov, 2017 1 commit
  3. 02 Nov, 2017 5 commits
    • Igor Babaev's avatar
      Fixed mdev-14093 Wrong result upon JOIN with INDEX with no rows · beac522b
      Igor Babaev authored
      in joined table + GROUP BY + GROUP_CONCAT + HAVING + ORDER BY
      [by field from HAVING] + 1 row expected
      
      The fix is actually a port of the fix for bug #17055185 from
      mysql code line (see commit f289aeeef0743508ff87211084453b3b88a6d017
      by Mithun C Y into mysql-5.6). The test case for the bug #17055185
      was also ported.
      beac522b
    • Vladislav Vaintroub's avatar
      Fix a warning. · b0cfb168
      Vladislav Vaintroub authored
      b0cfb168
    • Sergei Petrunia's avatar
      Make rocksdb.read_only_tx pass and enable it · 80d61515
      Sergei Petrunia authored
      - FB/MySQL 5.6' MyRocks has START TRANSACTION WITH CONSISTENT
        ROCKSDB SNAPSHOT, which returns binlog position.
      
      - MariaDB has a cross-engine START TRANSACTION WITH CONSISTENT
        SNAPSHOT. It can be used for the same purpose. Binlog position
        can be obtained from Binlog_snapshot_file/position status vars.
      80d61515
    • Marko Mäkelä's avatar
      MDEV-14244 MariaDB 10.2.10 fails to run on Debian Stretch with ext3 and O_DIRECT · 19733efa
      Marko Mäkelä authored
      os_file_set_size(): If posix_fallocate() returns EINVAL, fall back
      to writing zero bytes to the file. Also, remove some error log output,
      and make it possible for a server shutdown to interrupt the fall-back
      code.
      
      MariaDB 10.2 used to handle the EINVAL return value from posix_fallocate()
      before commit b731a5bc
      which refactored os_file_set_size() to try posix_fallocate().
      
      Why is the EINVAL returned? The GNU posix_fallocate() function
      would first try the fallocate() system call, which would return
      -EOPNOTSUPP for many file systems (notably, not ext4). Then, it
      would fall back to extending the file one block at a time by invoking
      pwrite(fd, "", 1, offset) where offset is 1 less than a multiple of
      the file block size. This would fail with EINVAL if the file is in
      O_DIRECT mode, because O_DIRECT requires aligned operation.
      19733efa
    • Monty's avatar
      Fixed compiler warning and warning from valgrind · 0f4e0055
      Monty authored
      The failing test was main.gis-json
      0f4e0055
  4. 01 Nov, 2017 2 commits
    • Monty's avatar
      Fixed that --malloc-lib works properly · 6b7918d5
      Monty authored
      - Expand paths also for jemalloc
      - Test also if tcmalloc or jemalloc is in /usr/lib64
      - Take into account that .so has a version
      - Remove automatic adding of flavors ( _minial, _debug). Better to
        have user specify these directly
      - Changed documentation link to MariaDB
      - Don't give extra error if mysqld_safe_helper doesn't exist
      6b7918d5
    • Marko Mäkelä's avatar
      Merge 10.1 into 10.2 · 6692b5f7
      Marko Mäkelä authored
      6692b5f7
  5. 31 Oct, 2017 7 commits
  6. 30 Oct, 2017 7 commits
  7. 29 Oct, 2017 6 commits
  8. 27 Oct, 2017 11 commits
    • Vladislav Vaintroub's avatar
      MDEV-14115 : Do not use lpNumberOfBytesRead/Written params in · 97df230a
      Vladislav Vaintroub authored
      ReadFile/WriteFile operations.
      
      Innodb opens files with FILE_FLAG_OVERLAPPED. lpNumberOfBytesRead/Written
      are documented to be potentially inaccurate in this case,
      (possibly even if async operations complete synchronously?)
      
      The fix is to always pass NULL for the correspondng parameters,
      as recommended by  MSDN. Read the actual counts with
      GetQueuedCompletionStatus() or GetOverlappedResult().
      97df230a
    • Marko Mäkelä's avatar
      MDEV-14132 follow-up fix: Make os_file_get_size() thread-safe · 067f8396
      Marko Mäkelä authored
      os_file_get_size(): Use fstat() instead of calling lseek() 3 times.
      In this way, concurrent calls to this function should not interfere
      with each other.
      
      Suggested by Vladislav Vaintroub.
      067f8396
    • Marko Mäkelä's avatar
      Remove a bogus page_is_root() debug assertion on btr_create() failure · 9dfe84d5
      Marko Mäkelä authored
      The predicate page_is_root() would not hold if btr_create() fails
      before the root page is fully initialized. Move the debug assertion
      from btr_free_root_invalidate() to its other caller,
      btr_free_if_exists(). In that caller, we actually already checked
      for page_is_root().
      9dfe84d5
    • Marko Mäkelä's avatar
      MDEV-14132 follow-up fix: Validate the posix_fallocate() argument · 5f5ffdc7
      Marko Mäkelä authored
      os_file_set_size(): Sometimes the file already is large enough.
      Avoid calling posix_fallocate() with a non-positive argument.
      Also, add a missing space to an error message.
      5f5ffdc7
    • Sergei Petrunia's avatar
      MDEV-11934: MariaRocks: Group Commit with binlog · 3d46ebbc
      Sergei Petrunia authored
      Adjust and enable rocksdb.2pc_group_commit test
      3d46ebbc
    • Vladislav Vaintroub's avatar
      MDEV-14132 : fix posix_fallocate() calls to workaround some (ancient) Linux bugs · 057a6cf7
      Vladislav Vaintroub authored
      With this patch, parameters passed to posix_fallocate() will be
      the same as they were prior to refactoring in  commit b731a5bc
      
      In particular, 'offset' parameter for posix_fallocate is again current_file_size
      and 'length' is new_file_size - current_file_size.
      
      This seems to fix crashes on ancient Linux (kernel 2.6).
      057a6cf7
    • Sergei Petrunia's avatar
      1792a80a
    • Marko Mäkelä's avatar
      MDEV-13890 mariabackup.xb_compressed_encrypted failed in buildbot, InnoDB: assertion failure · b94a62b5
      Marko Mäkelä authored
      The assertion failure was relaxed in
      commit 02ba15a9
      but it was not enough, because another assertion would fail.
      
      trx_undo_free_prepared(): Allow any undo log state. For transactions
      that were resurrected in TRX_STATE_COMMITTED_IN_MEMORY
      the undo log state would have been reset by trx_undo_set_state_at_finish().
      b94a62b5
    • Marko Mäkelä's avatar
      Remove dead code for MLOG_UNDO_HDR_DISCARD · f29cfa1d
      Marko Mäkelä authored
      The redo log record MLOG_UNDO_HDR_DISCARD is never written, and
      the function trx_undo_discard_latest_update_undo() is never called
      outside crash recovery.
      
      Starting with MariaDB 10.2.2, crash recovery from an older InnoDB
      version is refused. Therefore, we can safely remove the code for
      parsing this long-unused redo log record type.
      
      The use of MLOG_UNDO_HDR_DISCARD was removed by Heikki Tuuri,
      the original designer and author of InnoDB, more than 13 years ago:
      
        commit 3caab0f3
        Author: unknown <heikki@hundin.mysql.fi>
        Date:   Thu Mar 18 14:57:22 2004 +0200
      
          trx0undo.h, trx0undo.c, trx0trx.c:
            Update an obsolete comment about trx commit: we can no longer call
            trx_undo_update_cleanup_by_discard(), and actually, the idea to
            call it was erroneous, it cannot work
      f29cfa1d
    • Marko Mäkelä's avatar
      Relax a too strict assertion at shutdown · 02ba15a9
      Marko Mäkelä authored
      trx_free_prepared(): The function trx_resurrect_insert()
      can resurrect a committed transaction when the TRX_UNDO_STATE
      field is not TRX_UNDO_ACTIVE or TRX_UNDO_PREPARED.
      (In the examined failure of mariabackup.xb_compressed_encrypted,
      assertion failure in --apply-log shutdown at line 25,
      the TRX_UNDO_STATE strangely contained the value 0xffff.)
      
      In any case, the assertion must allow the state
      TRX_STATE_COMMITTED_IN_MEMORY for resurrected transactions.
      02ba15a9
    • Marko Mäkelä's avatar
      Merge two innodb_fts tests from MySQL 5.7 · 00c46681
      Marko Mäkelä authored
      00c46681