1. 14 Feb, 2018 1 commit
  2. 13 Feb, 2018 1 commit
    • Olivier Bertrand's avatar
      - Fix a bug causing CONNECT to loop when expanding a JSON column · 46f3e320
      Olivier Bertrand authored
        when the expanded column value is null or void array.
      - Adding the FullArray option to JSON tables.
      - Skipping expanded JSON lines when the expanded column value is null.
        modified:   storage/connect/connect.cc
        modified:   storage/connect/tabdos.h
        modified:   storage/connect/tabjson.cpp
        modified:   storage/connect/tabjson.h
      46f3e320
  3. 02 Feb, 2018 2 commits
  4. 01 Feb, 2018 1 commit
  5. 31 Jan, 2018 1 commit
    • Olivier Bertrand's avatar
      - Use delayed load for the MongoDB C Drive on Windows · 942d7277
      Olivier Bertrand authored
        modified:   storage/connect/CMakeLists.txt
        modified:   storage/connect/cmgoconn.cpp
        modified:   storage/connect/ha_connect.cc
      
      - Add FORCE to the connect_type_conv enum values
        This will translate binary values to TYPE_STRING
        modified:   storage/connect/checklvl.h
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/odbconn.cpp
      
      - Change the connect_xtrace variable to from int to set
        modified:   storage/connect/array.cpp
        modified:   storage/connect/blkfil.cpp
        modified:   storage/connect/block.h
        modified:   storage/connect/cmgoconn.cpp
        modified:   storage/connect/colblk.cpp
        modified:   storage/connect/connect.cc
        modified:   storage/connect/filamap.cpp
        modified:   storage/connect/filamdbf.cpp
        modified:   storage/connect/filamfix.cpp
        modified:   storage/connect/filamgz.cpp
        modified:   storage/connect/filamtxt.cpp
        modified:   storage/connect/filamvct.cpp
        modified:   storage/connect/filamzip.cpp
        modified:   storage/connect/filter.cpp
        modified:   storage/connect/global.h
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/inihandl.cpp
        modified:   storage/connect/javaconn.cpp
        modified:   storage/connect/jdbconn.cpp
        modified:   storage/connect/jmgfam.cpp
        modified:   storage/connect/jmgoconn.cpp
        modified:   storage/connect/json.cpp
        modified:   storage/connect/jsonudf.cpp
        modified:   storage/connect/libdoc.cpp
        modified:   storage/connect/mongo.cpp
        modified:   storage/connect/mycat.cc
        modified:   storage/connect/myconn.cpp
        modified:   storage/connect/odbconn.cpp
        modified:   storage/connect/plgdbutl.cpp
        modified:   storage/connect/plugutil.cpp
        modified:   storage/connect/reldef.cpp
        modified:   storage/connect/tabcol.cpp
        modified:   storage/connect/tabdos.cpp
        modified:   storage/connect/tabext.cpp
        modified:   storage/connect/tabfix.cpp
        modified:   storage/connect/tabfmt.cpp
        modified:   storage/connect/tabjdbc.cpp
        modified:   storage/connect/tabjson.cpp
        modified:   storage/connect/table.cpp
        modified:   storage/connect/tabmul.cpp
        modified:   storage/connect/tabmysql.cpp
        modified:   storage/connect/tabodbc.cpp
        modified:   storage/connect/tabpivot.cpp
        modified:   storage/connect/tabsys.cpp
        modified:   storage/connect/tabtbl.cpp
        modified:   storage/connect/tabutil.cpp
        modified:   storage/connect/tabvct.cpp
        modified:   storage/connect/tabwmi.cpp
        modified:   storage/connect/tabxml.cpp
        modified:   storage/connect/user_connect.cc
        modified:   storage/connect/valblk.cpp
        modified:   storage/connect/value.cpp
        modified:   storage/connect/xindex.cpp
      
      - Restore connect_enable_mongo variable (but undocumented)
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/mycat.cc
        modified:   storage/connect/mysql-test/connect/r/json_java_2.result
        modified:   storage/connect/mysql-test/connect/r/json_java_3.result
        modified:   storage/connect/mysql-test/connect/r/json_mongo_c.result
        modified:   storage/connect/mysql-test/connect/r/mongo_c.result
        modified:   storage/connect/mysql-test/connect/r/mongo_java_2.result
        modified:   storage/connect/mysql-test/connect/r/mongo_java_3.result
        modified:   storage/connect/mysql-test/connect/r/tbl_thread.result
        modified:   storage/connect/mysql-test/connect/t/mongo.inc
        modified:   storage/connect/mysql-test/connect/t/mongo_test.inc
        modified:   storage/connect/mysql-test/connect/t/tbl_thread.test
      942d7277
  6. 04 Jan, 2018 2 commits
  7. 03 Nov, 2017 2 commits
    • Olivier Bertrand's avatar
      Merge branch 'ob-10.1' into 10.1 · 3c6ba5b9
      Olivier Bertrand authored
      3c6ba5b9
    • Olivier Bertrand's avatar
      - Fix MDEV-13925: Actually this fixes SELECT queries when · 341a3602
      Olivier Bertrand authored
        the WHERE clause have single quote.
        modified:   storage/connect/ha_connect.cc
      
      - Use Windows VirtualAlloc and VirtualFree for the Sarea workspace
        modified:   storage/connect/global.h
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/jsonudf.cpp
        modified:   storage/connect/plgdbutl.cpp
        modified:   storage/connect/plugutil.cpp
        modified:   storage/connect/user_connect.cc
      
      - Change inihandl from c to c++.
        Because it now includes global.h that contains a bool function definition
        that make compile to fail on Linux.
        modified:   storage/connect/CMakeLists.txt
        removed:    storage/connect/inihandl.c
        added:      storage/connect/inihandl.cpp
      
      - Fix MDEV-13860 CONNECT engine does not build with JDBC without ODBC.
        By including Sergei's patch in connect_assisted_discovery.
        modified:   storage/connect/ha_connect.cc
      341a3602
  8. 17 Oct, 2017 2 commits
    • Olivier Bertrand's avatar
      Merge branch 'ob-10.1' into 10.1 · bcc39742
      Olivier Bertrand authored
      bcc39742
    • Olivier Bertrand's avatar
      - Update version number · b7f352b2
      Olivier Bertrand authored
        modified:   storage/connect/ha_connect.cc
      
      - Include MONGO in all Java enabled distributions
        Mongo will be enabled only for 10.2 and 10.3
        modified:   storage/connect/CMakeLists.txt
      
      - Change JDBC_SUPPORT to JAVA_SUPPORT which also replaces MONGO_SUPPORT
        MONGO_SUPPORT is now just used to enable the MONGO table type
        modified:   storage/connect/filter.cpp
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/ha_connect.h
        modified:   storage/connect/mongo.cpp
        modified:   storage/connect/mycat.cc
        modified:   storage/connect/plgdbutl.cpp
        modified:   storage/connect/tabjson.cpp
        modified:   storage/connect/tabjson.h
      
      - Move MakeSelector function from FILTER to mongo.cpp
        modified:   storage/connect/filter.cpp
        modified:   storage/connect/filter.h
        modified:   storage/connect/cmgoconn.cpp
        modified:   storage/connect/jmgoconn.cpp
        modified:   storage/connect/mongo.cpp
      
      - Do mongo_init only on first use of the MongoDB C Driver
        This will permit to delay load the mongo lib on Windows
        modified:   storage/connect/cmgoconn.cpp
        modified:   storage/connect/cmgoconn.h
        modified:   storage/connect/ha_connect.cc
      
      - Replace NEW_VAR by a test on MYSQL_VERSION_ID
        modified:   storage/connect/ha_connect.cc
      
      - Suppress enable_mongo session variable
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/mycat.cc
      
      - Make some function headers identical in .h and .cc file
        (replacing const char* by PCSZ)
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/ha_connect.h
      
      - Change a parameter type from uchar* to const uchar*
        (for ScanRecord and CheckRecord)
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/ha_connect.h
      
      - Changes on LIKE and NOT LIKE does not fix a bug yet
        modified:   storage/connect/ha_connect.cc
      
      - Suppress PIVOT_SUPPORT (PIVOT type is unconditionnal)
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/mycat.cc
      
      - Change the strz function from inline to static
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/ha_connect.h
      
      - export the JavaConn class and the MgoColumns and IsNum functions
        modified:   storage/connect/javaconn.h
        modified:   storage/connect/json.h
        modified:   storage/connect/mongo.h
      
      - Fix MDEV-13924
        modified:   storage/connect/jdbconn.cpp
      
      - Make a temporary fix for the compiler bug in CalculateArray
        modified:   storage/connect/jsonudf.cpp
        modified:   storage/connect/tabjson.cpp
      
      - Typo
        modified:   storage/connect/jdbccat.h
        modified:   storage/connect/reldef.h
        modified:   storage/connect/tabext.h
        modified:   storage/connect/tabjmg.cpp
        modified:   storage/connect/tabxml.h
        modified:   storage/connect/valblk.h
        modified:   storage/connect/value.h
        modified:   storage/connect/xtable.h
      
      - Fix a bug in MONGO tests by changing 'MONGO' to $TYPE
        modified:   storage/connect/mysql-test/connect/t/mongo_test.inc
      
      - Record test results to reflect all changes
        modified:   storage/connect/mysql-test/connect/r/json_java_2.result
        modified:   storage/connect/mysql-test/connect/r/json_java_3.result
        modified:   storage/connect/mysql-test/connect/r/json_mongo_c.result
        modified:   storage/connect/mysql-test/connect/r/mongo_c.result
        modified:   storage/connect/mysql-test/connect/r/mongo_java_2.result
        modified:   storage/connect/mysql-test/connect/r/mongo_java_3.result
      b7f352b2
  9. 11 Oct, 2017 2 commits
  10. 11 Sep, 2017 2 commits
  11. 05 Sep, 2017 2 commits
    • Olivier Bertrand's avatar
      Merge branch 'ob-10.1' into 10.1 · 2b25447f
      Olivier Bertrand authored
      2b25447f
    • Olivier Bertrand's avatar
      - Update version number · 0f4b5407
      Olivier Bertrand authored
        modified:   storage/connect/ha_connect.cc
      
      - Regard columns with binary charset as string (was binary)
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/tabmysql.cpp
        modified:   storage/connect/tabutil.cpp
      
      - Support length 0 for CHAR and VARCHAR
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/reldef.cpp
        modified:   storage/connect/value.cpp
      
      - Add ACCEPT option for void columns in discovery
        modified:   storage/connect/tabjson.cpp
      
      - Update some tests because of above change
        modified:   storage/connect/mysql-test/connect/r/json_java_2.result
        modified:   storage/connect/mysql-test/connect/r/json_java_3.result
        modified:   storage/connect/mysql-test/connect/r/json_mongo_c.result
        modified:   storage/connect/mysql-test/connect/r/mongo_c.result
        modified:   storage/connect/mysql-test/connect/r/mongo_java_2.result
        modified:   storage/connect/mysql-test/connect/r/mongo_java_3.result
        modified:   storage/connect/mysql-test/connect/r/odbc_oracle.result
        modified:   storage/connect/mysql-test/connect/r/updelx.result
        modified:   storage/connect/mysql-test/connect/t/mongo_test.inc
      0f4b5407
  12. 02 Sep, 2017 2 commits
  13. 31 Aug, 2017 1 commit
  14. 30 Aug, 2017 2 commits
  15. 29 Aug, 2017 3 commits
    • Jan Lindström's avatar
    • Olivier Bertrand's avatar
      - New distribution enabling or disabling the MONGO table type · 5c42d86a
      Olivier Bertrand authored
        modified:   storage/connect/CMakeLists.txt
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/mycat.cc
      
      - Extend SRCDEF parameter processing to MYSQL
        modified:   storage/connect/tabext.cpp
        modified:   storage/connect/tabext.h
        modified:   storage/connect/tabmysql.cpp
      
      - Typo
        modified:   storage/connect/mysql-test/connect/std_data/Mongo2.jar
        modified:   storage/connect/mysql-test/connect/std_data/Mongo3.jar
      5c42d86a
    • Jan Lindström's avatar
      MDEV-13557: Startup failure, unable to decrypt ibdata1 · 352d27ce
      Jan Lindström authored
      Fixes also MDEV-13488: InnoDB writes CRYPT_INFO even though
      encryption is not enabled.
      
      Problem was that we created encryption metadata (crypt_data) for
      system tablespace even when no encryption was enabled and too early.
      System tablespace can be encrypted only using key rotation.
      
      Test innodb-key-rotation-disable, innodb_encryption, innodb_lotoftables
      require adjustment because INFORMATION_SCHEMA INNODB_TABLESPACES_ENCRYPTION
      contain row only if tablespace really has encryption metadata.
      
      fil_crypt_set_thread_cnt: Send message to background encryption threads
      if they exits when they are ready. This is required to find tablespaces
      requiring key rotation if no other changes happen.
      
      fil_crypt_find_space_to_rotate: Decrease the amount of time waiting
      when nothing happens to better enable key rotation on startup.
      
      fsp_header_init: Write encryption metadata to page 0 only if tablespace is
      encrypted or encryption is disabled by table option.
      
      i_s_dict_fill_tablespaces_encryption : Skip tablespaces that do not
      contain encryption metadata. This is required to avoid too early
      wait condition trigger in encrypted -> unencrypted state transfer.
      
      open_or_create_data_files: Do not create encryption metadata
      by default to system tablespace.
      352d27ce
  16. 28 Aug, 2017 5 commits
  17. 27 Aug, 2017 2 commits
    • Olivier Bertrand's avatar
      Merge branch 'ob-10.1' into 10.1 · af727451
      Olivier Bertrand authored
      af727451
    • Olivier Bertrand's avatar
      - Fix MDEV-13621 JDBC UPDATE containing single or double quote chars produces wrong result · 5b998bf9
      Olivier Bertrand authored
        in ha_connect::GetStringOption
        modified:   storage/connect/ha_connect.cc
      
      - Begin implement data type BINARY
        modified:   storage/connect/ha_connect.cc
        modified:   storage/connect/myutil.cpp
        modified:   storage/connect/valblk.cpp
        modified:   storage/connect/valblk.h
        modified:   storage/connect/value.cpp
      
      - Fix MDEV-12422 CONNECT Engine to support CHECK TABLE
        Adding a fake check function returning HA_ADMIN_OK.
        modified:   storage/connect/ha_connect.h
      
      - Treat TBL (thread) as local when connected to the current server
        and return by timeout when a TBL remote table connection fail (Thread only)
        modified:   storage/connect/myconn.cpp
        modified:   storage/connect/tabmysql.h
        modified:   storage/connect/tabtbl.cpp
        modified:   storage/connect/tabtbl.h
      
      - Update some tests and result files
        Add test output to tbl_thread.test tryng to understand failure
        modified:   storage/connect/mysql-test/connect/r/tbl_thread.result
        modified:   storage/connect/mysql-test/connect/t/tbl_thread.test
        modified:   storage/connect/mysql-test/connect/r/updelx.result
      
      - Add the GetCsName function
        modified:   storage/connect/reldef.h
      5b998bf9
  18. 25 Aug, 2017 1 commit
    • Marko Mäkelä's avatar
      MDEV-13637 InnoDB change buffer housekeeping can cause redo log overrun and possibly deadlocks · 582545a3
      Marko Mäkelä authored
      The function ibuf_remove_free_page() may be called while the caller
      is holding several mutexes or rw-locks. Because of this, this
      housekeeping loop may cause performance glitches for operations that
      involve tables that are stored in the InnoDB system tablespace.
      Also deadlocks might be possible.
      
      The worst impact of all is that due to the mutexes being held, calls to
      log_free_check() had to be skipped during this housekeeping.
      This means that the cyclic InnoDB redo log may be overwritten.
      If the system crashes during this, it would be unable to recover.
      
      The entry point to the problematic code is ibuf_free_excess_pages().
      It would make sense to call it before acquiring any mutexes or rw-locks,
      in any 'pessimistic' operation that involves the system tablespace.
      
      fseg_create_general(), fseg_alloc_free_page_general(): Do not call
      ibuf_free_excess_pages() while potentially holding some latches.
      
      ibuf_remove_free_page(): Do call log_free_check(), like every operation
      that is about to generate redo log should do.
      
      ibuf_free_excess_pages(): Remove some assertions that are replaced
      by stricter assertions in the log_free_check() that is now called by
      ibuf_remove_free_page().
      
      row_ins_sec_index_entry(), row_undo_ins_remove_sec_low(),
      row_undo_mod_del_mark_or_remove_sec_low(),
      row_undo_mod_del_unmark_sec_and_undo_update(): Call
      ibuf_free_excess_pages() if the operation may involve allocating pages
      and change buffering in the system tablespace.
      582545a3
  19. 24 Aug, 2017 3 commits
  20. 23 Aug, 2017 3 commits