Commit graph

17382 commits

Author SHA1 Message Date
Jan Lindström
206039b8ba Merge pull request #135 from grooverdan/crc32_conditional
Do not build optimised power crc32 on bigendian
2015-12-18 10:11:02 +02:00
Daniel Black
e4e2d9dd3c Do not build optimised power crc32 on bigendian 2015-12-18 17:15:06 +11:00
Jan Lindström
69147040a6 MDEV-9236: Dramatically overallocation of InnoDB buffer pool leads to crash
Part I: Add diagnostics to page allocation if state is not correct
but do not assert if it is incorrect.
2015-12-17 19:45:42 +02:00
Jan Lindström
670bc0b352 Improve validation. If page type is not valid, try to print more
information from the page (note that page could be corrupt).
2015-12-17 09:24:54 +02:00
Sergei Golubchik
bd69d7b3f3 after-merge disable unstable tests
they used to be unstable, fixed in 7.1.8
and apparently broken again now
2015-12-16 08:58:49 +01:00
Jan Lindström
953d5680a3 Merge pull request #133 from grooverdan/power-crc32
MDEV-9288: Use POWER8 accelerated crc32
2015-12-16 09:34:24 +02:00
Daniel Black
60f09cd2b7 MDEV-9288: portablity for compling on non-power platforms
Also removed surperflous stdio include.
2015-12-16 11:12:05 +11:00
Sergei Golubchik
a70f700a03 after merge fix debian builds 2015-12-15 23:34:32 +01:00
Sergei Golubchik
2116649dee after-merge fix replication tests
* mostly update result files
* also updating test/include files to match 5.6
2015-12-15 20:25:06 +01:00
Sergei Golubchik
7a21364332 after-merge fix partitioning tests
* use --sort_result in test files as needed
* remove old and wrong mariadb-5.3 related partitioning hack
   from ha_tokudb.cc
2015-12-15 20:25:04 +01:00
Sergei Golubchik
15f7f5c6bb Merge branch 'merge-tokudb-5.6' into 10.0 2015-12-15 20:13:09 +01:00
Jan Lindström
1ac6640210 MDEV-9129: Server is restarting in the loop after crash
Analysis: We have reserved ROW_MERGE_RESERVE_SIZE ( = 4) for
encryption key_version. When calculating is there more
space on sort buffer, this value needs to be substracted
from current available space.
2015-12-15 20:37:33 +02:00
Jan Lindström
98c9fbfa21 MDEV-8297: information_schema.innodb_sys_tablestats.modified_counter doesn't change on UPDATE
Update modified-counter also if update effects non-indexed columns.
2015-12-15 11:29:15 +02:00
Alexander Barkov
e9b4a041af MDEV-8721 AIX: Compile error xtradb:log0log.cc 2015-12-15 11:59:37 +04:00
Jan Lindström
b63bf7368b MDEV-8923: port innodb_buffer_pool_dump_pct from MySQL
Backport pull request #125 from grooverdan/MDEV-8923_innodb_buffer_pool_dump_pct to 10.0

WL#6504 InnoDB buffer pool dump/load enchantments

This patch consists of two parts:

    1. Dump only the hottest N% of the buffer pool(s)
    2. Prevent hogging the server duing BP load

From MySQL - commit b409342c43ce2edb68807100a77001367c7e6b8e

Add testcases for innodb_buffer_pool_dump_pct_basic.

Part of the code authored by Daniel Black
2015-12-15 09:35:22 +02:00
Daniel Axtens
2538c7cf89 Use POWER8 accelerated crc32
- Make accelerated checksum available to InnoDB and XtraDB.
 - Fall back to slice-by-eight if not available. The mode used is printed on startup.
 - Will only build on POWER systems at the moment until CMakeLists are modified
   to only add the crc32_power8/ files when building on POWER.

running MySQL-5.7 unittest/gunit/innodb/ut0crc32-t

Before:

1..2
Using software crc32 implementation, CPU is little-endian
ok 1
Using software crc32 implementation, CPU is little-endian
    normal CRC32: real    0.148006 sec
    normal CRC32: user    0.148000 sec
    normal CRC32: sys     0.000000 sec
big endian CRC32: real    0.144293 sec
big endian CRC32: user    0.144000 sec
big endian CRC32: sys     0.000000 sec
ok 2

After:

1..2
Using POWER8 crc32 implementation, CPU is little-endian
ok 1
Using POWER8 crc32 implementation, CPU is little-endian
    normal CRC32: real    0.008097 sec
    normal CRC32: user    0.008000 sec
    normal CRC32: sys     0.000000 sec
big endian CRC32: real    0.147043 sec
big endian CRC32: user    0.144000 sec
big endian CRC32: sys     0.000000 sec
ok 2

Author CRC32 ASM code: Anton Blanchard <anton@au.ibm.com>
ref: https://github.com/antonblanchard/crc32-vpmsum

Signed-off-by: Daniel Black <daniel.black@au.ibm.com>
2015-12-15 15:11:17 +11:00
Olivier Bertrand
e57876eacf - Fix MDEV-9279. Replacing exit(1) in yy_fatal_error by a longjmp.
modified:   storage/connect/fmdlex.c
  modified:   storage/connect/plgdbutl.cpp
2015-12-14 23:49:17 +01:00
Olivier Bertrand
11c339f432 - Fix MDEV-9279. Replacing exit(1) in yy_fatal_error by a longjmp.
modified:   storage/connect/fmdlex.c
  modified:   storage/connect/plgdbutl.cpp
2015-12-14 23:45:23 +01:00
Jan Lindström
99404c3437 MDEV-9276: MySQL Bug #78754: FK definitions missing from SHOW CREATE TABLE in "innodb_read_only" mode 2015-12-14 22:10:37 +02:00
Nirbhay Choubey
18173ddfc4 MDEV-9162 : MariaDB Galera Cluster memory leak on async slave node
As galera node (slave) received query log events from an async
replication master, it partially wrote the updates made to replication
state table (mysql.gtid_slave_pos) to galera transaction writeset post
TOI. As a result, the transaction handle, thus created within galera,
was never freed/purged as the corresponding trx did not commit.
Thus, it kept piling up for every query log event and was only reclaimed
upon server shutdown when the transaction map object got destructed.
Fixed by making sure that updates in replication slave state table
are not written to galera transaction writeset and thus, not replicated
to other nodes.
2015-12-14 11:33:52 -05:00
Vladislav Vaintroub
0db50be893 Fix logic around retrying failed Windows async IO as synchronous IO . os_file_write/read macros were wrong (had wrong number of args), among other things 2015-12-14 17:06:08 +01:00
Vladislav Vaintroub
f0da062818 fix compile error on Windows 2015-12-14 17:02:42 +01:00
Jan Lindström
4437f51682 MDEV-8869: Potential lock_sys->mutex deadlock
In wsrep brute force (BF) we have already took lock_sys and trx
mutex either on wsrep_abort_transaction() or
before wsrep_kill_victim().
2015-12-14 10:10:09 +02:00
Sergei Golubchik
3e206a518d Merge branch 'kentoku/10.0' into 10.0 2015-12-13 23:55:20 +01:00
Sergei Golubchik
6b4cc43f17 Merge branch 'connect/10.0' into 10.0 2015-12-13 23:52:43 +01:00
Olivier Bertrand
2ce0043bf3 - Copy error message from G to g when using temporary storage for parsing.
modified:   storage/connect/tabjson.cpp
2015-12-13 18:43:37 +01:00
Olivier Bertrand
8286b680b2 - Copy error message from G to g when using temporary storage for parsing.
modified:   storage/connect/tabjson.cpp
2015-12-13 18:39:32 +01:00
Sergei Golubchik
b418e97826 Merge branch 'merge/merge-perfschema-5.6' into 10.0 2015-12-13 17:19:18 +01:00
Sergei Golubchik
359ae59ac0 Merge branch 'merge/merge-xtradb-5.6' into 10.0 2015-12-13 16:23:02 +01:00
Sergei Golubchik
5b3c100788 Merge branch 'merge/merge-innodb-5.6' into 10.0 2015-12-13 10:18:42 +01:00
Sergei Golubchik
6bb292f1bc 5.6.28 2015-12-13 10:15:55 +01:00
Sergei Golubchik
1e270d504d 5.6.27-76.0 2015-12-13 10:13:18 +01:00
Sergei Golubchik
e9eaaa4b4a 5.6.28 2015-12-13 10:11:49 +01:00
Sergei Golubchik
1623995158 Merge branch '5.5' into 10.0 2015-12-13 00:10:40 +01:00
Olivier Bertrand
673cc06598 Merge branch 'ob-10.1' into 10.1 2015-12-11 19:19:21 +01:00
Olivier Bertrand
32879b9580 Update version number 2015-12-11 18:43:54 +01:00
Olivier Bertrand
541d36f761 Update version number 2015-12-11 18:29:03 +01:00
Sergei Golubchik
4a450928e0 fix a few spelling mistakes
https://github.com/MariaDB/server/pull/56
2015-12-11 15:21:42 +01:00
Jan Lindström
c19972fc87 MDEV-9251: Fix MySQL Bug#20755615: InnoDB compares column names case sensitively,
while according to Storage Engine API column names should be compared
case insensitively. This can cause FRM and InnoDB data dictionary to
go out of sync.
2015-12-11 14:33:41 +02:00
Sergey Vojtovich
d09c60cff9 MDEV-8571 - After mysqloptimize sometimes one of the tables is marked as crashed
OPTIMIZE TABLE against MyISAM/Aria table may fail and leave stale temporary file
if mysql_file_create() returns 0 file descriptor. This was due to wrong
condition, which considered 0 as failure.

5.5 doesn't have fix for MDEV-5679, thus 0 file descriptor is always occupied
by stdin and this bug is not reproducible.

10.1 has fix for MDEV-8475, which hides this bug.

No test case since it mostly depends on how OS returns file descriptors.
2015-12-11 11:42:04 +04:00
Jan Lindström
311f0308d0 MDEV-9148: Assertion `thd->stmt_arena != thd->progress.arena' failed in thd_progress_init
Called thd_progress_init() from several threads used for FT-index
creation. For FT-indexes, need better way to report progress,
remove current one for them.
2015-12-10 16:53:19 +02:00
Sergey Vojtovich
b07043fd51 MDEV-8178 - Wrong progress report for operations on InnoDB tables
Correct InnoDB calls to progress report API:
- second argument of thd_progress_init() is number of stages, one stage is
  enough for the row merge
- third argument of thd_progress_report() is some value indicating threshold,
  for the row merge it is file->offset
- second argument of thd_progress_report() is some value indicating current
  state, for the row merge it is file->offset - num_runs.
2015-12-10 13:46:01 +04:00
Sergei Petrunia
7bf7fea706 MDEV-6662: possible bug in cassandra_se.cc
Fix the trivial problem: we were modifying function's arguments,
not member variables.
There is no testcase as this can't be easily checked from MTR.
2015-12-10 02:28:41 +03:00
Sergei Golubchik
d67aacb4fb fix xtradb compilation on windows 2015-12-09 17:11:55 +01:00
Sergei Golubchik
142b725607 Merge branch 'merge/merge-xtradb-5.5' into 5.5
5.5.46-37.6
2015-12-09 12:57:04 +01:00
Sergei Golubchik
9457139e59 5.5.46-37.6 2015-12-09 12:27:04 +01:00
Sergei Golubchik
abf9d35213 Merge branch 'mysql/5.5' into 5.5 2015-12-09 10:00:49 +01:00
Olivier Bertrand
32393e2253 Merge branch 'ob-10.1' into 10.1 2015-12-09 00:02:04 +01:00
Olivier Bertrand
a18a3fbdd1 - Serialize: Protect again eventual longjmp's.
Always return NULL on error.
Adding also the file length.
  modified:   storage/connect/json.cpp
  modified:   storage/connect/jsonudf.cpp

- JSONCOL::WriteColumn Add types SHORT and BIGINT as accepted
  modified:   storage/connect/tabjson.cpp

- TDBJSN: Make this type use a separate storage for Json parsing
and retrieve this memory between each rows. This is necessary
to be able to handle big tables. See MDEV-9228.
  modified:   storage/connect/tabjson.cpp
  modified:   storage/connect/tabjson.h
2015-12-09 00:00:08 +01:00
Olivier Bertrand
8ba013a258 - Serialize: Protect again eventual longjmp's.
Always return NULL on error.
Adding also the file length.
  modified:   storage/connect/json.cpp
  modified:   storage/connect/jsonudf.cpp

- JSONCOL::WriteColumn Add types SHORT and BIGINT as accepted
  modified:   storage/connect/tabjson.cpp

- TDBJSN: Make this type use a separate storage for Json parsing
and retrieve this memory between each rows. This is necessary
to be able to handle big tables. See MDEV-9228.
  modified:   storage/connect/tabjson.cpp
  modified:   storage/connect/tabjson.h
2015-12-08 16:39:13 +01:00