1. 09 Jan, 2018 1 commit
    • Vicențiu Ciorbaru's avatar
      Workaround for dtoa.c · e35af662
      Vicențiu Ciorbaru authored
      There is no obvious reason why multiplying by 1.0 helps solve a
      precision problem on gcc-7 or clang-5, but it does work. Casting to
      ulong however makes the problem come up again. Windows warns about loss
      of precision, so to quiet warnings until an appropriate fix is
      implemented, ifdef 2 versions of the code.
      e35af662
  2. 08 Jan, 2018 1 commit
  3. 07 Jan, 2018 2 commits
  4. 06 Jan, 2018 1 commit
  5. 05 Jan, 2018 11 commits
  6. 04 Jan, 2018 11 commits
    • Marko Mäkelä's avatar
      Merge branch 10.1 into 10.2 · c8e63644
      Marko Mäkelä authored
      c8e63644
    • Marko Mäkelä's avatar
      Merge 10.0 into 10.1 · 21470de1
      Marko Mäkelä authored
      21470de1
    • Marko Mäkelä's avatar
      4496fd71
    • Marko Mäkelä's avatar
      MDEV-14057 InnoDB GIS tests fail · 8dc77a72
      Marko Mäkelä authored
      Fix and enable some of the tests; some remain disabled.
      
      The tests innodb_gis.rtree_old and innodb_gis.row_format
      duplicated some versions of the test main.gis-rtree.
      Instead of duplicating, source that test, in a new test
      innodb_gis.innodb_gis_rtree.
      
      Introduce innodb_row_format.combinations. Due to this,
      ROW_FORMAT=COMPRESSED will not be covered in some tests
      where it is covered in MySQL 5.7.
      8dc77a72
    • Marko Mäkelä's avatar
      MDEV-14058 InnoDB Assertion failure !leaf on rem0rec.cc line 566 on test innodb_gis.rtree_recovery · 218dbf68
      Marko Mäkelä authored
      The function rtr_update_mbr_field_in_place() is generating
      MLOG_REC_UPDATE_IN_PLACE or MLOG_COMP_REC_UPDATE_IN_PLACE records
      on non-leaf pages, even though MLOG_WRITE_STRING would perfectly
      suffice for updating a fixed-length data field.
      
      btr_cur_parse_update_in_place(): If flags==7, the record may be
      from rtr_update_mbr_field_in_place(), and we must check if the
      page is a leaf page. Otherwise, assume that it is.
      
      btr_cur_update_in_place(): Assert that the page is a leaf page.
      218dbf68
    • Marko Mäkelä's avatar
      Relax a bogus debug assertion · c9ad134e
      Marko Mäkelä authored
      While insert direction makes no sense for SPATIAL INDEX (R-tree),
      the field is apparently being used (and basically garbage).
      Relax the debug assertion that was added in MDEV-11369.
      c9ad134e
    • Daniel Bartholomew's avatar
      bump the VERSION · 0f253d3e
      Daniel Bartholomew authored
      0f253d3e
    • Monty's avatar
      Fixed wrong arguments to printf and related functions · 5e0b13d1
      Monty authored
      Other things, mainly to get
      create_mysqld_error_find_printf_error tool to work:
      
      - Added protection to not include mysqld_error.h twice
      - Include "unireg.h" instead of "mysqld_error.h" in server
      - Added protection if ER_XX messages are already defined
      - Removed wrong calls to my_error(ER_OUTOFMEMORY) as
        my_malloc() and my_alloc will do this automatically
      - Added missing %s to ER_DUP_QUERY_NAME
      - Removed old and wrong calls to my_strerror() when using
        MY_ERROR_ON_RENAME (wrong merge)
      - Fixed deadlock error message from Galera. Before the extra
        information given to ER_LOCK_DEADLOCK was missing because
        ER_LOCK_DEADLOCK doesn't provide any extra information.
      
      I kept #ifdef mysqld_error_find_printf_error_used in sql_acl.h
      to make it easy to do this kind of check again in the future
      5e0b13d1
    • Aleksey Midenkov's avatar
      Tests: detect table count for some encryption tests · 64afa5be
      Aleksey Midenkov authored
      debug_key_management
      encrypt_and_grep
      innodb_encryption
      
      If real table count is different from what is expected by the test, it
      just hangs on waiting to fulfill hardcoded number. And then exits with
      **failed** after 10 minutes of wait: quite unfriendly and hard to
      figure out what's going on.
      64afa5be
    • Sergei Petrunia's avatar
      Fix out-of-date comments. · c584a496
      Sergei Petrunia authored
      c584a496
    • Marko Mäkelä's avatar
      Merge bb-10.2-ext into 10.3 · 145ae15a
      Marko Mäkelä authored
      145ae15a
  7. 03 Jan, 2018 13 commits
    • Marko Mäkelä's avatar
      Do not misspell "fall through" · 1a1bda22
      Marko Mäkelä authored
      1a1bda22
    • Marko Mäkelä's avatar
      Merge 10.2 into bb-10.2-ext · 3fcbeb4a
      Marko Mäkelä authored
      3fcbeb4a
    • Marko Mäkelä's avatar
      Do not misspell "fall through" · af0ba438
      Marko Mäkelä authored
      af0ba438
    • Marko Mäkelä's avatar
      Merge 10.1 into 10.2 · fcde9111
      Marko Mäkelä authored
      fcde9111
    • Marko Mäkelä's avatar
      Merge 10.0 into 10.1 · 1e89c86d
      Marko Mäkelä authored
      1e89c86d
    • Marko Mäkelä's avatar
      Merge 5.5 into 10.0 · 8ac1982f
      Marko Mäkelä authored
      8ac1982f
    • Marko Mäkelä's avatar
      MDEV-14848 MariaDB 10.3 refuses InnoDB crash-upgrade from MariaDB 10.2 · acd2862e
      Marko Mäkelä authored
      While the redo log format was changed in MariaDB 10.3.2 and 10.3.3
      due to MDEV-12288 and MDEV-11369, it should be technically possible
      to upgrade from a crashed MariaDB 10.2 instance.
      
      On a related note, it should be possible for Mariabackup 10.3
      to create a backup from a running MariaDB Server 10.2.
      
      mlog_id_t: Put back the 10.2 specific redo log record types
      MLOG_UNDO_INSERT, MLOG_UNDO_ERASE_END, MLOG_UNDO_INIT,
      MLOG_UNDO_HDR_REUSE.
      
      trx_undo_parse_add_undo_rec(): Parse or apply MLOG_UNDO_INSERT.
      
      trx_undo_erase_page_end(): Apply MLOG_UNDO_ERASE_END.
      
      trx_undo_parse_page_init(): Parse or apply MLOG_UNDO_INIT.
      
      trx_undo_parse_page_header_reuse(): Parse or apply MLOG_UNDO_HDR_REUSE.
      
      recv_log_recover_10_2(): Remove. Always parse the redo log from 10.2.
      
      recv_find_max_checkpoint(), recv_recovery_from_checkpoint_start():
      Always parse the redo log from MariaDB 10.2.
      
      recv_parse_or_apply_log_rec_body(): Parse or apply
      MLOG_UNDO_INSERT, MLOG_UNDO_ERASE_END, MLOG_UNDO_INIT.
      
      srv_prepare_to_delete_redo_log_files(),
      innobase_start_or_create_for_mysql(): Upgrade from a previous (supported)
      redo log format.
      acd2862e
    • Marko Mäkelä's avatar
      Merge 10.2 into bb-10.2-ext · f7fd6ace
      Marko Mäkelä authored
      f7fd6ace
    • Marko Mäkelä's avatar
      84c9c8b2
    • Marko Mäkelä's avatar
      Follow-up fix of MDEV-14717 RENAME TABLE in InnoDB is not crash-safe · 9eb3fcc9
      Marko Mäkelä authored
      trx_undo_page_report_rename(): Return a pointer to the start of the
      undo log record, not to the start of the (not yet written) next free
      record. The wrong return value would sometimes cause ROLLBACK to crash
      in an assertion failure (trying to parse garbage from the free area at
      the end of the insert_undo log page) if the TRX_UNDO_RENAME_TABLE record
      was the very last thing that was written to the insert_undo log. This
      would occasionally happen when an ALTER TABLE operation is rolled
      back due to invalid FOREIGN KEY constraints in the innodb.innodb test.
      In these tests, the error ER_ERROR_ON_RENAME (1025) would be returned
      at the end of the ALGORITHM=COPY operation of ALTER TABLE.
      9eb3fcc9
    • Marko Mäkelä's avatar
      Merge 10.1 into 10.2, with some MDEV-14799 fixups · d361401b
      Marko Mäkelä authored
      trx_undo_page_report_modify(): For SPATIAL INDEX, keep logging
      updated off-page columns twice, so that
      the minimum bounding rectangle (MBR) will be logged.
      Avoiding the redundant logging would require larger changes
      to the undo log format.
      
      row_build_index_entry_low(): Handle SPATIAL_UNKNOWN more robustly,
      by refusing to purge the record from the spatial index.
      We can get this code when processing old undo log from 10.2.10 or
      10.2.11 (the releases affected by MDEV-14799, which was a regression
      from MDEV-14051).
      d361401b
    • Marko Mäkelä's avatar
      MDEV-13568 gcol.innodb_virtual_debug_purge failed in buildbot with wrong result · 7a9fee98
      Marko Mäkelä authored
      The InnoDB background tasks can modify tables while LOCK TABLES...WRITE
      is in effect. The purge of InnoDB history always worked like this in
      MariaDB, but in MySQL 5.7 it sometimes yields to LOCK TABLES.
      
      Also, make gcol.innodb_virtual_index run the purge for an UPDATE
      before DROP TABLE is executed.
      7a9fee98
    • Monty's avatar
      c2c21737