1. 16 Feb, 2017 1 commit
  2. 17 Jan, 2017 1 commit
  3. 25 Dec, 2016 1 commit
  4. 24 Dec, 2016 1 commit
  5. 23 Dec, 2016 1 commit
    • Olivier Bertrand's avatar
      Fix some XML table type bugs: · e6b563f8
      Olivier Bertrand authored
      - in DOMNODELIST::DropItem
        if (Listp == NULL || Listp->length <= n)
          return true;
      is wrong, should be:
        if (Listp == NULL || Listp->length < n)
          return true;
      - Crash in discovery with libxml2 in XMLColumns because:
                  if (!tdp->Usedom)    // nl was destroyed
                    vp->nl = vp->pn->GetChildElements(g);
      is executed with vp->pn uninitialized. Fixed by adding:
                vp->pn = node;
      line 264.
      -In discovery with libxml2 some columns are not found.
      Because list was not recovered properly, nodes being modified and not reallocated.
      Fixed lines 214 and 277.
        modified:   storage/connect/domdoc.cpp
        modified:   storage/connect/tabxml.cpp
      
      Add support for zipped table files
        modified:   storage/connect/domdoc.cpp
        modified:   storage/connect/domdoc.h
        modified:   storage/connect/filamap.cpp
        modified:   storage/connect/filamap.h
        modified:   storage/connect/filamzip.cpp
        modified:   storage/connect/filamzip.h
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/libdoc.cpp
        modified:   storage/connect/plgdbutl.cpp
        modified:   storage/connect/plgxml.cpp
        modified:   storage/connect/plgxml.h
        modified:   storage/connect/tabdos.cpp
        modified:   storage/connect/tabdos.h
        modified:   storage/connect/tabfmt.cpp
        modified:   storage/connect/tabjson.cpp
        modified:   storage/connect/tabxml.cpp
      e6b563f8
  6. 19 Dec, 2016 1 commit
    • Marko Mäkelä's avatar
      MDEV-11602 InnoDB leaks foreign key metadata on DDL operations · 9f863a15
      Marko Mäkelä authored
      Essentially revert MDEV-6759, which addressed a double free of memory
      by removing the freeing altogether, introducing the memory leaks.
      No double free was observed when running the test suite -DWITH_ASAN.
      
      Replace some mem_heap_free(foreign->heap) with dict_foreign_free(foreign)
      so that the calls can be located and instrumented more easily when needed.
      9f863a15
  7. 14 Dec, 2016 1 commit
    • Olivier Bertrand's avatar
      - MDEV-11295: developing handling files contained in ZIP file. · 95230650
      Olivier Bertrand authored
        Enable using multiple zip files
        modified:   storage/connect/filamzip.cpp
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/ha_connect.h
        modified:   storage/connect/mycat.h
        modified:   storage/connect/tabdos.cpp
        modified:   storage/connect/tabdos.h
        modified:   storage/connect/tabfmt.cpp
        modified:   storage/connect/tabjson.cpp
      95230650
  8. 12 Dec, 2016 1 commit
    • Olivier Bertrand's avatar
      - MDEV-11295: developing handling files contained in ZIP file. · d44723e6
      Olivier Bertrand authored
        A first experimental and limited implementation.
        modified:   storage/connect/CMakeLists.txt
        modified:   storage/connect/filamap.cpp
        new file:   storage/connect/filamzip.cpp
        new file:   storage/connect/filamzip.h
        modified:   storage/connect/ha_connect.cc
        new file:   storage/connect/ioapi.c
        new file:   storage/connect/ioapi.h
        modified:   storage/connect/mycat.cc
        modified:   storage/connect/plgdbsem.h
        modified:   storage/connect/plgdbutl.cpp
        modified:   storage/connect/tabdos.cpp
        modified:   storage/connect/tabdos.h
        modified:   storage/connect/tabfmt.cpp
        modified:   storage/connect/tabfmt.h
        modified:   storage/connect/tabjson.cpp
        modified:   storage/connect/tabjson.h
        new file:   storage/connect/tabzip.cpp
        new file:   storage/connect/tabzip.h
        new file:   storage/connect/unzip.c
        new file:   storage/connect/unzip.h
        new file:   storage/connect/zip.c
      d44723e6
  9. 10 Dec, 2016 1 commit
    • Vicențiu Ciorbaru's avatar
      MDEV-11533: Roles with trailing white spaces are not cleared correctly · eb4f2e06
      Vicențiu Ciorbaru authored
      Role names with trailing whitespaces are truncated in length as of
      956e92d9 to fix MDEV-8609. The problem
      is that the code that creates role mappings expects the string to be null
      terminated.
      
      Add the null terminator to account for that as well. In the future
      the rest of the code can be cleaned up to never assume c style strings
      but only LEX_STRINGS.
      eb4f2e06
  10. 09 Dec, 2016 1 commit
  11. 08 Dec, 2016 2 commits
    • Sergei Golubchik's avatar
      MDEV-10713: signal 11 error on multi-table update - crash in... · 03dabfa8
      Sergei Golubchik authored
      MDEV-10713: signal 11 error on multi-table update - crash in handler::increment_statistics or in make_select or assertion failure pfs_thread == ((PFS_thread*) pthread_getspecific((THR_PFS)))
      
      Different fix. Don't allow Item_func_sp to be evaluated unless
      all tables are prelocked.
      
      Extend the test case to make sure Item_func_sp::val_str is called
      (the table must have at least one row for that).
      03dabfa8
    • Sergei Golubchik's avatar
      Revert "MDEV-10713: signal 11 error on multi-table update - crash in... · ab65db6d
      Sergei Golubchik authored
      Revert "MDEV-10713: signal 11 error on multi-table update - crash in handler::increment_statistics or in make_select or assertion failure pfs_thread == ((PFS_thread*) pthread_getspecific((THR_PFS)))"
      
      This reverts commit 035a5ac6.
      
      Two minor problems and one regression:
      1. caching the value in str_result. Other Item methods may use it,
         destroying the cache. See, for example, Item::save_in_field, where
         str_result is moved to use a local buffer (this failed main.grant)
      2. Item_func_conv_charset::safe is now set too late, it's initialized
         only in val_str() but checked before that, this failed many tests
         in optimized builds.
      
      to fix 1 - use tmp_result instead of str_result, to fix 2, use
      the else branch in the Item_func_conv_charset constructor to set
      safe purely from charset properties.
      
      But this introduces a regression, constant strings can no longer be
      converted, say, from utf8 to latin1 (because 'safe' will be false).
      This fails few tests too. There is no way to fix it without reverting
      the commit and converting constants, as before, in the constructor.
      ab65db6d
  12. 07 Dec, 2016 6 commits
  13. 06 Dec, 2016 5 commits
  14. 05 Dec, 2016 2 commits
    • Sergei Golubchik's avatar
      MDEV-10293 'setupterm' was not declared in this scope · 18cdff67
      Sergei Golubchik authored
      Check for readline before checking for curses headers, because
      MYSQL_CHECK_READLINE fails when curses is not found, but
      CHECK_INCLUDE_FILES simply remembers the fact and continues.  So if
      there's no curses, MYSQL_CHECK_READLINE will abort, the user will then
      installs curses and continue the build. Thus, CHECK_INCLUDE_HEADERS
      will remember that there is no curses, but other checks from
      MYSQL_CHECK_READLINE will remember that curses are there. It will
      result in inconsistent HAVE_xxx defines.
      18cdff67
    • Sergei Golubchik's avatar
      02d153c7
  15. 04 Dec, 2016 4 commits
  16. 03 Dec, 2016 3 commits
  17. 02 Dec, 2016 3 commits
    • Olivier Bertrand's avatar
      - MDEV-11366 SIGBUS errors in Connect Storage Engine for ArmHF and MIPS. · 599d8cc2
      Olivier Bertrand authored
        Fix includes launchpad fix plus more to cover writing BIN tables.
        modified:   storage/connect/tabfix.cpp
        modified:   storage/connect/value.cpp
        modified:   storage/connect/value.h
      
      - Typo: Change the name of filamzip to filamgz to prepare future ZIP tables.
        modified:   storage/connect/CMakeLists.txt
        added:      storage/connect/filamgz.cpp
        added:      storage/connect/filamgz.h
        deleted:    storage/connect/filamzip.cpp
        deleted:    storage/connect/filamzip.h
        modified:   storage/connect/plgdbsem.h
        modified:   storage/connect/reldef.cpp
        modified:   storage/connect/tabdos.cpp
        modified:   storage/connect/tabdos.h
        modified:   storage/connect/tabfix.cpp
        modified:   storage/connect/tabfmt.cpp
        modified:   storage/connect/tabjson.cpp
      599d8cc2
    • Sergei Golubchik's avatar
      5.6.34-79.1 · d4f0686c
      Sergei Golubchik authored
      d4f0686c
    • Sergei Golubchik's avatar
      5.6.34-79.1 · 7436c3d6
      Sergei Golubchik authored
      7436c3d6
  18. 01 Dec, 2016 2 commits
  19. 29 Nov, 2016 3 commits
    • Igor Babaev's avatar
      Fixed bug mdev-11364. · 748d993c
      Igor Babaev authored
      The function Item_func_isnull::update_used_tables() must
      handle the case when the predicate is over not nullable
      column in a special way.
      This is actually a bug of MariaDB 5.3/5.5, but it's probably
      hard to demonstrate that it can cause problems there.
      748d993c
    • Jan Lindström's avatar
      MDEV-10427: innodb.innodb-wl5522-debug-zip fails sporadically in buildbot · b209bc3e
      Jan Lindström authored
      Test intentionally crashes the server, thus corrupted pages possible.
      b209bc3e
    • Alexander Barkov's avatar
      MDEV-11343 LOAD DATA INFILE fails to load data with an escape character... · dd0ff302
      Alexander Barkov authored
      MDEV-11343 LOAD DATA INFILE fails to load data with an escape character followed by a multi-byte character
      
      Partially backporting MDEV-9874 from 10.2 to 10.0
      
      READ_INFO::read_field() raised the ER_INVALID_CHARACTER_STRING error
      when reading an escape character followed by a multi-byte character.
      
      Raising wellformedness errors in READ_INFO::read_field() was wrong,
      because the main goal of READ_INFO::read_field() is to *unescape* the
      data which was presumably escaped using mysql_real_escape_string(),
      using the same character set with the one specified in
      "LOAD DATA INFILE ... CHARACTER SET ..." (or assumed by default).
      
      During LOAD DATA, multi-byte characters are not always scanned as a single
      entity! In case of escaped data, parts of a multi-byte character can be
      scanned on different loop iterations. So the old code erroneously tested
      welformedness in the middle of a multi-byte character.
      
      Moreover, the data after unescaping can go into a BLOB field, not a text field.
      Wellformedness tests are meaningless in this case.
      
      Ater this patch, wellformedness is only checked later, during
      Field::store(str,length,cs) time. The loop that scans bytes only
      makes sure to revert the changes made by mysql_real_escape_string().
      
      Note, in some cases users can supply data which did not really go through
      mysql_real_escape_string() and was escaped by some other means,
      or was not escaped at all. The file reported in this MDEV contains
      the string "\ä", which is an example of such improperly escaped data, as
      - either there should be two backslashes:   "\\ä"
      - or there should be no backslashes at all: "ä"
      mysql_real_escape_string() could not generate "\ä".
      dd0ff302