Olivier Bertrand
f5cd810629
Update storage/connect/JavaWrappers.jar
2017-07-25 00:21:45 +02:00
Olivier Bertrand
376d1c433c
Update storage/connect/JavaWrappers.jar
2017-07-24 00:05:07 +02:00
Olivier Bertrand
510e67c6fd
Fix discovery crash for Java Mongo tables. Modified: storage/connect/tabjmg.cpp
2017-07-23 12:41:44 +02:00
Olivier Bertrand
7388f95319
-- Last wrappers version with support of Java Mongo discovery.
...
modified: storage/connect/JavaWrappers.jar
-- Typo
modified: storage/connect/ha_connect.cc
modified: storage/connect/plgdbutl.cpp
2017-07-23 11:58:20 +02:00
Olivier Bertrand
cfe3252afe
-- No suppressing of the GetPlug function. It is GetUser that can cause memory leak
...
when xp is modified. The old xp must be poped or is never freed.
modified: storage/connect/ha_connect.cc
2017-07-22 17:23:26 +02:00
Olivier Bertrand
3329fbae19
-- Suppress the GetPlug function causing memory leak
...
modified: storage/connect/ha_connect.h
modified: storage/connect/ha_connect.cc
-- Trace work storage allocation and freeing in DEVELOPMENT mode
(Fix a compile error)
modified: storage/connect/plugutil.cpp
2017-07-22 00:21:59 +02:00
Olivier Bertrand
6fdd5cda6a
Fix compile error. Modified user_connect.cc ha_connect.cc
2017-07-21 16:26:08 +02:00
Olivier Bertrand
8476d3052a
-- Add mutex for user_connect handling
...
modified: storage/connect/ha_connect.cc
modified: storage/connect/user_connect.cc
modified: storage/connect/plgdbutl.cpp
modified: storage/connect/user_connect.cc
-- Trace work storage allocation and freeing in DEVELOPMENT mode
modified: storage/connect/ha_connect.cc
modified: storage/connect/jsonudf.cpp
modified: storage/connect/plugutil.cpp
2017-07-21 15:24:13 +02:00
Olivier Bertrand
df091237a8
Modified /storage/connect/value.cpp line 668
2017-07-20 11:19:44 +02:00
Olivier Bertrand
e99af2a3fa
-- Fix warnings from the new GCC 7
...
modified: storage/connect/ha_connect.cc
-- Set NULL false in SetJsonValue
modified: storage/connect/jsonudf.cpp
modified: storage/connect/tabjson.cpp
2017-07-19 23:30:40 +02:00
Olivier Bertrand
ad2a4c42b6
Parenthesize set null in SetValue_pval. Modified /storage/connect/value.cpp
2017-07-19 18:31:40 +02:00
Olivier Bertrand
e05920f783
-- Check whether USERBLK still exists in PlugExit
...
modified: storage/connect/connect.cc
modified: storage/connect/plugutil.cpp
modified: storage/connect/jsonudf.cpp
-- Update result from json_udf test
modified: storage/connect/mysql-test/connect/r/json_udf.result
2017-07-19 00:16:58 +02:00
Olivier Bertrand
38c9c0d22b
Fix compile warnings and errors for nullptr. Modified /storage/connect/tabjmg (cpp and h)
2017-07-18 16:12:32 +02:00
Olivier Bertrand
f590296c28
-- Finalize work on MongoDB access
...
Implement discovery for the MongoDB Java Driver
Create classes to minimize code and avoid dupicates
Rearrange and rename implied files
modified: storage/connect/CMakeLists.txt
renamed: storage/connect/mongofam.cpp -> storage/connect/cmgfam.cpp
renamed: storage/connect/mongofam.h -> storage/connect/cmgfam.h
modified: storage/connect/cmgoconn.h
modified: storage/connect/javaconn.h
modified: storage/connect/jdbconn.cpp
modified: storage/connect/jmgoconn.cpp
modified: storage/connect/jmgoconn.h
modified: storage/connect/mongo.cpp
modified: storage/connect/mongo.h
renamed: storage/connect/tabmgo.cpp -> storage/connect/tabcmg.cpp
renamed: storage/connect/tabmgo.h -> storage/connect/tabcmg.h
modified: storage/connect/tabjmg.cpp
modified: storage/connect/tabjmg.h
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
-- Trace Sarea allocation and freeing
modified: storage/connect/connect.cc
modified: storage/connect/plugutil.cpp
modified: storage/connect/user_connect.cc
-- Null Json values where not mark as null in JSNX::SetJsonValue
This was added in TYPE_NULL (declared as TYPE_VOID)
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
-- Null JValues are ignored in JSNX::CalculateArray
Also done in tabjson.cpp for JSONCOL::CalculateArray
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/tabjson.cpp
-- Null JSON values now represented by connect_json_null session variable
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/tabjson.cpp
-- JVALUE has size = 1
modified: storage/connect/json.h
-- Fix by vuvova because Debian compilation failure.
modified: storage/connect/value.cpp
2017-07-18 13:16:55 +02:00
Olivier Bertrand
a9d32010d0
- Fix MDEV-13239 Suppress the restriction about no blanks
...
around , and = in the OPTION_LIST.
modified: storage/connect/ha_connect.cc
2017-07-04 19:18:14 +02:00
Olivier Bertrand
7542aff665
Merge branch 'ob-10.2' of https://github.com/Buggynours/MariaDB into ob-10.2
2017-07-03 22:35:15 +02:00
Olivier Bertrand
b63f847743
- Suppress warning when creating mongo JSON tables
...
modified: storage/connect/ha_connect.cc
- Add catalog table for Mongo java driver tables
modified: storage/connect/mongo.cpp
modified: storage/connect/mongo.h
modified: storage/connect/tabjmg.cpp
modified: storage/connect/tabjmg.h
2017-07-03 22:28:55 +02:00
Olivier Bertrand
0631cdab4b
Define nullptr in jdbconn.cpp
2017-07-02 23:33:22 +02:00
Olivier Bertrand
94e5d7de85
- Add Support of the MongoDB Java Driver.
...
modified: storage/connect/CMakeLists.txt
modified: storage/connect/JavaWrappers.jar
modified: storage/connect/colblk.h
modified: storage/connect/filter.cpp
modified: storage/connect/filter.h
modified: storage/connect/ha_connect.cc
modified: storage/connect/ha_connect.h
modified: storage/connect/jdbccat.h
modified: storage/connect/jdbconn.cpp
modified: storage/connect/jdbconn.h
modified: storage/connect/mongofam.cpp
modified: storage/connect/mongofam.h
modified: storage/connect/mycat.cc
modified: storage/connect/mycat.h
modified: storage/connect/tabext.h
modified: storage/connect/tabjdbc.cpp
modified: storage/connect/tabjdbc.h
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
modified: storage/connect/tabmgo.cpp
modified: storage/connect/tabmgo.h
created: storage/connect/Mongo2Interface.java
created: storage/connect/Mongo3Interface.java
created: storage/connect/cmgoconn.cpp
created: storage/connect/cmgoconn.h
created: storage/connect/javaconn.cpp
created: storage/connect/javaconn.h
created: storage/connect/jmgfam.cpp
created: storage/connect/jmgfam.h
created: storage/connect/jmgoconn.cpp
created: storage/connect/jmgoconn.h
created: storage/connect/mongo.cpp
created: storage/connect/mongo.h
created: storage/connect/tabjmg.cpp
created: storage/connect/tabjmg.h
- tdbp not initialized when catched exception
in CntGetTDB (connect.cc line 188)
modified: storage/connect/connect.h
- CheckCleanup should sometimes doing cleanup on pure info
Sometimes MariaDB loops on info to get the size of all tables in a database.
This can sometimes fail by exhausted memory.
CheckCleanup now have a force boolean parameter (defaulting to false)
modified: storage/connect/ha_connect.cc
modified: storage/connect/user_connect.cc
modified: storage/connect/user_connect.h
Change the copyright of some source files
modified: storage/connect/connect.cc
modified: storage/connect/connect.h
modified: storage/connect/engmsg.h
modified: storage/connect/global.h
modified: storage/connect/ha_connect.cc
modified: storage/connect/ha_connect.h
modified: storage/connect/msgid.h
modified: storage/connect/mycat.cc
modified: storage/connect/mycat.h
modified: storage/connect/os.h
modified: storage/connect/osutil.c
modified: storage/connect/osutil.h
modified: storage/connect/user_connect.cc
modified: storage/connect/user_connect.h
2017-07-02 22:41:11 +02:00
Olivier Bertrand
c51548d6b4
Fix unhandled exception:
...
Force type int for ENUMs.
Replace remaining longjmp.
modified: storage/connect/array.cpp
modified: storage/connect/colblk.cpp
modified: storage/connect/connect.cc
modified: storage/connect/filter.cpp
modified: storage/connect/jdbconn.cpp
modified: storage/connect/plgdbutl.cpp
modified: storage/connect/tabdos.cpp
modified: storage/connect/tabvir.cpp
modified: storage/connect/tabxml.cpp
modified: storage/connect/value.cpp
modified: storage/connect/xobject.cpp
2017-06-11 17:22:56 +02:00
Olivier Bertrand
f3452fcd84
Add MONGO catalog table
...
modified: storage/connect/tabmgo.cpp
modified: storage/connect/tabmgo.h
2017-06-10 00:52:56 +02:00
Olivier Bertrand
da3c3b903f
Fix MDEV-12973: Blank columns querying SQL Server
...
Added support of NCHAR, NVARCHAR an ROWID JDBC types.
modified: storage/connect/jdbconn.cpp
2017-06-08 18:01:47 +02:00
Olivier Bertrand
5b534a6889
Fix MDEV-12969. Crash during inserting binary value in Connect table.
...
Seems due to making an index on unsigned integer that triggers an
un-handled THROW.
modified: storage/connect/tabdos.cpp
modified: storage/connect/xindex.cpp
2017-06-06 17:28:26 +02:00
Olivier Bertrand
c746b768ad
Tabname defaults to the table name for MONGO tables
...
modified: storage/connect/ha_connect.cc
2017-06-03 23:33:51 +02:00
Olivier Bertrand
aef1493224
Protect Info function against NULL g pointer
...
modified: storage/connect/ha_connect.cc
Update failing test
modified: storage/connect/mysql-test/connect/t/secure_file_priv.test
2017-06-01 10:14:03 +02:00
Olivier Bertrand
de1a9b172a
Add table option FILTER used by Mongo and Json tables.
...
modified: storage/connect/ha_connect.cc
modified: storage/connect/mongofam.cpp
modified: storage/connect/mycat.h
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
modified: storage/connect/tabmgo.cpp
modified: storage/connect/tabmgo.h
Fix a regression bug in MongoFam
(all = true only when no Options)
modified: storage/connect/mongofam.cpp
Fix a regression bug in JsonCol
(in JSONCOL::GetJpath)
modified: storage/connect/tabjson.cpp
2017-05-29 19:46:59 +02:00
Olivier Bertrand
cbdfdfc829
Add CHECK TABLE to the list of accepted commands.
...
This is to avoid an error to be reported when executing this command on a CONNECT table.
modified: storage/connect/ha_connect.cc
2017-05-28 12:43:54 +02:00
Olivier Bertrand
f5dfd9f6cd
Use english error msg in xml.result
2017-05-26 14:36:15 +02:00
Olivier Bertrand
b72c4e50d6
Missing quote in infoschema2-9739.result
2017-05-26 14:29:04 +02:00
Olivier Bertrand
bffa06c7fa
Try to fix failing tests on LINUX
...
modified: storage/connect/mysql-test/connect/r/alter_xml2.result
modified: storage/connect/mysql-test/connect/r/infoschema2-9739.result
modified: storage/connect/mysql-test/connect/r/xml2_grant.result
modified: storage/connect/mysql-test/connect/r/xml2_mdev5261.result
modified: storage/connect/mysql-test/connect/r/xml_mdev5261.result
modified: storage/connect/mysql-test/connect/t/xml2_mdev5261.test
modified: storage/connect/mysql-test/connect/t/xml_mdev5261.test
2017-05-26 11:31:36 +02:00
Olivier Bertrand
e58620cd63
Try to fix failing tests
...
modified: storage/connect/mysql-test/connect/r/alter_xml2.result
modified: storage/connect/mysql-test/connect/r/infoschema2-9739.result
modified: storage/connect/mysql-test/connect/r/xml2_mdev5261.result
2017-05-25 23:51:57 +02:00
Olivier Bertrand
7f02ab70b3
Recognize xmlsup option case insensitive
...
modified: storage/connect/ha_connect.cc
Update tests to reflect recent changes, in particular new Jpath syntax
modified: storage/connect/ha_connect.cc
modified: storage/connect/mysql-test/connect/r/alter_xml.result
modified: storage/connect/mysql-test/connect/r/bin.result
modified: storage/connect/mysql-test/connect/r/dir.result
modified: storage/connect/mysql-test/connect/r/grant.result
modified: storage/connect/mysql-test/connect/r/grant2.result
modified: storage/connect/mysql-test/connect/r/infoschema-9739.result
modified: storage/connect/mysql-test/connect/r/ini_grant.result
modified: storage/connect/mysql-test/connect/r/jdbc_new.result
modified: storage/connect/mysql-test/connect/r/mysql_discovery.result
modified: storage/connect/mysql-test/connect/r/mysql_exec.result
modified: storage/connect/mysql-test/connect/r/mysql_grant.result
modified: storage/connect/mysql-test/connect/r/mysql_new.result
modified: storage/connect/mysql-test/connect/r/unsigned.result
modified: storage/connect/mysql-test/connect/r/upd.result
modified: storage/connect/mysql-test/connect/r/xml.result
modified: storage/connect/mysql-test/connect/r/xml_grant.result
modified: storage/connect/mysql-test/connect/r/xml_html.result
modified: storage/connect/mysql-test/connect/r/xml_mdev5261.result
modified: storage/connect/mysql-test/connect/r/xml_mult.result
modified: storage/connect/mysql-test/connect/r/xml_zip.result
modified: storage/connect/mysql-test/connect/t/alter_xml.test
modified: storage/connect/mysql-test/connect/t/dir.test
modified: storage/connect/mysql-test/connect/t/infoschema-9739.test
modified: storage/connect/mysql-test/connect/t/jdbc_new.test
modified: storage/connect/mysql-test/connect/t/mysql_exec.test
modified: storage/connect/mysql-test/connect/t/mysql_new.test
modified: storage/connect/mysql-test/connect/t/unsigned.test
modified: storage/connect/mysql-test/connect/t/upd.test
modified: storage/connect/mysql-test/connect/t/xml.test
modified: storage/connect/mysql-test/connect/t/xml_grant.test
modified: storage/connect/mysql-test/connect/t/xml_html.test
modified: storage/connect/mysql-test/connect/t/xml_mdev5261.test
modified: storage/connect/mysql-test/connect/t/xml_mult.test
modified: storage/connect/mysql-test/connect/t/xml_zip.test
2017-05-25 21:43:11 +02:00
Olivier Bertrand
46cf1a0db3
Fix bug: Discovery of JSON table fails in DEBUG mode
...
when NO MONGO support. (tdb->Uri is uninitialized)
modified: storage/connect/tabjson.cpp
2017-05-23 23:02:48 +02:00
Olivier Bertrand
3e36eb230b
Fix gcc compiler warnings reported by Sergei
...
modified: storage/connect/array.cpp
modified: storage/connect/array.h
modified: storage/connect/blkfil.cpp
modified: storage/connect/blkfil.h
modified: storage/connect/block.h
modified: storage/connect/colblk.cpp
modified: storage/connect/colblk.h
modified: storage/connect/csort.h
modified: storage/connect/filamvct.cpp
modified: storage/connect/filter.cpp
modified: storage/connect/filter.h
modified: storage/connect/global.h
modified: storage/connect/json.h
modified: storage/connect/plgdbsem.h
modified: storage/connect/plgdbutl.cpp
modified: storage/connect/tabcol.cpp
modified: storage/connect/tabcol.h
modified: storage/connect/tabdos.cpp
modified: storage/connect/tabdos.h
modified: storage/connect/tabjson.cpp
modified: storage/connect/table.cpp
modified: storage/connect/tabodbc.cpp
modified: storage/connect/tabodbc.h
modified: storage/connect/tabsys.h
modified: storage/connect/tabxml.h
modified: storage/connect/value.cpp
modified: storage/connect/value.h
modified: storage/connect/xindex.cpp
modified: storage/connect/xindex.h
modified: storage/connect/xobject.cpp
modified: storage/connect/xobject.h
modified: storage/connect/xtable.h
Set values as nullable when retrieving catalog info
modified: storage/connect/jdbconn.cpp
modified: storage/connect/mysql-test/connect/r/odbc_oracle.result
modified: storage/connect/odbconn.cpp
Change format of Jpath
modified: storage/connect/json.cpp
modified: storage/connect/jsonudf.cpp
modified: storage/connect/mysql-test/connect/r/json.result
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/mysql-test/connect/r/json_udf_bin.result
modified: storage/connect/mysql-test/connect/r/zip.result
modified: storage/connect/mysql-test/connect/t/json.test
modified: storage/connect/mysql-test/connect/t/json_udf.test
modified: storage/connect/mysql-test/connect/t/json_udf_bin.test
modified: storage/connect/mysql-test/connect/t/zip.test
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
modified: storage/connect/tabmgo.cpp
Change null representation from ??? to <null>
modified: storage/connect/json.cpp
Change the name of UDF that are equal to a native JSON function name
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
modified: storage/connect/mysql-test/connect/t/json_udf.inc
modified: storage/connect/mysql-test/connect/t/json_udf2.inc
Fix bug in making JSON project info
modified: storage/connect/mongofam.cpp
Fix COMPUTE when one argument is null
modified: storage/connect/value.cpp
Value is null only when nullable
modified: storage/connect/value.h
2017-05-23 19:35:50 +02:00
Olivier Bertrand
e8333389c8
.gitignore
2017-05-18 12:57:24 +02:00
Sergei Petrunia
fff61e31ec
Fix a compiler warning
2017-05-17 14:44:16 +03:00
Monty
f7dab76aa2
MDEV-12756 rpl.rpl_killed_ddl fails in buildbot with 'Can't find record'
...
The issue was that my_errno was not set properly when a repair was killed,
which confused the rpl_killed_ddl script.
I also added an extra test line in varchar.inc to ensure we don't give
duplicate error rows.
2017-05-17 00:00:27 +03:00
Elena Stepanova
ca7cf69cb1
Additions to 10.2.6 unstable-tests list
2017-05-15 02:09:28 +03:00
Marko Mäkelä
f9069a3dc0
MDEV-12674 Post-merge fix: Include accidentally omitted changes
...
In 10.2, the definition of simple_counter resides in the file
sync0types.h, not in the file os0sync.h which has been removed.
2017-05-12 15:44:17 +03:00
Marko Mäkelä
b9474b5d51
Merge 10.1 into 10.2
2017-05-12 13:29:24 +03:00
Marko Mäkelä
03dca7a333
Merge 10.0 into 10.1
2017-05-12 13:12:45 +03:00
Marko Mäkelä
ff16609374
MDEV-12674 Innodb_row_lock_current_waits has overflow
...
There is a race condition related to the variable
srv_stats.n_lock_wait_current_count, which is only
incremented and decremented by the function lock_wait_suspend_thread(),
The incrementing is protected by lock_sys->wait_mutex, but the
decrementing does not appear to be protected by anything.
This mismatch could allow the counter to be corrupted when a
transactional InnoDB table or record lock wait is terminating
roughly at the same time with the start of a wait on a
(possibly different) lock.
ib_counter_t: Remove some unused methods. Prevent instantiation for N=1.
Add an inc() method that takes a slot index as a parameter.
single_indexer_t: Remove.
simple_counter<typename Type, bool atomic=false>: A new counter wrapper.
Optionally use atomic memory operations for modifying the counter.
Aligned to the cache line size.
lsn_ctr_1_t, ulint_ctr_1_t, int64_ctr_1_t: Define as simple_counter<Type>.
These counters are either only incremented (and we do not care about
losing some increment operations), or the increment/decrement operations
are protected by some mutex.
srv_stats_t::os_log_pending_writes: Document that the number is protected
by log_sys->mutex.
srv_stats_t::n_lock_wait_current_count: Use simple_counter<ulint, true>,
that is, atomic inc() and dec() operations.
lock_wait_suspend_thread(): Release the mutexes before incrementing
the counters. Avoid acquiring the lock mutex if the lock wait has
already been resolved. Atomically increment and decrement
srv_stats.n_lock_wait_current_count.
row_insert_for_mysql(), row_update_for_mysql(),
row_update_cascade_for_mysql(): Use the inc() method with the trx->id
as the slot index. This is a non-functional change, just using
inc() instead of add(1).
buf_LRU_get_free_block(): Replace the method add(index, n) with inc().
There is no slot index in the simple_counter.
2017-05-12 12:24:53 +03:00
Michael Widenius
9933239956
MDEV-10804 main.stat_tables_par fails sporadically in buildbot
...
This was because of two issues:
- thr_multi_lock_after_thr_lock needed to be hit 3 times before go2 could
be signaled, because 2 of these happened before statistics_update_start
was reached.
- The original code didn't take into accunt that thr_locks can be executed in
any random order, which caused sporadic failures when waiting for 1 lock
of 3, as if the locks where in different order, there would be a dead-lock.
Fixed by introducing thr_multi_lock_before_thr_lock which is deterministic.
- Some of the test failures where not noticed as the DEBUG_SYNC timeout
would cause the test to pass (after 300 seconds).
2017-05-11 17:28:47 +03:00
Michael Widenius
1fbf1c6d7c
Build MyRocks as a plugin (as static compilation doesn't work)
2017-05-11 17:08:40 +03:00
Jan Lindström
f4df8c00c9
MDEV-11197: TrxInInnoDB::is_aborted(const trx_t*): Assertion `srv_read_only_mode || trx->in_depth > 0' failed
...
TrxInInnoDB should be constructed to track if a transaction is executing
inside InnoDB code i.e. it is like a gate between Server and InnoDB
::rnd_next() is called from Server and thus construct TrxInInnoDB
also there.
Applied suggested clean-up to TrxInInnoDB class functions enter()
and exit(). Note that exactly original did not work for enter().
2017-05-10 23:13:06 +03:00
Marko Mäkelä
00821c3825
MDEV-12776 Do not create the InnoDB temporary tablespace in innodb_read_only mode
...
The InnoDB temporary tablespace is only usable if innodb_read_only=OFF.
It is useless to create the tablespace in read-only mode, because
CREATE TEMPORARY TABLE is disallowed if innodb_read_only, and nothing
can we written to the temporary tablespace if no temporary tables
can be created.
2017-05-10 20:23:01 +03:00
Sergei Golubchik
fee8d39ecb
MDEV-12754 innodb.truncate_debug fails in buildbot with embedded due to semaphore wait
...
fix sporadic innodb.truncate_purge_debug failures
2017-05-10 18:11:03 +02:00
Oleksandr Byelkin
2819133711
fix 32 bit platform test
2017-05-10 17:57:40 +02:00
Sergei Golubchik
535f489210
update to the latest C/C to fix failures on Windows
2017-05-10 14:03:59 +02:00
Sergei Golubchik
8cec525644
skip innodb.innodb_xtradb_compat on Windows
...
because it tests for variables that aren't compiled for Windows,
like --innodb-priority-cleaner
2017-05-10 13:42:27 +02:00