Commit graph

89028 commits

Author SHA1 Message Date
Olivier Bertrand
c1973c80d4 - Eliminate virtual columns from CSV and FMT table fields
modified:
  storage/connect/colblk.h
  storage/connect/reldef.h
  storage/connect/tabfmt.cpp

- Fix length specification and writing (when using FIELD_FORMAT) of DECIMAL columns
modified:
  storage/connect/ha_connect.cc
  storage/connect/tabdos.cpp

- Add the D field_format option (specifying the decimal separator character)
modified:
  storage/connect/tabdos.cpp
  storage/connect/tabdos.h
  storage/connect/tabfmt.cpp
2014-05-30 14:53:15 +02:00
Alexander Barkov
4211b1cd48 MDEV-4051 INET6_ATON() and INET6_NTOA()
Backporting functions from MySQL-5.6:

- INET6_ATON()
- INET6_NTOA()
- IS_IPV4()
- IS_IPV4_COMPAT()
- IS_IPV4_MAPPED()
- IS_IPV6()
2014-05-30 16:19:00 +04:00
Alexander Barkov
1449d1d54f Moving implementation of INET_ATON() INET_NTOA() into
separate files item_inetfunc.h and item_inetfunc.cc.
2014-05-30 15:24:25 +04:00
Leif Walsh
12a74105b5 Merge branch 'stress-test-script-updates' 2014-05-29 11:07:09 -04:00
Leif Walsh
5c6565f1a0 added 7.1.6 data set to stress test runner 2014-05-29 11:06:45 -04:00
Leif Walsh
6a1387c0da added test_stress_with_verify to stress test runner 2014-05-29 11:06:33 -04:00
Rich Prohaska
e7496641ce #241 unique key check should avoid relocking keys if the table is already prelocked by the loader 2014-05-29 07:41:16 -04:00
unknown
9125c888c5 Merge from mysql-5.5.38-release 2014-05-29 09:34:50 +02:00
Sergey Petrunya
d533a64bf3 MDEV-6239: Partition pruning is not working as expected in an inner query
- Make partition pruning work for tables inside semi-join nests
  (the new condition is the same that range optimizer uses so 
   it should be ok)
2014-05-29 02:25:37 +04:00
zkasheff
e26ad2d358 Merge pull request #251 from Tokutek/verify-promotion
changed ft-verify to work with promotion
2014-05-28 13:37:55 -04:00
Leif Walsh
98c81ef1a1 changed ft-verify to work with promotion #250
fixes #250
2014-05-28 12:09:49 -04:00
John Esmet
fc87324fed refs #226 Fix a benign (but nevertheless important) bug where nonleaf
partial eviction would fail to move stale messages out of the fresh
message tree before serializing them to memory.
2014-05-27 16:44:08 -04:00
Sergei Golubchik
8bdda78c82 MDEV-6271 update MSI installer to include latest Version of HeidiSQL (8.3.x.x) 2014-05-27 21:05:44 +02:00
Sergei Golubchik
926661ac7c MDEV-6273 Export my_progname symbol in libmysqlclient.so 2014-05-27 20:57:28 +02:00
Sergey Petrunya
dedc76b7d9 MDEV-6263: Wrong result when using IN subquery with order by
- When the optimizer chose LooseScan, make_join_readinfo() should
  use the index that was chosen for LooseScan, and should not try 
  to find a better (shortest) index.
2014-05-28 17:32:43 +04:00
Alexey Botchkov
1e96de926c MDEV-6216 sys_vars.completion_type_func fails in --embedded.
The bug was in the mysqltest.c. It didn't check the send_query result
properly, so when that fails and the thread gets disconnected,
it goes unnoticed, so the consequitive read_result call crashes.
Fixed by checking the sernd_query return.
2014-05-28 16:51:19 +05:00
Olivier Bertrand
cd185c1468 - Fix a bug causing the tabname option to be ignored when the connection
string was not an URL but a server name. Also make the dbname option
  to be recignized in create (was only seached in option_list)
modified:
  storage/connect/ha_connect.cc
  storage/connect/tabmysql.cpp
2014-05-27 12:50:52 +02:00
Elena Stepanova
69742e4ee3 Increase version number 2014-05-26 22:41:35 +04:00
Sergei Golubchik
63a0e5640d typo fixed (compilation failure with libwrap) 2014-05-26 13:31:11 +02:00
John Esmet
74e6120ae8 Merge pull request #180 from Tokutek/rightmost_leaf
Optimize rightmost inserts and unique checks using a constant rightmost leaf and a heuristic stored in the FT
2014-05-25 12:43:46 -04:00
John Esmet
e0de0b2d96 fixes #158 Use promotion to record the blocknum of the rightmost
non-root leaf node in each FT. When the FT detects a rightmost insertion
pattern, it attempts to do inserts and unique checks directly into the
rightmost leaf node, greatly optimizing sequential insert speed.
2014-05-25 12:42:52 -04:00
Rich Prohaska
ebc4a08a62 TokuDB 7.1.6 is released 2014-05-25 08:44:04 -04:00
John Esmet
e61903510a Revert "FT-242 Begin breaking up fttypes.h by moving many things to their"
We will wait until after TokuMX 1.5.0 for these changes

This reverts commit 1927c6dd38.
2014-05-23 18:29:27 -04:00
John Esmet
1338d90787 Revert "TMX-1 Rename TokuKV to TokuFT"
We will wait until after TokuMX 1.5.0 for these changes

This reverts commit b1f4a0aa62.
2014-05-23 18:29:24 -04:00
John Esmet
17c6b1650c Revert "TMX-242 Add cursor.h, which missed the last commit"
We will wait until after TokuMX 1.5.0 for these changes

This reverts commit 917a23bd59.
2014-05-23 18:29:09 -04:00
John Esmet
f66c44230f TMX-242 Add cursor.h, which missed the last commit 2014-05-23 18:13:59 -04:00
John Esmet
4680500514 TMX-1 Rename TokuKV to TokuFT 2014-05-23 18:13:32 -04:00
John Esmet
c92c8cc967 FT-242 Begin breaking up fttypes.h by moving many things to their
appropriate headers
2014-05-23 18:10:29 -04:00
Leif Walsh
97d542a3b4 fixed typo #226 2014-05-23 14:25:54 -04:00
Leif Walsh
598105c433 vectorized loops in new deserialization code #226
also a typo
2014-05-23 14:02:53 -04:00
Rich Prohaska
1e9f2f07b9 #247 fix loader->close fd leak when NOFILE limit exceeded 2014-05-23 10:56:18 -04:00
Leif Walsh
1d6d6e3ce8 changed CHECKPOINT_DURATION[_LAST] to UINT64 #249
fixes #249
2014-05-23 08:42:19 -04:00
John Esmet
71c2d3a170 fixes #226 When serializing a nonleaf node, include the offsets stored
in each message tree. This removes a sort during deserialization, which
can be expensive when there are many messages and I/O is fast. This
change supports auto-upgrade from older versions.
2014-05-22 18:57:56 -04:00
John Esmet
462f601236 fixes #248 Convert to a tree on omt clone if it must support marks 2014-05-22 18:57:56 -04:00
Harin Vadodaria
d36f1ec834 Bug#17201924 and Bug#18178997 : YASSL:MISSING CLOSEDIR()
IN
                                SSL_CTX_LOAD_VERIFY_
                                LOCATIONS()
                                and
                                OFF-BY-ONE PROBLEM IN
                                VOID CERTDECODER::
                                GETDATE(DATETYPE DT)
                                IN ASN.CPP

Description : Fixes corner cases in yassl code.
              Refer to bug page for details.
2014-05-22 14:26:09 +05:30
Rich Prohaska
412f1d9f36 #244 skip jemalloc build if it is not in the third party directory 2014-05-21 11:51:26 -04:00
Leif Walsh
f08eb5cf61 Merge pull request #245 from Tokutek/gcc-4.9-support
Support gcc 4.9 in cmake, fix uninitialized value warnings
2014-05-20 14:40:46 -04:00
Leif Walsh
bfe318a433 moved/cleaned up gcc-ar/gcc-ranlib checking #245 2014-05-20 14:39:56 -04:00
John Esmet
ac31894df6 Support gcc 4.9 in cmake, fix uninitialized value warnings 2014-05-20 13:51:32 -04:00
Rich Prohaska
b62e8d10fc #236 mysqld_safe should use libjemalloc.so if it exists in the tarball 2014-05-20 08:18:13 -04:00
Rich Prohaska
6658f8996c #242 fix loader creation bug that unlinks the wrong fractal tree files 2014-05-19 10:48:17 -04:00
Tor Didriksen
ab8bd02b9b Bug#18315770 BUG#12368495 FIX IS INCOMPLETE
Item_func_ltrim::val_str did not handle multibyte charsets.
Fix: factor out common code for Item_func_trim and Item_func_ltrim.
2014-05-16 10:18:43 +02:00
Arun Kuruvila
2dbebf771b Bug #18163964 PASSWORD IS VISIBLE WHILE CHANGING IT FROM
MYSQLADMIN IN PROCESSES LIST

Description: Checking the process status (with ps -ef)  
while executing "mysqladmin" with old password and new 
password via command-line will show the new password in the
process list sporadically.

Analysis: The old password is being masked by "mysqladmin".
So masking the new password in the similar manner would 
reduce hitting the bug. But this would not completely fix
the bug, because if "ps -ef " command hits the mysqladmin
before it masks the passwords it will show both the old and
new passwords in the process list. But the chances of
hitting this is very less.

Fix: The new password also masked in the similar manner
that of the --password argument.
2014-05-16 09:16:39 +05:30
Rich Prohaska
1a17a12c10 #239 fix dbremove crash when NOFILE limit is exceeded 2014-05-15 10:00:41 -04:00
unknown
787c470cef MDEV-5262: Missing retry after temp error in parallel replication
Handle retry of event groups that span multiple relay log files.

 - If retry reaches the end of one relay log file, move on to the next.

 - Handle refcounting of relay log files, and avoid purging relay log
   files until all event groups have completed that might have needed
   them for transaction retry.
2014-05-15 15:52:08 +02:00
Rich Prohaska
4d2c3ffbb6 #240 make the toku thread pool handle transient thread creation errors 2014-05-15 08:33:30 -04:00
Neeraj Bisht
10978e0aa9 Bug#18207212 : FILE NAME IS NOT ESCAPED IN BINLOG FOR LOAD DATA INFILE STATEMENT
Problem:
Load_log_event::print_query() function does not put escape character in file name 
for "LOAD DATA INFILE" statement.

Analysis:
When we have "'" in our file name for "LOAD DATA INFILE" statement,
Load_log_event::print_query() function does not put escape character 
in our file name.

This one result that when we show binary-log, we get file name without 
escape character.

Solution:
To put escape character when we have "'" in file name, for this instead of using 
simple memcpy() to put file-name, we will use pretty_print_str().
2014-05-15 15:50:52 +05:30
mithun
f220233512 Bug#17217128 : BAD INTERACTION BETWEEN MIN/MAX AND
"HAVING SUM(DISTINCT)": WRONG RESULTS.
ISSUE:
------
If a query uses loose index scan and it has both
AGG(DISTINCT) and MIN()/MAX()functions. Then, result values
of MIN/MAX() is set improperly.
When query has AGG(DISTINCT) then end_select is set to
end_send_group. "end_send_group" keeps doing aggregation
until it sees a record from next group. And, then it will
send out the result row of that group.
Since query also has MIN()/MAX() and loose index scan is
used, values of MIN/MAX() are set as part of loose index
scan itself. Setting MIN()/MAX() values as part of loose
index scan overwrites values computed in end_send_group.
This caused invalid result.
For such queries to work loose index scan should stop
performing MIN/MAX() aggregation. And, let end_send_group to
do the same. But according to current design loose index
scan can produce only one row per group key. If we have both
MIN() and MAX() then it has to give two records out. This is
not possible as interface has to use common buffer
record[0]! for both records at a time.

SOLUTIONS:
----------
For such queries to work we need a new interface for loose
index scan. Hence, do not choose loose_index_scan for such
cases. So a new rule SA7 is introduced to take care of the
same.

SA7: "If Q has both AGG_FUNC(DISTINCT ...) and
      MIN/MAX() functions then loose index scan access
      method is not used."

mysql-test/r/group_min_max.result:
  Expected result.
mysql-test/t/group_min_max.test:
  1. Test with various combination of AGG(DISTINCT) and
  MIN(), MAX() functions.
  2. Corrected the plan for old queries.
sql/opt_range.cc:
  A new rule SA7 is introduced.
2014-05-15 11:46:57 +05:30
Rich Prohaska
2006f3bf58 #206 merge mariadb 10.0.11 changes 2014-05-14 14:43:44 -04:00
Rich Prohaska
6f5239cd29 #237 fix various bulk loader bugs related to nproc ulimit exceeded 2014-05-13 16:05:00 -04:00