Commit graph

9785 commits

Author SHA1 Message Date
Sergei Golubchik
bb1ce607e3 mroonga/groonga: CMakeLists.txt
* use the same HAVE_C/CXX_ variables for compiler flag tests as the rest of
  the server and tokudb - to use cached results
* plugin's name should be "mroonga" not "ha_mroonga"
* don't use set_property(TARGET plugin_name ...), it aborts cmake when a plugin
  id disabled, because the target doesn't exists in that case

result: mroonga can now be disabled from cmake command line
2014-11-18 22:26:20 +01:00
Sergei Golubchik
303eec5774 MDEV-6880 Can't define CURRENT_TIMESTAMP as default value for added column
ALTER TABLE: don't fill default values per row, do it once.
And do it in two places - for copy_data_between_tables() and for online ALTER.

Also, run function_defaults test both for MyISAM and for InnoDB.
2014-11-18 22:25:33 +01:00
Sergei Golubchik
302b50fa30 TokuDB 7.5.3 2014-11-18 17:54:00 +01:00
Rich Prohaska
ea9bd89327 DB-770 tokudb::extra HA_EXTRA_NOT_USED should explicitly do nothing 2014-11-17 14:57:06 -05:00
Olivier Bertrand
cfa872f6c8 - Commit resolved conflicted files
modified:
  storage/connect/engmsg.h
  storage/connect/filamtxt.cpp
2014-11-16 20:14:36 +01:00
Olivier Bertrand
b9165cb58d - Remove gcc warning (no previous declaration of msglang)
modified:
  storage/connect/ha_connect.cc

- Define strcasecmp for Linux
modified:
  storage/connect/rcmsg.c

- Avoid potential buffer overflow
modified:
  storage/connect/plgdbutl.cpp
  
- Change %d in %lld in VALUE_TOO_BIG message
modified:
  storage/connect/encas.h
  storage/connect/english.msg
  storage/connect/frcas.h
  storage/connect/french.msg
  storage/connect/frmsg.h
2014-11-16 01:16:51 +01:00
Olivier Bertrand
5d8311960a - Implement the NEWMSG and XMSG methods
They are still experimental and should not be used in production.
added:
  storage/connect/encas.h
  storage/connect/english.msg
  storage/connect/enids.h
  storage/connect/frcas.h
  storage/connect/french.msg
  storage/connect/frids.h
  storage/connect/frmsg.h
modified:
  storage/connect/connect.cc
  storage/connect/engmsg.h
  storage/connect/filamdbf.cpp
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/msgid.h
  storage/connect/plgdbutl.cpp
  storage/connect/plugutil.c
  storage/connect/rcmsg.c
  storage/connect/resource.h
  storage/connect/tabfmt.h

- Fix global variable not being properly initialized (MDEV-6690, MDEV-7094)
modified:
  storage/connect/ha_connect.cc
  storage/connect/plugutil.c
  storage/connect/user_connect.cc
  storage/connect/xindex.cpp

- Implement Rewind for ODBC tables (MDEV-7097)
modified:
  storage/connect/odbconn.cpp
  storage/connect/odbconn.h
  storage/connect/tabmysql.cpp
  storage/connect/tabodbc.cpp

- Reset N when reopening MYSQL tables
modified:
  storage/connect/tabmysql.cpp
2014-11-15 18:28:24 +01:00
Rich Prohaska
50b928b046 DB-759 test and fix alter table bug with cardinality data 2014-11-13 10:53:22 -05:00
Sergei Golubchik
81d7e2f61c MDEV-7003 test-alter-table crashes debug build due to double free of plugin
correct the buffer boundary check
2014-11-13 13:40:19 +01:00
Rich Prohaska
2494bde757 DB-759 fix tokudb::alter_card to copy ALL of the cardinality data not just the low byte 2014-11-12 21:06:51 -05:00
Rich Prohaska
8a7f07711e increase test coverage of the cardinality code 2014-11-12 18:30:16 -05:00
Rich Prohaska
ca67239c51 speed up tokudb handler unit tests 2014-11-12 14:36:08 -05:00
Rich Prohaska
fa92c90393 speed up tokudb handler unit tests 2014-11-12 08:38:04 -05:00
Jan Lindström
b7d32e053d MDEV-7083: sys_vars.innodb_sched_priority* tests fail in
buildbot on work-amd64-valgrind

Fixed issue by finding out first the current used priority
for both treads and using that seeing did we really change
the priority or not.
2014-11-14 09:13:13 +02:00
Jan Lindström
0f32299437 MDEV-7035: Remove innodb_io_capacity setting depending on
setting of innodb_io_capacity_max

(a) Changed the behaviour so that if you set innodb_io_capacity to a 
value > innodb_io_capacity_max that the value is accepted AND 
that innodb_io_capacity_max = innodb_io_capacity * 2.

(b) If someone wants to reduce innodb_io_capacity_max and 
reduce it below innodb_io_capacity then innodb_io_capacity 
should be reduced to the same level as innodb_io_capacity_max.

In both cases give a warning to user.
2014-11-13 13:24:26 +02:00
Jan Lindström
bff2d46bf7 MDEV-7100: InnoDB error monitor might unnecessary wait log_sys mutex
Analysis: InnoDB error monitor is responsible to call every second
sync_arr_wake_threads_if_sema_free() to wake up possible hanging
threads if they are missed in mutex_signal_object. This is not
possible if error monitor itself is on mutex/semaphore wait. We
should avoid all unnecessary mutex/semaphore waits on error monitor.
Currently error monitor calls function buf_flush_stat_update()
that calls log_get_lsn() function and there we will try to get
log_sys mutex. Better, solution for error monitor is that in
buf_flush_stat_update() we will try to get lsn with
mutex_enter_nowait() and if we did not get mutex do not update
the stats.

Fix: Use log_get_lsn_nowait() function on buf_flush_stat_update()
function. If returned lsn is 0, we do not update flush stats.
log_get_lsn_nowait() will use mutex_enter_nowait() and if
we get mutex we return a correct lsn if not we return 0.
2014-11-13 12:00:57 +02:00
Jan Lindström
84f3f3fa1e MDEV-7083: sys_vars.innodb_sched_priority* tests fail in buildbot
on work-amd64-valgrind.

Fixed issue by finding out first the current used priority
for both treads and using that seeing did we really change
the priority or not.
2014-11-13 11:05:22 +02:00
Elena Stepanova
62bea520f9 MDEV-7072 mroonga/wrapper.version_56_or_later_performance_schema fails in buildbot on a build without perfschema
Added a call for the include file to check for the presence of perfschema
2014-11-12 05:56:45 +04:00
Elena Stepanova
570c771bc7 MDEV-7071 Spider tests fail due to an unknown option --skip-performance-schema on a build without perfschema
Made the option --loose
2014-11-12 05:52:53 +04:00
Rich Prohaska
43c176a779 speed up tokudb handler unit tests 2014-11-10 16:34:55 -05:00
Olivier Bertrand
9ade2d088d - FIX ftell error when the line endings do not match the declared or
default ending. Also takes care of files having mixed line endings.
  This is done by never using text mode for streams and handle the line
  endings in reading and writing. (MDEV-7030)
modified:
  storage/connect/filamtxt.cpp
2014-11-09 14:18:44 +01:00
Elena Stepanova
b99328bbf8 Re-enabling tests disabled due to MDEV-5266 and MySQL:65225 (fixed now) 2014-11-17 20:28:18 +04:00
Jan Lindström
8c7ef99bb2 MDEV-7100: InnoDB error monitor might unnecessary wait log_sys mutex
Analysis: InnoDB error monitor is responsible to call every second
sync_arr_wake_threads_if_sema_free() to wake up possible hanging 
threads if they are missed in mutex_signal_object. This is not 
possible if error monitor itself is on mutex/semaphore wait. We 
should avoid all unnecessary mutex/semaphore waits on error monitor.
Currently error monitor calls function buf_flush_stat_update() 
that calls log_get_lsn() function and there we will try to get 
log_sys mutex. Better, solution for error monitor is that in 
buf_flush_stat_update() we will try to get lsn with 
mutex_enter_nowait() and if we did not get mutex do not update 
the stats.

Fix: Use log_get_lsn_nowait() function on buf_flush_stat_update()
function. If returned lsn is 0, we do not update flush stats. 
log_get_lsn_nowait() will use mutex_enter_nowait() and if
we get mutex we return a correct lsn if not we return 0.
2014-11-13 11:24:19 +02:00
Olivier Bertrand
f3e7e50d9a - Compile protect against not fully implemented optione XMSG and NEWMSG
modified:
  storage/connect/global.h

- Commit typo error
modified:
  storage/connect/tabmul.cpp*
2014-11-08 16:44:52 +01:00
Rich Prohaska
f127e2120c DB-757 compute cardinality when alter table analyze partition is run 2014-11-08 10:36:33 -05:00
Olivier Bertrand
2c6839ff97 - fix typo error
modified:
  storage/connect/tabmul.cpp
2014-11-08 16:29:16 +01:00
Rich Prohaska
695ce3ad29 DB-756 set cardinality data for partitioned tokudb tables 2014-11-08 08:59:55 -05:00
Olivier Bertrand
bd4814328c - Calculate next position in filamap without assuming ENDING option is true.
modified:
  storage/connect/filamap.cpp

- ftell error: indicate in the error msg that is can be due to wrong ENDING value.
  filamtxt.cpp (MDEV-7030)
modified:
  storage/connect/filamtxt.cpp

- Change STRING according to Alexander Barkov remarks.
  Suppress the wrong Strz function. The unconditional function strz is no more
  used for s->db and s->table_name because they are zero terminated.
modified:
  storage/connect/ha_connect.cc
  storage/connect/xobject.cpp

- Change version number
modified:
  storage/connect/filamap.cpp

- Change PATH_MAX to FN_REFLEN (MDEV-7036)
modified:
  storage/connect/os.h
  storage/connect/tabmul.cpp

- Fix bug by adding a void argument for OP_NOT in Makefilter.
modified:
  storage/connect/filter.cpp

- Begin implementing XMSG style
  Two new system variables are defined:
  msg_lang ENUM session
  errmsg_dir_path STR global readonly
  This is a work in progress.
modified:
  storage/connect/ha_connect.cc
  storage/connect/plgdbutl.cpp
  storage/connect/plugutil.c
  storage/connect/rcmsg.c
  storage/connect/resource.h
2014-11-08 13:35:03 +01:00
Rich Prohaska
c14fdb70b1 DB-754 include my_config.h first for mariadb 5.5.40 2014-11-05 11:24:27 -05:00
Rich Prohaska
7adf64d857 DB-730 build tokudb without XA 2014-11-05 04:15:43 -05:00
Kentoku SHIBA
903d145f4d cmake: use "mroonga" instead of "ha_mroonga" for plugin name 2014-11-04 00:40:20 +09:00
Kentoku SHIBA
c65b9ee740 remove needless source tree 2014-11-04 00:09:16 +09:00
Sergei Golubchik
2160646c1d 5.5 merge 2014-11-03 17:47:37 +01:00
Jan Lindström
2da6f7ceba MDEV-7017: Add function to print semaphore waits
Add function to print to stderr all current semaphore 
waits. This function should be able to executed 
inside a gdb/ddd.
2014-11-03 15:43:44 +02:00
Sergei Golubchik
50556e7e9a tokudb post-merge fixes 2014-11-02 17:33:02 +01:00
Sergei Golubchik
a2a18dd9d7 tokudb-7.5.3 2014-11-02 16:47:46 +01:00
Olivier Bertrand
1f9259dfea - Fix MDEV-6988 and MDEV-6994
modified:
  storage/connect/ha_connect.cc
2014-11-01 17:08:39 +01:00
Olivier Bertrand
ea5d7a5cce - Add the new files to the source list
modified:
  storage/connect/CMakeLists.txt

- Check VIR columns when creating the table
modified:
  storage/connect/ha_connect.cc
  
- Add VirColumns declaration to avoid gcc warning
modified:
  storage/connect/tabvir.h
2014-10-31 13:58:43 +01:00
Olivier Bertrand
160708e14c - Adding the VIR table type implementation files
added:
  storage/connect/tabvir.cpp
  storage/connect/tabvir.h
2014-10-31 12:43:55 +01:00
Olivier Bertrand
4a17149ba3 - Add new table type VIR and virtual index
modified:
  storage/connect/connect.cc
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/mycat.cc
  storage/connect/plgdbsem.h

- Get good message when calling ColDB
modified:
  storage/connect/connect.cc

- Fix buffer preparation for BIN files
modified:
  storage/connect/filamfix.cpp

fix error while updating (force fseek)
modified:
  storage/connect/filamfix.cpp

fix error of XCOL column when filtered (typo)
modified:
  storage/connect/tabdos.cpp
  storage/connect/tabxcl.cpp

fix error when indexing on special column
modified:
  storage/connect/tabdos.cpp
2014-10-31 12:28:07 +01:00
Marko Makela
a265914018 Bug#19904003 INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG=1 CAUSES INFINITE PAGE SPLIT
The debug configuration parameter innodb_optimistic_insert_debug
which was introduced for testing corner cases in B-tree handling
had a bug in it. The value 1 would trigger an infinite sequence
of page splits.

Fix: When the value 1 is specified, disable this debug feature.
Approved by Yasufumi Kinoshita
2014-10-30 08:53:46 +02:00
Annamalai Gurusami
ffc33cffe3 Bug #19908343 SERVER CRASHES WHEN EXECUTING ALTER TABLE
Problem:

In the function dict_foreign_remove_from_cache(), the rb tree was updated
without actually verifying whether the given foreign key object is there in the
rb tree or not.  There can be an existing foreign key object with the same id 
in the rb tree, which must not be removed.  Such a scenario comes when an
attempt is made to add a foreign key object with a duplicate identifier.

Solution:

When the foreign key object is removed from the dictionary cache, ensure
that the foreign key object removed from the rbt is the correct one.

rb#7168 approved by Jimmy and Marko.
2014-10-29 16:53:53 +05:30
Jan Lindström
8777e80151 MDEV-6759: innodb valgrind failures
Fix failure seen on dict_foreign_remove_partial().
2014-10-27 16:58:16 +02:00
Marko Makela
c978f6988d Bug#19584379 Reporting corruption may corrupt the innodb data dictionary
dict_set_corrupted(): Use the canonical way of searching for
less-than-equal (PAGE_CUR_LE) and then checking low_match.

The code that was introduced in MySQL 5.5.17 in
    Bug#11830883 SUPPORT "CORRUPTED" BIT FOR INNODB TABLES AND INDEXES
could position the cursor on the page supremum, and then attempt
to overwrite non-existing 7th field of the 1-field supremum record.

Approved by Jimmy Yang
2014-10-27 14:27:08 +02:00
Jan Lindström
85c21dbc47 MDEV-6925: Remove bad "" operators.
Merged Facebook commit ec1aac68c74f3c1e558d057c4c9fcfe6edbbea93
authored by Steaphan Greene from https://github.com/facebook/mysql-5.6

In C++11, "" is not parsed as before.  So "A""B" is not the same as "AB".
Instead, whitespace is required, like: "A" "B"
2014-10-26 07:29:37 +02:00
Jan Lindström
caeffc7a7d MDEV-6926: innodb_rows_updated is misleading on slav
Merged Facebook commit dd2d11be7aaf3be270e740fb95cbc4eacb52f4d7
authored by Rongrong Zhong from https://github.com/facebook/mysql-5.6

This fixes MySQL Bug #68220 innodb_rows_updated is misleading on slave
http://bugs.mysql.com/bug.php?id=68220

Added innodb_system_rows_read/inserted/updated/deleted counters
that are the equivalent of innodb_rows_* but that only account for
changes made to system databases (mysql, information_schame and
preformance_schema). These counters will be used on slaves to
differentiated the updates made on system databases from those made on
user databases.

innodb_rows_* status counters are not updated when innodb_system_rows_*
are updated.

dd2d11be7a
2014-10-26 07:22:51 +02:00
Rich Prohaska
4c57196e02 DB-747 merge mariadb 10 frm hack and dont compile row format compression code 2014-10-25 16:16:23 -04:00
Jan Lindström
60e995cfec MDEV-6930: Make innodb_max_dirty_pages_pct my.cnf variable a double
Merged Facebook commit ecff018632c6db49bad73d9233c3cdc9f41430e9
authored by Steaphan Greene from https://github.com/facebook/mysql-5.6

This change is to fix: http://bugs.mysql.com/62534

This makes innodb_max_dirty_pages_pct a double with min,default,max values
0.001, 75, 99.999.

This also makes innodb_max_dirty_pages_pct_lwm and adaptive_flushing_lwm
doubles, as these sysvars are inter-dependent.

Added more to the BUFFER POOL AND MEMORY section of SHOW INNODB STATUS:
Percent pages dirty: X.X
This is all n_dirty_pages / used_pages
Percent all pages dirty: X.X
This is all n_dirty_pages / all-pages
Max dirty pages percent: X.X
This is innodb_max_dirty_pages_pct

Also changed all of buf from 2 to 3 digits of precision (%.2f -> %.3f).
2014-10-25 09:24:39 +03:00
Jan Lindström
cff0012d28 MDEV-6927: Share more structures
Merge Facebook commit f981a51a47519b0ba527917887f8adc6df9ae147
authored by Steaphan Greene from https://github.com/facebook/mysql-5.6.

This just moves some structure definitions from inside a
single .cc file to a shared .h file, with a few tweaks to
allow these structures to be shared.

On its own, it should have no actual effect. This is needed later.
2014-10-25 08:21:52 +03:00
Jan Lindström
3486135bb5 MDEV-6928: Add trx pointer to struct mtr_t
Merge Facebook commit 25295d003cb0c17aa8fb756523923c77250b3294
authored by Steaphan Greene from https://github.com/facebook/mysql-5.6

This adds a pointer to the trx to each mtr.
This allows the trx to be accessed in parts of the code
where it was otherwise not available. This is needed later.
2014-10-24 22:26:31 +03:00
Jan Lindström
ca0bdc4d5c MDEV-6937: buf_flush_LRU() does not return correct number in case of
compressed pages

buf_flush_LRU() returns the number of pages processed. There are
two types of processing that can happen. A page can get evicted or
a page can get flushed. These two numbers are quite distinct and
should not be mixed.
2014-10-24 22:02:54 +03:00
Olivier Bertrand
652b964827 - Fix a bug in XCOL tables. When a row was filtered internally the XColumn
was not reset causing rows to be lost.
modified:
  storage/connect/connect.cc
  storage/connect/ha_connect.cc
  storage/connect/tabxcl.cpp

- Typo
modified:
  storage/connect/connect.cc
  storage/connect/ha_connect.cc
2014-10-24 19:22:05 +02:00
Rich Prohaska
57f2f606f0 DB-745 merge clustering key is covering key for mariadb 10 2014-10-24 12:34:55 -04:00
Jan Lindström
78e31f0a2e MDEV-6931: Page cleaner should do LRU flushing regardless of server activity
Merge Facebook commit 926a077b14b73c14094de7fc7aa913241b801b4d
authored by Inaam Rana from https://github.com/facebook/mysql-5.6.

This is fix for upstream bugs
http://bugs.mysql.com/bug.php?id=71988
http://bugs.mysql.com/bug.php?id=70500

page_cleaner should work whether or not there is server activity.
Its iterations become a noop when there is no work to do but we
should not tie it to the server activity.

The page_cleaner thread does spurious background flushing
because of conditional sleep between iterations. The solution
is not to make sleep dependent on server activity etc.
2014-10-24 18:58:04 +03:00
Rich Prohaska
ac995231d6 DB-746 merge clustering key is covering key for mariadb 10 2014-10-24 11:23:54 -04:00
Jan Lindström
7e71dfa9f5 MDEV-6933: Spurious lock_wait_timeout_thread wakeup in lock_wait_suspend_thread()
Merged Facebooks commit 6e06bbfa315ffb97d713dd6e672d6054036ddc21
authored by Inaam Rana from https://github.com/facebook/mysql-5.6.

Fixes MySQL bug http://bugs.mysql.com/bug.php?id=72123

lock_timeout thread works in a tight loop waking up every second
and checking for lock_wait_timeout. In addition, when a mysql
thread is forced to wait on a lock, it signals the lock_timeout thread
as well. This call is not required. In a heavily contended workload
each thread going to wait will signal the lock_timeout thread making
it work all the time. As lock_timeout thread scans the array of
waiting threads under lock_sys::wait_mutex which is already very
hot in contneded loads, these extra scans can cause significanct
performance regression.

Also, in various codepaths lock_timeout thread is signalled where
actual intention was to signal the innodb monitor thread.
2014-10-24 17:56:04 +03:00
Olivier Bertrand
c4cf40c21b - Fix bug: Server crash when using a special column in XCOL tables
modified:
  storage/connect/mysql-test/connect/r/xcol.result
  storage/connect/mysql-test/connect/t/xcol.test
  storage/connect/tabxcl.cpp
2014-10-24 16:21:39 +02:00
Jan Lindström
f0debf2feb MDEV-6934: os_event_wait_time_low(): wait time calculation is messed up
Merged Facebook commit bdab302a7e3c37da21a1bffe1550cdbe6c906695
by Inaam Rana from https://github.com/facebook/mysql-5.6.

In os_event_wait_time_low() the logic to calculate abs_time
for wait is broken. The bug has been present at least since
5.5. It gets acutely sensitized when sub-second wait intervals
are passed. It is particularly relevant to us because the
page_cleaner thread will mostly request sub-second wait
intervals. This can potentially lead to a near tight loop
behaviour of page_cleaner with much less sleep then what we'd
actually expect.
2014-10-24 17:11:09 +03:00
Rich Prohaska
ad4af10218 DB-744 ER_GET_ERRNO has additional parameter on MariaDB 10 which crashes tokudb 2014-10-24 05:36:18 -04:00
Kentoku SHIBA
323fe245a0 Disable foreign_key_create test. 2014-10-24 06:37:53 +09:00
Kentoku SHIBA
64593e7c57 Skip Mroonga if platform is big endian. Remove last test disabling. 2014-10-23 00:31:01 +09:00
Olivier Bertrand
4f59b65fb0 - Remove some gcc warnings
modified:
  storage/connect/filamvct.cpp
  storage/connect/ha_connect.cc
2014-10-22 13:51:33 +02:00
Olivier Bertrand
554746afe3 - Fix (gcc error) passing cmd instead of cmd.Getstr() to htrc
modified:
  storage/connect/myconn.cpp

- Remove an unuseful test (gcc warning)
modified:
  storage/connect/myconn.cpp
2014-10-22 12:02:46 +02:00
Kentoku SHIBA
6cd18ec86c Disable tests for Power8. 2014-10-22 03:43:19 +09:00
Olivier Bertrand
56e2771321 1) Handling string memory allocation with a new STRING class. This is only
the beginning. Defining the STRING class and begining to use it (MYSQL)

2) Change the xtrace, use_tempfile and exact_info connect variables from
   GLOBAL to SESSION. Remaining GLOBAL variables have been made readonly.

3) Take care of LEX_STRING variables. The .str should not be regarded as
   allways being 0 terminated. This is handled by the Strz functions that
   make sure to return 0 terminated strings.

Bug fix:
- When inserting in MYSQL table with special column(s) a query such as:
insert into t2 values(0,4,'new04'),(0,5,'new05');
failed saying: column id (the special column) not found in t2.
It is now accepted but must be counted in values (these 0 are ignored)
- ROWID was returning row numbers based 0. Now it is from base 1.

modified:
  storage/connect/array.cpp
  storage/connect/blkfil.cpp
  storage/connect/colblk.cpp
  storage/connect/connect.cc
  storage/connect/filamap.cpp
  storage/connect/filamdbf.cpp
  storage/connect/filamfix.cpp
  storage/connect/filamtxt.cpp
  storage/connect/filamvct.cpp
  storage/connect/filamzip.cpp
  storage/connect/filamzip.h
  storage/connect/filter.cpp
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/libdoc.cpp
  storage/connect/mycat.cc
  storage/connect/myconn.cpp
  storage/connect/odbconn.cpp
  storage/connect/plgdbutl.cpp
  storage/connect/plugutil.c
  storage/connect/reldef.cpp
  storage/connect/tabcol.cpp
  storage/connect/tabdos.cpp
  storage/connect/tabfix.cpp
  storage/connect/tabfmt.cpp
  storage/connect/table.cpp
  storage/connect/tabmul.cpp
  storage/connect/tabmysql.cpp
  storage/connect/tabmysql.h
  storage/connect/taboccur.cpp
  storage/connect/tabodbc.cpp
  storage/connect/tabpivot.cpp
  storage/connect/tabsys.cpp
  storage/connect/tabtbl.cpp
  storage/connect/tabutil.cpp
  storage/connect/tabvct.cpp
  storage/connect/tabwmi.cpp
  storage/connect/tabwmi.h
  storage/connect/tabxcl.cpp
  storage/connect/tabxml.cpp
  storage/connect/user_connect.cc
  storage/connect/valblk.cpp
  storage/connect/value.cpp
  storage/connect/value.h
  storage/connect/xindex.cpp
  storage/connect/xobject.cpp
  storage/connect/xobject.h
  storage/connect/xtable.h
2014-10-21 17:29:51 +02:00
Kentoku SHIBA
7f3d555087 Update Mroonga to the latest version on 2014-10-21T04:51:38+0900 2014-10-21 04:51:38 +09:00
Rich Prohaska
c5bf055079 DB-742 combine mysql and mariadb plugin declarations 2014-10-18 10:58:38 -04:00
Rich Prohaska
cfbe8342da DB-742 use consistent version macros 2014-10-17 21:23:17 -04:00
Rich Prohaska
5788312433 DB-742 set plugin version to tokudb_version_major.tokudb_version_minor 2014-10-17 13:46:15 -04:00
Kristian Nielsen
4c07b93bdb Fix missing UNIV_INTERN on dict_table_check_foreign_keys().
When UNIV_INTERN is missing in built-in XtraDB, this causes the
innodb_plugin to call the XtraDB version of the function instead
of its own (seen in --embedded-server test failure in Buildbot).
This in turn causes bad things to happen in case of difference
between XtranDB and innodb_plugin.
2014-10-20 10:50:10 +02:00
Rich Prohaska
178a511217 DB-742 set the tokudb plugin version string for mariadb 2014-10-16 19:50:53 -04:00
Olivier Bertrand
c65a9fb4c6 - Commit merged change
removed:
  extra/yassl/certs/dsa512.der
  extra/yassl/certs/dsa512.pem
added:
  extra/yassl/certs/dsa1024.der
  extra/yassl/certs/dsa1024.pem
  mysql-test/r/ctype_cp932.result
  mysql-test/r/log_errchk.result
  mysql-test/r/show_bad_definer-5553.result
  mysql-test/suite/heap/btree_varchar_null.result
  mysql-test/suite/heap/btree_varchar_null.test
  mysql-test/suite/innodb/r/foreign-keys.result
  mysql-test/suite/innodb/t/foreign-keys.test
  mysql-test/t/ctype_cp932.test
  mysql-test/t/log_errchk.test
  mysql-test/t/show_bad_definer-5553.test
  storage/tokudb/mysql-test/rpl/disabled.def
  storage/tokudb/mysql-test/tokudb_mariadb/r/mdev6519.result
  storage/tokudb/mysql-test/tokudb_mariadb/t/mdev6519.test
modified:
  client/mysql.cc
  cmake/install_layout.cmake
  config.h.cmake
  debian/dist/Debian/control
  debian/dist/Ubuntu/control
  extra/yassl/README
  extra/yassl/certs/ca-cert.pem
  extra/yassl/certs/client-cert.der
  extra/yassl/certs/client-cert.pem
  extra/yassl/certs/client-key.der
  extra/yassl/certs/client-keyEnc.pem
  extra/yassl/certs/server-cert.pem
  extra/yassl/certs/server-keyEnc.pem
  extra/yassl/include/buffer.hpp
  extra/yassl/include/openssl/ssl.h
  extra/yassl/src/buffer.cpp
  extra/yassl/src/handshake.cpp
  extra/yassl/src/yassl_imp.cpp
  extra/yassl/src/yassl_int.cpp
  extra/yassl/taocrypt/include/asn.hpp
  extra/yassl/taocrypt/include/block.hpp
  extra/yassl/taocrypt/include/integer.hpp
  extra/yassl/taocrypt/include/pwdbased.hpp
  extra/yassl/taocrypt/include/runtime.hpp
  extra/yassl/taocrypt/include/sha.hpp
  extra/yassl/taocrypt/src/aes.cpp
  extra/yassl/taocrypt/src/algebra.cpp
  extra/yassl/taocrypt/src/arc4.cpp
  extra/yassl/taocrypt/src/asn.cpp
  extra/yassl/taocrypt/src/blowfish.cpp
  extra/yassl/taocrypt/src/des.cpp
  extra/yassl/taocrypt/src/integer.cpp
  extra/yassl/taocrypt/src/md5.cpp
  extra/yassl/taocrypt/src/misc.cpp
  extra/yassl/taocrypt/src/rabbit.cpp
  extra/yassl/taocrypt/src/random.cpp
  extra/yassl/taocrypt/src/ripemd.cpp
  extra/yassl/taocrypt/src/sha.cpp
  extra/yassl/taocrypt/src/twofish.cpp
  mysql-test/lib/My/Platform.pm
  mysql-test/r/selectivity_innodb.result
  mysql-test/r/type_newdecimal.result
  mysql-test/r/type_time.result
  mysql-test/t/selectivity_innodb.test
  mysql-test/t/type_newdecimal.test
  mysql-test/t/type_time.test
  packaging/rpm-oel/mysql.spec.in
  plugin/auth_socket/auth_socket.c
  plugin/handler_socket/handlersocket/database.cpp
  plugin/handler_socket/handlersocket/handlersocket.cpp
  plugin/handler_socket/handlersocket/hstcpsvr.cpp
  plugin/handler_socket/libhsclient/hstcpcli.cpp
  plugin/handler_socket/libhsclient/socket.cpp
  plugin/handler_socket/perl-Net-HandlerSocket/HandlerSocket.xs
  plugin/metadata_lock_info/metadata_lock_info.cc
  plugin/server_audit/server_audit.c
  scripts/comp_sql.c
  scripts/mysql_system_tables_fix.sql
  sql-common/client.c
  sql/event_scheduler.cc
  sql/item.cc
  sql/log.cc
  sql/mysqld.cc
  sql/mysqld.h
  sql/opt_range.cc
  sql/sql_acl.cc
  sql/sql_cache.cc
  sql/sql_priv.h
  sql/sql_select.cc
  sql/sql_show.cc
  sql/sql_statistics.cc
  sql/sys_vars.cc
  storage/cassandra/ha_cassandra.cc
  storage/connect/inihandl.c
  storage/connect/libdoc.cpp
  storage/connect/mycat.cc
  storage/connect/tabxml.cpp
  storage/example/ha_example.cc
  storage/federatedx/ha_federatedx.cc
  storage/heap/hp_hash.c
  storage/innobase/api/api0misc.cc
  storage/mroonga/mrn_table.cpp
  storage/oqgraph/ha_oqgraph.cc
  storage/sequence/sequence.cc
  storage/sphinx/snippets_udf.cc
  storage/tokudb/CMakeLists.txt
  storage/tokudb/ft-index/ft/bndata.cc
  storage/tokudb/ft-index/ft/cachetable/cachetable.cc
  storage/tokudb/ft-index/ft/cachetable/checkpoint.cc
  storage/tokudb/ft-index/ft/cursor.cc
  storage/tokudb/ft-index/ft/ft-cachetable-wrappers.cc
  storage/tokudb/ft-index/ft/ft-flusher.cc
  storage/tokudb/ft-index/ft/ft-hot-flusher.cc
  storage/tokudb/ft-index/ft/ft-ops.cc
  storage/tokudb/ft-index/ft/ft-test-helpers.cc
  storage/tokudb/ft-index/ft/ft-verify.cc
  storage/tokudb/ft-index/ft/ft.cc
  storage/tokudb/ft-index/ft/le-cursor.cc
  storage/tokudb/ft-index/ft/loader/dbufio.cc
  storage/tokudb/ft-index/ft/loader/loader.cc
  storage/tokudb/ft-index/ft/loader/pqueue.cc
  storage/tokudb/ft-index/ft/logger/log_upgrade.cc
  storage/tokudb/ft-index/ft/logger/logcursor.cc
  storage/tokudb/ft-index/ft/logger/logfilemgr.cc
  storage/tokudb/ft-index/ft/logger/logformat.cc
  storage/tokudb/ft-index/ft/logger/logger.cc
  storage/tokudb/ft-index/ft/logger/recover.cc
  storage/tokudb/ft-index/ft/node.cc
  storage/tokudb/ft-index/ft/pivotkeys.cc
  storage/tokudb/ft-index/ft/serialize/block_table.cc
  storage/tokudb/ft-index/ft/serialize/compress.cc
  storage/tokudb/ft-index/ft/serialize/ft-node-deserialize.cc
  storage/tokudb/ft-index/ft/serialize/ft-serialize.cc
  storage/tokudb/ft-index/ft/serialize/ft_node-serialize.cc
  storage/tokudb/ft-index/ft/serialize/sub_block.cc
  storage/tokudb/ft-index/ft/txn/roll.cc
  storage/tokudb/ft-index/ft/txn/rollback-apply.cc
  storage/tokudb/ft-index/ft/txn/rollback-ct-callbacks.cc
  storage/tokudb/ft-index/ft/txn/rollback.cc
  storage/tokudb/ft-index/ft/txn/rollback_log_node_cache.cc
  storage/tokudb/ft-index/ft/txn/txn.cc
  storage/tokudb/ft-index/ft/txn/txn_child_manager.cc
  storage/tokudb/ft-index/ft/txn/txn_manager.cc
  storage/tokudb/ft-index/ft/ule.cc
  storage/tokudb/ft-index/src/errors.cc
  storage/tokudb/ft-index/src/indexer-undo-do.cc
  storage/tokudb/ft-index/src/indexer.cc
  storage/tokudb/ft-index/src/loader.cc
  storage/tokudb/ft-index/src/ydb.cc
  storage/tokudb/ft-index/src/ydb_cursor.cc
  storage/tokudb/ft-index/src/ydb_db.cc
  storage/tokudb/ft-index/src/ydb_env_func.cc
  storage/tokudb/ft-index/src/ydb_row_lock.cc
  storage/tokudb/ft-index/src/ydb_txn.cc
  storage/tokudb/ft-index/src/ydb_write.cc
  storage/tokudb/ft-index/tools/ftverify.cc
  storage/tokudb/ft-index/tools/tdb_logprint.cc
  storage/tokudb/ft-index/tools/tokuftdump.cc
  storage/tokudb/ha_tokudb.cc
  storage/tokudb/mysql-test/tokudb/disabled.def
  storage/tokudb/mysql-test/tokudb/t/i_s_tokudb_lock_waits_released.test
  storage/tokudb/mysql-test/tokudb/t/i_s_tokudb_locks_released.test
  storage/xtradb/api/api0misc.cc
  storage/xtradb/buf/buf0buf.cc
  strings/ctype-mb.c
  strings/decimal.c
  support-files/mysql.spec.sh
  tests/async_queries.c
  unittest/sql/my_apc-t.cc
2014-10-14 17:52:20 +02:00
Olivier Bertrand
0a913e20d2 - Add Sergei fix to enable loading OEM table libs
modified:
  storage/connect/ha_connect.cc
  storage/connect/reldef.cpp
2014-10-14 16:42:22 +02:00
Alexander Barkov
ec3e6cc88b Merge 10.0-connect -> 10.0 2014-10-13 12:31:55 +04:00
Jon Olav Hauglid
57eec7bc29 Bug#17633291: SET PROPER COMPILE OPTIONS FOR CLANG
Bug#17959689: MAKE GCC AND CLANG GIVE CONSISTENT COMPILATION WARNINGS
Bug#18313717: ENABLE -WERROR IN MAINTANER MODE WHEN COMPILING WITH CLANG
Bug#18510941: REMOVE CMAKE WORKAROUNDS FOR OLDER VERSIONS OF OS X/XCODE
  
Backport from mysql-5.6 to mysql-5.5
2014-10-13 09:52:28 +02:00
Olivier Bertrand
b10fa87b15 - Remove one gcc warning
modified:
  storage/connect/tabodbc.cpp
2014-10-12 15:46:31 +02:00
Olivier Bertrand
50fc9b3b19 - Fix null handling for date columns (see MDEV-6744)
modified:
  storage/connect/ha_connect.cc
  storage/connect/plgdbutl.cpp
  storage/connect/value.cpp
  storage/connect/value.h
2014-10-12 12:05:05 +02:00
Sergei Golubchik
911ed9379f merge 2014-10-11 12:52:55 +02:00
Sergei Golubchik
a7a60f6f33 compilation failure: ha_cassandra 2014-10-11 09:09:18 +02:00
Sergey Petrunya
1b960d9fd6 MDEV-6519: Assertion `join->best_read < double(...)' failed after adding a key to a TokuDB table...
- calculate_cond_selectivity_for_table() should handle the case
  where index statistics is not available (zeros are returned 
  in rec_per_key)
2014-10-10 23:52:47 +04:00
Sergei Golubchik
ba85a008e4 merge 2014-10-10 20:59:06 +02:00
Olivier Bertrand
7531f22a68 - Fix a regression error from regarding Header as Boolean from some table types.
Was added to ha_connect::GetBooleanOption (otherwise ignored)
modified:
  storage/connect/ha_connect.cc
2014-10-10 13:27:52 +02:00
Alexander Barkov
33f1ac66ad Merge 10.0-connect -> 10.0 2014-10-10 13:18:03 +04:00
Alexander Barkov
e2b895ec7b Merge 10.0-mroonga -> 10.0 2014-10-10 13:16:41 +04:00
Olivier Bertrand
5821b8eb02 - in CheckCond change strcat to strncat to avoid the case of non zero
terminated string.
modified:
  storage/connect/ha_connect.cc

- The Accept and Header Boolean variables were wrongly retrieved using
  GetIntInfo instead of GetBoolInfo causing some setting to ignored.
modified:
  storage/connect/tabdos.cpp
  storage/connect/tabdos.h
  storage/connect/tabfmt.cpp

- Fix date truncated because their Value class was not using their field length.
modified:
  storage/connect/ha_connect.cc
2014-10-09 17:23:37 +02:00
Sergei Golubchik
1b75bed00f 5.5.40+ merge 2014-10-09 10:30:11 +02:00
Sergey Vojtovich
1efee0379e Fixed mroonga build failure on Power8: define generic gcc version of
GRN_SET_64BIT.
2014-10-09 12:25:45 +04:00
Rich Prohaska
de3cd3e182 DB-736 fix tokudb IS table errors 2014-10-08 08:39:40 -04:00
Sergei Golubchik
7e6d4bba0c XtraDB 5.5.40-36.1 2014-10-08 00:44:37 +02:00
Sergei Golubchik
e5bc21af37 MDEV-4813 Replication fails on updating a MEMORY table with an index using btree
skip NULL VARCHAR key parts like it's done elsewhere
2014-10-07 10:54:14 +02:00
Sergei Golubchik
0d2cba5df2 XtraDB 5.5.39-36.0 2014-10-06 20:06:39 +02:00
Sergei Golubchik
1ddfce4840 mysql-5.5.40 2014-10-06 19:53:55 +02:00
Sergei Golubchik
22f9353bfd xtradb/innodb: fix to compile with VS 2008
and compiler warnings
2014-10-04 15:26:04 +02:00
Rich Prohaska
69756a5994 DB-735 use thd_killed 2014-10-03 15:41:54 -04:00
Kentoku SHIBA
bdeb2c62c5 fix Windows build disabling position 2014-10-03 11:30:53 +09:00
Alexander Barkov
665ea7796f Merge 10.0-mroonga -> 10.0 2014-10-02 15:48:20 +04:00
Alexander Barkov
8dbe3d81d4 - Changing Mroonga maturnity from STABLE to BETA
- removing libmysql/libmysql.version from .bzrignore,
  as we don't have this file any more
2014-10-02 14:58:57 +04:00
Sergei Golubchik
384999f3e8 MDEV-6528 review debian patches for mysql
and apply whatever was reasonable
2014-10-02 11:58:24 +02:00
Sergei Golubchik
aa36d9e742 MDEV-5120 Test suite test maria-no-logging fails
stat structure (from <sys/stat.h>) is conditionally defined
to have different layout and size depending on the defined macros.
The correct macro is defined in my_config.h, which means it MUST be
included first (or, at least before <features.h> - so, practically,
before including any system headers).
2014-10-02 11:57:40 +02:00
Rich Prohaska
d24fd98e99 DB-732 map TOKUDB_OUT_OF_LOCKS tokudb error to HA_ERR_LOCK_TABLE_FULL handler error 2014-10-01 09:24:21 -04:00
Michael Widenius
44428d397c Fixed compiler warning. Now MariaDB 10.0 compiles without warnings for me.
(Except Instantiation notices from oqgraph that I don't know what to do with)
2014-10-01 13:03:50 +03:00
Alexander Barkov
f80e4ed941 Merge 10.0-connect -> 10.0 2014-10-01 11:16:50 +04:00
Alexander Barkov
e2567fb6ef Tests connect.odbc_postgresql and connect.odbc_oracle failed
after revision 4363 (fixes for MDEV-6661 and MDEV-6666).

Fixing a wrong assumption in ha_connect.cc that strings
returned from val_str() are always 0-terminated.
2014-10-01 11:13:11 +04:00
Michael Widenius
70823e1d91 MDEV-5120 Test suite test maria-no-logging fails
The reason for the failure was a bug in an include file on debian that causes 'struct stat'
to have different sized depending on the environment.

This patch fixes so that we always include my_global.h or my_config.h before we include any other files.

Other things:
- Removed #include <my_global.h> in some include files; Better to always do this at the top level to have as few
  "always-include-this-file-first' files as possible.
- Removed usage of some include files that where already included by my_global.h or by other files.


client/mysql_plugin.c:
  Use my_global.h first
client/mysqlslap.c:
  Remove duplicated include files
extra/comp_err.c:
  Remove duplicated include files
include/m_string.h:
  Remove duplicated include files
include/maria.h:
  Remove duplicated include files
libmysqld/emb_qcache.cc:
  Use my_global.h first
plugin/semisync/semisync.h:
  Use my_pthread.h first
sql/datadict.cc:
  Use my_global.h first
sql/debug_sync.cc:
  Use my_global.h first
sql/derror.cc:
  Use my_global.h first
sql/des_key_file.cc:
  Use my_global.h first
sql/discover.cc:
  Use my_global.h first
sql/event_data_objects.cc:
  Use my_global.h first
sql/event_db_repository.cc:
  Use my_global.h first
sql/event_parse_data.cc:
  Use my_global.h first
sql/event_queue.cc:
  Use my_global.h first
sql/event_scheduler.cc:
  Use my_global.h first
sql/events.cc:
  Use my_global.h first
sql/field.cc:
  Use my_global.h first
  Remove duplicated include files
sql/field_conv.cc:
  Use my_global.h first
sql/filesort.cc:
  Use my_global.h first
  Remove duplicated include files
sql/gstream.cc:
  Use my_global.h first
sql/ha_ndbcluster.cc:
  Use my_global.h first
sql/ha_ndbcluster_binlog.cc:
  Use my_global.h first
sql/ha_ndbcluster_cond.cc:
  Use my_global.h first
sql/ha_partition.cc:
  Use my_global.h first
sql/handler.cc:
  Use my_global.h first
sql/hash_filo.cc:
  Use my_global.h first
sql/hostname.cc:
  Use my_global.h first
sql/init.cc:
  Use my_global.h first
sql/item.cc:
  Use my_global.h first
sql/item_buff.cc:
  Use my_global.h first
sql/item_cmpfunc.cc:
  Use my_global.h first
sql/item_create.cc:
  Use my_global.h first
sql/item_geofunc.cc:
  Use my_global.h first
sql/item_inetfunc.cc:
  Use my_global.h first
sql/item_row.cc:
  Use my_global.h first
sql/item_strfunc.cc:
  Use my_global.h first
sql/item_subselect.cc:
  Use my_global.h first
sql/item_sum.cc:
  Use my_global.h first
sql/item_timefunc.cc:
  Use my_global.h first
sql/item_xmlfunc.cc:
  Use my_global.h first
sql/key.cc:
  Use my_global.h first
sql/lock.cc:
  Use my_global.h first
sql/log.cc:
  Use my_global.h first
sql/log_event.cc:
  Use my_global.h first
sql/log_event_old.cc:
  Use my_global.h first
sql/mf_iocache.cc:
  Use my_global.h first
sql/mysql_install_db.cc:
  Remove duplicated include files
sql/mysqld.cc:
  Remove duplicated include files
sql/net_serv.cc:
  Remove duplicated include files
sql/opt_range.cc:
  Use my_global.h first
sql/opt_subselect.cc:
  Use my_global.h first
sql/opt_sum.cc:
  Use my_global.h first
sql/parse_file.cc:
  Use my_global.h first
sql/partition_info.cc:
  Use my_global.h first
sql/procedure.cc:
  Use my_global.h first
sql/protocol.cc:
  Use my_global.h first
sql/records.cc:
  Use my_global.h first
sql/records.h:
  Don't include my_global.h
  Better to do this at the upper level
sql/repl_failsafe.cc:
  Use my_global.h first
sql/rpl_filter.cc:
  Use my_global.h first
sql/rpl_gtid.cc:
  Use my_global.h first
sql/rpl_handler.cc:
  Use my_global.h first
sql/rpl_injector.cc:
  Use my_global.h first
sql/rpl_record.cc:
  Use my_global.h first
sql/rpl_record_old.cc:
  Use my_global.h first
sql/rpl_reporting.cc:
  Use my_global.h first
sql/rpl_rli.cc:
  Use my_global.h first
sql/rpl_tblmap.cc:
  Use my_global.h first
sql/rpl_utility.cc:
  Use my_global.h first
sql/set_var.cc:
  Added comment
sql/slave.cc:
  Use my_global.h first
sql/sp.cc:
  Use my_global.h first
sql/sp_cache.cc:
  Use my_global.h first
sql/sp_head.cc:
  Use my_global.h first
sql/sp_pcontext.cc:
  Use my_global.h first
sql/sp_rcontext.cc:
  Use my_global.h first
sql/spatial.cc:
  Use my_global.h first
sql/sql_acl.cc:
  Use my_global.h first
sql/sql_admin.cc:
  Use my_global.h first
sql/sql_analyse.cc:
  Use my_global.h first
sql/sql_audit.cc:
  Use my_global.h first
sql/sql_base.cc:
  Use my_global.h first
sql/sql_binlog.cc:
  Use my_global.h first
sql/sql_bootstrap.cc:
  Use my_global.h first
  Use my_global.h first
sql/sql_cache.cc:
  Use my_global.h first
sql/sql_class.cc:
  Use my_global.h first
sql/sql_client.cc:
  Use my_global.h first
sql/sql_connect.cc:
  Use my_global.h first
sql/sql_crypt.cc:
  Use my_global.h first
sql/sql_cursor.cc:
  Use my_global.h first
sql/sql_db.cc:
  Use my_global.h first
sql/sql_delete.cc:
  Use my_global.h first
sql/sql_derived.cc:
  Use my_global.h first
sql/sql_do.cc:
  Use my_global.h first
sql/sql_error.cc:
  Use my_global.h first
sql/sql_explain.cc:
  Use my_global.h first
sql/sql_expression_cache.cc:
  Use my_global.h first
sql/sql_handler.cc:
  Use my_global.h first
sql/sql_help.cc:
  Use my_global.h first
sql/sql_insert.cc:
  Use my_global.h first
sql/sql_lex.cc:
  Use my_global.h first
sql/sql_load.cc:
  Use my_global.h first
sql/sql_locale.cc:
  Use my_global.h first
sql/sql_manager.cc:
  Use my_global.h first
sql/sql_parse.cc:
  Use my_global.h first
sql/sql_partition.cc:
  Use my_global.h first
sql/sql_plugin.cc:
  Added comment
sql/sql_prepare.cc:
  Use my_global.h first
sql/sql_priv.h:
  Added error if we use this before including my_global.h
  This check is here becasue so many files includes sql_priv.h first.
sql/sql_profile.cc:
  Use my_global.h first
sql/sql_reload.cc:
  Use my_global.h first
sql/sql_rename.cc:
  Use my_global.h first
sql/sql_repl.cc:
  Use my_global.h first
sql/sql_select.cc:
  Use my_global.h first
sql/sql_servers.cc:
  Use my_global.h first
sql/sql_show.cc:
  Added comment
sql/sql_signal.cc:
  Use my_global.h first
sql/sql_statistics.cc:
  Use my_global.h first
sql/sql_table.cc:
  Use my_global.h first
sql/sql_tablespace.cc:
  Use my_global.h first
sql/sql_test.cc:
  Use my_global.h first
sql/sql_time.cc:
  Use my_global.h first
sql/sql_trigger.cc:
  Use my_global.h first
sql/sql_udf.cc:
  Use my_global.h first
sql/sql_union.cc:
  Use my_global.h first
sql/sql_update.cc:
  Use my_global.h first
sql/sql_view.cc:
  Use my_global.h first
sql/sys_vars.cc:
  Added comment
sql/table.cc:
  Use my_global.h first
sql/thr_malloc.cc:
  Use my_global.h first
sql/transaction.cc:
  Use my_global.h first
sql/uniques.cc:
  Use my_global.h first
sql/unireg.cc:
  Use my_global.h first
sql/unireg.h:
  Removed inclusion of my_global.h
storage/archive/ha_archive.cc:
  Added comment
storage/blackhole/ha_blackhole.cc:
  Use my_global.h first
storage/csv/ha_tina.cc:
  Use my_global.h first
storage/csv/transparent_file.cc:
  Use my_global.h first
storage/federated/ha_federated.cc:
  Use my_global.h first
storage/federatedx/federatedx_io.cc:
  Use my_global.h first
storage/federatedx/federatedx_io_mysql.cc:
  Use my_global.h first
storage/federatedx/federatedx_io_null.cc:
  Use my_global.h first
storage/federatedx/federatedx_txn.cc:
  Use my_global.h first
storage/heap/ha_heap.cc:
  Use my_global.h first
storage/innobase/handler/handler0alter.cc:
  Use my_global.h first
storage/maria/ha_maria.cc:
  Use my_global.h first
storage/maria/unittest/ma_maria_log_cleanup.c:
  Remove duplicated include files
storage/maria/unittest/test_file.c:
  Added comment
storage/myisam/ha_myisam.cc:
  Move sql_plugin.h first as this includes my_global.h
storage/myisammrg/ha_myisammrg.cc:
  Use my_global.h first
storage/oqgraph/oqgraph_thunk.cc:
  Use my_config.h and my_global.h first
  One could not include my_global.h before oqgraph_thunk.h (don't know why)
storage/spider/ha_spider.cc:
  Use my_global.h first
storage/spider/hs_client/config.cpp:
  Use my_global.h first
storage/spider/hs_client/escape.cpp:
  Use my_global.h first
storage/spider/hs_client/fatal.cpp:
  Use my_global.h first
storage/spider/hs_client/hstcpcli.cpp:
  Use my_global.h first
storage/spider/hs_client/socket.cpp:
  Use my_global.h first
storage/spider/hs_client/string_util.cpp:
  Use my_global.h first
storage/spider/spd_conn.cc:
  Use my_global.h first
storage/spider/spd_copy_tables.cc:
  Use my_global.h first
storage/spider/spd_db_conn.cc:
  Use my_global.h first
storage/spider/spd_db_handlersocket.cc:
  Use my_global.h first
storage/spider/spd_db_mysql.cc:
  Use my_global.h first
storage/spider/spd_db_oracle.cc:
  Use my_global.h first
storage/spider/spd_direct_sql.cc:
  Use my_global.h first
storage/spider/spd_i_s.cc:
  Use my_global.h first
storage/spider/spd_malloc.cc:
  Use my_global.h first
storage/spider/spd_param.cc:
  Use my_global.h first
storage/spider/spd_ping_table.cc:
  Use my_global.h first
storage/spider/spd_sys_table.cc:
  Use my_global.h first
storage/spider/spd_table.cc:
  Use my_global.h first
storage/spider/spd_trx.cc:
  Use my_global.h first
storage/xtradb/handler/handler0alter.cc:
  Use my_global.h first
storage/xtradb/handler/i_s.cc:
  Use my_global.h first
2014-09-30 20:31:14 +03:00
Michael Widenius
caca6b9907 Fixed warnings
storage/oqgraph/ha_oqgraph.cc:
  Fixed compiler warning
storage/xtradb/handler/ha_innodb.cc:
  Ifdef:ed note used function
2014-09-30 20:12:59 +03:00
Sergey Vojtovich
5e1fad8512 MDEV-6533 - MySQL Bug#72718 - CACHE_LINE_SIZE in innodb should be 128 on POWER
This patch is suggested by Stewart Smith.
Define CACHE_LINE_SIZE to 128 on POWER.
2014-10-03 17:38:46 +04:00
Olivier Bertrand
38c3fd2099 - Fix MDEV-6802 in a clean way.
Add an union in the PARM structure to contain int values
  Use a cast to ptrdiff_t in MAPFAM/MXPFAM::InitDelete required by some compilers
modified:
  storage/connect/array.cpp
  storage/connect/filamap.cpp
  storage/connect/filamtxt.cpp
  storage/connect/global.h
  
- Suppress some GCC warnings
modified:
  storage/connect/array.cpp
  storage/connect/filter.cpp
  storage/connect/tabdos.cpp
  storage/connect/tabmysql.cpp
  storage/connect/value.cpp
2014-09-30 12:59:24 +02:00
Olivier Bertrand
dd5eb7ae67 - Add #include <stdint> needed by GCC to declare uintptr_t
modified:
  storage/connect/array.cpp
  storage/connect/filamap.cpp
2014-09-30 01:25:53 +02:00
Olivier Bertrand
e4ff01e47d - Fix all compiler issues on FreeBSD clang.
modified:
  storage/connect/array.cpp
  storage/connect/filamap.cpp
2014-09-30 00:53:00 +02:00
Olivier Bertrand
4b2b2abe8b - fix MDEV-6802: MPXFAM::GetNextPos redefined
modified:
  storage/connect/filamap.h
2014-09-29 14:42:50 +02:00
Olivier Bertrand
ed72d2d210 - Add some new tests
added:
  storage/connect/mysql-test/connect/r/datest.result
  storage/connect/mysql-test/connect/r/mrr.result
  storage/connect/mysql-test/connect/r/updelx2.result
  storage/connect/mysql-test/connect/t/datest.test
  storage/connect/mysql-test/connect/t/mrr.test
  storage/connect/mysql-test/connect/t/updelx2.test
2014-09-27 12:26:36 +02:00
Olivier Bertrand
8585a6b586 - Fix: Crash of an XCOL table when the Colname column size is too small.
Was because of buffer overrun in XCLCOL::ReadColumn.
  The Cbuf buffer was unconditionally filled Now it is limited to its size.
  This happened because this buffer was allocated according to the XCOL
  column size. It is now allocated according to the source column size.
modified:
  storage/connect/plgdbsem.h
  storage/connect/tabutil.h
  storage/connect/tabxcl.cpp
  storage/connect/tabxcl.h
2014-09-27 12:09:37 +02:00
Rich Prohaska
665a9b6ea7 DB-450 use interruptible cursors for index scans and info schema scans 2014-09-26 11:45:39 -04:00
Rich Prohaska
b3601d02f8 DB-397 remove table lock for tables with triggers in tokudb::start_stmt 2014-09-26 08:02:24 -04:00
Sergei Golubchik
02125587e1 update tokudb version in CMakeLists.txt, disable unstable tokudb tests 2014-09-25 19:00:41 +02:00
Sergei Golubchik
06d6552192 5.5 merge 2014-09-23 23:55:29 +02:00
Sergei Golubchik
53a44915c5 merge 2014-09-23 23:37:35 +02:00
Sergei Golubchik
b91432b4a4 tokudb 7.5.0 2014-09-23 22:03:35 +02:00
Michael Widenius
348a24a70a Allow tokudb test to pass even if jemalloc is not available. 2014-09-23 13:57:55 +03:00
Michael Widenius
504c6cccd7 Fixed test failures
Added comments
Ensure that tokudb test works even if jemalloc is not installed
Removed not referenced function Item::remove_fixed()

mysql-test/suite/rpl/t/rpl_gtid_reconnect.test:
  Fixed race condition
sql/item.cc:
  Indentation fix
sql/item.h:
  Removed not used function
  Added comment
sql/sql_select.cc:
  Fixed indentation
storage/tokudb/mysql-test/rpl/include/have_tokudb.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_add_index/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_alter_table/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_bugs/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_mariadb/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
2014-09-22 23:25:56 +03:00
Kentoku SHIBA
0cc855cdc8 Update Mroonga to the latest version on 2014-09-21T00:33:44+0900 2014-09-21 00:33:45 +09:00
Annamalai Gurusami
b8c9d93bf3 Bug #19306524 FAILING ASSERTION WITH TEMP TABLE FOR A PROCEDURE CALLED
FROM A FUNCTION

Scenario:

In a stored procedure, CREATE TABLE statement is not allowed.  But an
exception is provided for CREATE TEMPORARY TABLE.  We can create a temporary
table in a stored procedure.

Let there be two stored functions f1 and f2 and two stored procedures p1 and
p2.  Their properties are as follows:

. stored function f1() calls stored procedure p1().
. stored function f2() calls stored procedure p2().
. stored procedure p1() creates temporary table t1.
. stored procedure p2() does DML on t1.

Consider the following situation:

1.  Autocommit mode is on. 
2.  select f1()
3.  select f2()

Step 2:  In this step, t1 would be created via p1().  A table level transaction
lock would have been taken.  The ::external_lock() would not have been called
on this table.  At the end of step 2, because of autocommit mode on, this table
level lock will be released.

Step 3:  When we execute DML on table t1 via p2() we have two problems:

Problem 1:

The function ha_innobase::external_lock() would have been called but since
it is a select query no table level locks would have been taken.  Hence the
following assert will fail:

ut_ad(lock_table_has(thr_get_trx(thr), index->table, LOCK_IX));

Solution:

The solution would be to identify this situation and take a table level lock
and use the proper lock type prebuilt->select_lock_type = LOCK_X for DML
operations.

Problem 2:

Another problem is that in step 3, ha_innobase::open() is never called on
the table t1.  

Solution:

The solution would be to identify this situation and call re-init the handler
of table t1.

rb#6429 approved by Krunal.
2014-09-18 15:17:39 +05:30
Kentoku SHIBA
391fddf660 Merge Spider 3.2.11 2014-09-18 09:26:30 +09:00
Annamalai Gurusami
40f30ee6cc Bug #17852083 PRINT A WARNING WHEN DDL HAS AN ERROR IN INNODB_STRICT_MODE = 1
Problem:

Creation of a table fails when innodb_strict_mode is enabled, but the same
table is created without any warning when innodb_strict_mode is enabled.

Solution:

If creation of a table fails with an error when innodb_strict_mode is
enabled, it must issue a warning when innodb_strict_mode is disabled.

rb#6723 approved by Krunal.
2014-09-17 10:42:31 +05:30
Olivier Bertrand
6a00401a60 - Fix a compile error (MDEV-6723)
modified:
  storage/connect/tabwmi.cpp

- Was change in revision 4029 but not listed then.
modified:
  storage/connect/mysql-test/connect/r/updelx.result
2014-09-17 00:51:40 +02:00
Sergei Golubchik
a006813fb1 merge 2014-09-16 14:08:05 +02:00
Sergei Golubchik
d017953e2e fixes for test cases 2014-09-16 14:04:50 +02:00
Sergei Golubchik
7e29c1b539 5.5 merge 2014-09-16 14:03:17 +02:00
Jan Lindström
ec46381990 Avoid using log_sys mutex when printing out show engine innodb status,
instead peek (maybe) old data.
2014-09-16 07:37:00 +03:00
Elena Stepanova
b41d5aebcf Changes in storage_engine test suite:
- added more logic for ON DUPICATE KEY UPDATE upon Monty's request;
  - added an overlay for XtraDB
2014-09-15 20:33:11 +04:00
Rich Prohaska
b183d81d2e DB-714 read free replication 2014-09-15 07:47:43 -04:00
Sergei Golubchik
e3deed438a ft-index: restore a chunk that was lost in the merge
and other fixes for gcc-4.9.1 on sid
2014-09-13 21:32:49 +02:00
Sergei Golubchik
77a0c9b161 tokudb: use thd_killed() api function, not thd->killed directly 2014-09-13 08:32:53 +02:00
Sergei Golubchik
e7ddd89adc tokudb tests: master-slave.inc should be included *last* 2014-09-13 08:16:00 +02:00
Sergei Golubchik
1e3e81a6c9 sphinx 2.1.9 2014-09-13 00:30:46 +02:00
Sergei Golubchik
aef3818981 tokudb 7.1.8 2014-09-13 00:28:15 +02:00
Sergei Golubchik
86957d414f 10.0-connect merge 2014-09-12 16:44:27 +02:00
Michael Widenius
fa51a22388 Fixed compiler warnings 2014-09-12 14:49:24 +03:00
Sergei Golubchik
3d94523638 MDEV-6613 build system endianness test fails for ppc64le (i.e. Ubuntu)
* remove bundled jemalloc, use the system one
* force jemalloc in release builds on linux
2014-09-12 08:41:16 +02:00
Elena Stepanova
d2ae40ac2e Fixes in storage_engine test suite
- after a change in 5.6.20, tests with big blobs require bigger
    innodb_log_file_size value;
  - innobase relay was running with the default InnoDB (XtraDB)
2014-09-12 03:21:54 +04:00
Michael Widenius
c6051a4beb Automatic merge 2014-09-11 23:50:31 +03:00
Michael Widenius
c4f5326bb7 MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort.
The problem was that my_hash_sort didn't properly delete end-space characters properly, so strings that should compare
identically was seen as different strings.  (Space was handled correctly, but not NBSP)
This caused duplicate key errors when a heap table was converted to Aria as part of overflow in group by.

Fixed by removing all characters that compares as end space when creating a hash.

Other things:
- Fixed that --sorted_results also works for errors in mysqltest.
- Speed up hash by not comparing strings that has different hash.
- Speed up many my_hash_sort functions by using registers to calculate hash instead of pointers.
  This was previously done for some functions, but not for all.
- Made a macro of the hash function, to simplify code and to be able to experiment with new hash functions.







client/mysqltest.cc:
  Fixed that --sorted_results also works for error messages.
mysql-test/r/ctype_partitions.result:
  New test to ensure that partitions on hash works
mysql-test/suite/multi_source/gtid.result:
  Updated result
mysql-test/suite/multi_source/gtid.test:
  Test that --sorted_result works for error messages
mysql-test/suite/multi_source/gtid_ignore_duplicates.result:
  Updated result
mysql-test/suite/multi_source/gtid_ignore_duplicates.test:
  Updated result
mysql-test/suite/multi_source/load_data.result:
  Updated result
mysql-test/suite/multi_source/load_data.test:
  Updated result
mysql-test/t/ctype_partitions.test:
  New test to ensure that partitions on hash works
storage/heap/hp_write.c:
  Speed up hash by not comparing strings that has different hash.
storage/maria/ma_check.c:
  Extra debug
strings/ctype-bin.c:
  Use macro for hash function
strings/ctype-latin1.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-mb.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-simple.c:
  Use macro for hash function
  Use same variable names as in other my_hash_sort functions.
  Update my_hash_sort_simple() to properly remove end space (patch by Bar)
strings/ctype-uca.c:
  Ignore duplicated space inside strings and end space in my_hash_sort_uca(). This fixed MDEV-6255
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-ucs2.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-utf8.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/strings_def.h:
  Made a macro of the hash function, to simplify code and to be able to experiment with new hash functions.
2014-09-11 22:42:35 +03:00
Sergei Golubchik
4a68817d8d XtraDB 5.6.20-68.0 2014-09-11 16:44:16 +02:00
Sergei Golubchik
75796d9ecb InnoDB 5.6.20 2014-09-11 16:42:54 +02:00
Jan Lindström
c30a8442e8 MDEV-6729: InnoDB: Failing assertion: state == TRX_STATE_NOT_STARTED in
file trx0trx.ic line 60 

Problem was that trx might have not been started when we enter release
savepoint, this can happen when trx with savepoint is already aborted 
or when we try to release non-existing savepoint.
2014-09-11 15:41:30 +03:00
Sergei Golubchik
b2c54a9a69 MDEV-6523 CONNECT temporary table created
check_engine() was not called for assisted discovery
2014-09-10 13:22:20 +02:00
Sergei Golubchik
1e7dd85028 MDEV-6579 IMPORT_EXECUTABLES feature broken by addition of gen_pfs_lex_token 2014-09-10 13:10:24 +02:00
Praveenkumar Hulakund
0b28d7e048 Bug#18790730 - CROSS-DATABASE FOREIGN KEY WITHOUT PERMISSIONS
CHECK.

Analysis:
----------
Issue here is, while creating or altering the InnoDB table,
if the foreign key defined on the table references a parent
table on which the user has no access privileges then the
table is created without reporting any error. 

Currently the privilege level REFERENCES_ACL is unused
and is not used for access evaluation while creating the
table with a foreign key constraint or adding the foreign
key constraint to a table. But when no privileges are granted
to user then also access evaluation on parent table is ignored.

Fix:
---------
For DMLs, irrelevant of the fact, support does not want any
changes to avoid permission checks on every operation.

So, as a fix, added a function "check_fk_parent_table_access" 
to check whether any of the SELECT_ACL, INSERT_ACL, UDPATE_ACL,
DELETE_ACL or REFERENCE_ACL privileges are granted for user
at table level. If none of them is granted then error is reported.
This function is called during the table creation and alter 
operation.
2014-09-10 10:50:17 +05:30
Sergei Golubchik
6b720ae4cb MDEV-6605 Multiple Clients Inserting Causing Error: Failed to read auto-increment value from storage engine
* handler::get_auto_increment() was not expecting any errors from the storage engine.
  That was wrong, errors could happen.
* ha_partition::get_auto_increment() was doing index lookups in partition under a mutex.
  This was redundant (engine transaction isolation was covering that anyway)
  and harmful (causing deadlocks).
2014-09-08 18:38:13 +02:00
Sergei Golubchik
8deb9066e2 fix compilation on windows - wrong include file 2014-09-08 17:10:48 +02:00