Commit graph

90359 commits

Author SHA1 Message Date
Sergei Golubchik
6627895176 MDEV-6731 No ALGORITHM information in I_S.VIEWS 2015-01-09 10:23:28 +01:00
Sergei Golubchik
b111d98847 MDEV-5533 increase the default max thread pool size
500 -> 1000
2015-01-09 10:23:28 +01:00
Sergei Golubchik
8655136222 remove wsrep_hton dependency from innodb/xtradb 2015-01-08 21:27:30 +01:00
Sergei Golubchik
4ce39dca99 enable feedback plugin by default
As requested by Monty
2015-01-08 16:51:30 +01:00
Nirbhay Choubey
ed0ea644a0 MDEV-7412: Segfault during start with mysqldump SST
Added a validity check for my_bind_addr_str before its value
is accessed.
2015-01-05 17:06:50 -05:00
Nirbhay Choubey
aee3ac4877 MDEV-7222: Cluster Node Crash at CREATE DEFINER statement
Check whether the definer host string is not null before
appending it to the specified buffer.
2015-01-02 10:02:04 -05:00
Nirbhay Choubey
6f4f8c5f8a MDEV-7374 : Losing connection to MySQL while running ALTER TABLE
In the special case of ALTER TABLE with >10K rows, wsrep commit
should skip if wsrep is not enabled. Added a test case.
2014-12-31 20:58:54 -05:00
Nirbhay Choubey
61f73d40ca MDEV-7397: SIGSEGV on inserting into a key-less table
When wsrep is enabled, an md5 hash of the entire row is calculated
for tables with no PK. It, however segfaulted as the md5 context
object was not properly constructed.

Fixed by ensuring that the YaSSL's context object gets constructed
explicitly at the specified pre-allocated location (placement)
before its used.

Added a test case.
2014-12-31 19:52:35 -05:00
Sergey Vojtovich
dc92032fa3 Fixed sysvars_server_embedded test result to reflect new values for
query_prealloc_size, query_alloc_block_size and log_tc_size.

Fixed incorrect registration of LOCK_binlog_end_pos in PFS.
2014-12-29 15:41:08 +04:00
Sergey Vojtovich
6dbc48ca79 MDEV-7324 - Lock-free hash for table definition cache 2014-12-28 19:46:18 +04:00
Sergei Golubchik
8883c54ac0 lf_hash_iterate() function 2014-12-28 19:46:18 +04:00
Sergei Golubchik
48430e4676 lf_hash changes, in lfind()
casts, etc

real changes are:
* remove one retry, it is enough to check for DELETED
  after the key is read
* advance 'head' pointer when we see a dummy node to have
  shorter retries
2014-12-28 19:46:18 +04:00
Jan Lindström
c0d4e8a395 MDEV-7262: innodb.innodb-mdev7046 fail on BuildBot 2014-12-28 13:54:41 +02:00
Jan Lindström
46f3f93a2c Merge pull request #14 from James-TR/MDEV-7369
Add fix for MDEV-7369
2014-12-28 12:55:01 +02:00
James Taylor
7860333669 Add fix for MDEV-7369
See also https://mariadb.atlassian.net/browse/MDEV-7369
2014-12-27 03:23:49 +00:00
Sergey Vojtovich
f65901eef2 MDEV-7273 - 10.1 fails to start up during tc_log initializations on PPC64
log-tc-size is 24K by default. Page size is 64K on PPC64. But log-tc-size
must be at least 3 x page size. This is enforced by TC_LOG_MMAP::open()
with a comment: to guarantee non-empty pool.

This all makes server not startable in default configuration on PPC64.

Autosize log-tc-size, so that it's min value= page size * 3, default
value= page size * 6, block size= page size.
2014-12-26 23:38:45 +04:00
Sergey Vojtovich
8c616cd347 MDEV-7053 - WSREP_STATUS & WSREP_MEMBERSHIP I_S tables
wsrep_status was renamed to wsrep_info. Adjusted deb build scripts accordingly.
2014-12-26 19:44:38 +04:00
Sergey Vojtovich
db89dd3a8f MDEV-7364 - mysqld --help --verbose prints random values for "debug"
getopt value pointer of "debug" variable was pointing to incorrect address:
&global_system_variables. Runtime statements like SHOW VARIABLES materialize
value from DBUG structures on demand, so they never access getopt value pointer.
But mysqld --help --verbose loaded this value from &global_system_variables.

Remove "debug" variable from mysqld --help --verbose output by setting value
pointer to NULL.
2014-12-26 13:07:43 +04:00
Alexey Botchkov
ae09895c91 MDEV-7277 Server crashes on creating/opening tables on Windows debug build.
The srid variable was used uninitialised when the field wasn't GIS.
        Only problem is that it makes the debugger unhappy. Still added
        the initialization.
2014-12-24 10:06:12 +04:00
Nirbhay Choubey
03e0f1f866 MDEV-7053 : WSREP_STATUS & WSREP_MEMBERSHIP I_S tables
Addendum : Renamed plugin .so file.
2014-12-23 18:36:33 -05:00
Jonas Oreland
0b87de124d MDEV-162 Enhanced semisync replication
Implement --semi-sync-master-wait-point=AFTER_SYNC|AFTER_COMMIT.

When AFTER_SYNC, the semi-sync wait will be done earlier, before the storage
engine commit rather than after. This means that a transaction will not be
visible on the master until at least one slave has received it.
2014-12-23 14:16:32 +01:00
Jonas Oreland
4d8b346e07 MDEV-7257: Dump Thread Enhancements
Make the binlog dump threads not need to take LOCK_log while sending
binlog events to slave. Instead, a new LOCK_binlog_end_pos is used
just to coordinate tracking the current end-of-log.

This is a pre-requisite for MDEV-162, "Enhanced semisync
replication". It should also help reduce the contention on LOCK_log on
a busy master.

Also does some much-needed refactoring/cleanup of the related code in
the binlog dump thread.
2014-12-23 14:16:13 +01:00
Alexander Barkov
ea01fff505 Fixing test failures caused by the previous commits.
Adding "--source include/have_udf.inc" and a few "--replace" commands.
2014-12-16 15:31:25 +04:00
Alexander Barkov
2dbd26932d MDEV-7283 UDF: CREATE OR REPLACE, CREATE IF NOT EXISTS, DROP IF EXISTS
MDEV-7282 SP: CREATE OR REPLACE, CREATE IF NOT EXISTS
2014-12-15 17:41:15 +04:00
Nirbhay Choubey
48ed8ab215 MDEV-6891: Update company name 2014-12-12 10:58:38 -05:00
Elena Stepanova
263cf26e8b Increased the version number 2014-12-12 04:42:59 +04:00
Alexander Barkov
0b936cda07 Using Schema_specification_st instead of HA_CREATE_INFO in a few places
where the former is enough.
2014-12-10 16:46:21 +04:00
Alexander Barkov
822eb6ca3d MDEV-7285 SERVER: CREATE OR REPLACE and CREATE IF NOT EXISTS 2014-12-10 13:41:14 +04:00
Alexander Barkov
14cfb0acb8 MDEV-6409 CREATE VIEW replication problem if error occurs in mysql_register_view
An additional debug test, made by Sriram Patil while working on
"CREATE VIEW IF NOT EXISTS".
2014-12-10 12:00:25 +04:00
Alexander Barkov
60277b8b3c MDEV-7287 VIEW: CREATE IF NOT EXISTS
Forgot to do "git add" for a number of files in the previous commit.
2014-12-10 11:32:52 +04:00
Alexander Barkov
acdc383445 MDEV-7287 VIEW: CREATE IF NOT EXISTS 2014-12-10 11:06:36 +04:00
Alexander Barkov
92a523e5d5 MDEV-7280 DATABASE: CREATE OR REPLACE
A clean-up: require CREATE+DROP privileges for "CREATE OR REPLACE DATABASE",
instead of just CREATE privilege.
2014-12-10 10:40:35 +04:00
Alexander Barkov
31c7458e1a MDEV-7280 DATABASE: CREATE OR REPLACE
A test clean-up: The "SHOW DATABASES" queries now use "LIKE 'db%'",
to display only the databases created during this test,
thus exclude the system databases, as some of them can be optional
(e.g. performance_schema).
2014-12-10 08:19:19 +04:00
Alexander Barkov
dd270e43bf MDEV-7280 DATABASE: CREATE OR REPLACE 2014-12-10 08:13:08 +04:00
Alexander Barkov
c6d3f8058d MDEV-7112 Split HA_CREATE_INFO 2014-12-08 10:56:08 +04:00
Sergei Petrunia
b372720177 Update test results 2014-12-06 20:34:33 +03:00
Sergei Petrunia
913b7672c5 Merge bb-10.1-explain-json into 10.1 2014-12-06 20:33:25 +03:00
Sergei Petrunia
eeef80d09f EXPLAIN FORMAT=JSON : Fix MDEV-7266, bug in pretty-printer
- Single_line_formatting_helper should not accidentally exit the
  DISABLED state. No JSON construct should be able to move the
  Single_line_formatting_helper from DISABLED state.
2014-12-06 20:13:38 +03:00
Sergei Petrunia
dc259324d7 EXPLAIN JSON: Print out the "expensive constant condition" attached to joins. 2014-12-06 19:27:42 +03:00
Kristian Nielsen
db21fddc37 MDEV-6676: Optimistic parallel replication
Implement a new mode for parallel replication. In this mode, all transactions
are optimistically attempted applied in parallel. In case of conflicts, the
offending transaction is rolled back and retried later non-parallel.

This is an early-release patch to facilitate testing, more changes to user
interface / options will be expected. The new mode is not enabled by default.
2014-12-06 08:49:50 +01:00
Sergei Petrunia
1e3f09f163 MDEV-7264: Assertion `0' failed in subselect_engine::get_identifier()
Switch EXPLAIN JSON from using subselect_engine::get_identifier()
to the number from Item_subselect::unit.

Remove subselect_union_engine::get_identifier() because it was added
only for EXPLAIN JSON code.
2014-12-06 04:02:30 +03:00
Sergei Petrunia
5ee1c25fa8 EXPLAIN FORMAT=JSON: Full scan on NULL key (join case) 2014-12-06 03:11:03 +03:00
Sergei Petrunia
a80a797686 EXPLAIN FORMAT=JSON: Support "range checked for each record" 2014-12-06 02:23:37 +03:00
Sergei Petrunia
9cac7649ea EXPLAIN FORMAT=JSON: Support range+MRR plans (when MRR is used but BKA is not) 2014-12-06 01:11:22 +03:00
Sergey Vojtovich
8fb2c80fdb Fixed valgrind warnings in delete_dynamic().
Join_plan_state performs out-of-API initialization of DYNAMIC_ARRAY. This is
done to postpone actual array initialization till first use, whilst retaining
the right to call delete_dynamic().

Since delete_dynamic() now checks DYNAMIC_ARRAY::malloc_flags it should be
initialized it as well.
2014-12-05 16:38:48 +04:00
Monty
78564373fe my_alloc.c
- Changed 0x%lx -> %p
array.c:
- Static (preallocated) buffer can now be anywhere
my_sys.h
- Define MY_INIT_BUFFER_USED
sql_delete.cc & sql_lex.cc
- Use memroot when allocating classes (avoids call to current_thd)
sql_explain.h:
- Use preallocated buffers
sql_explain.cc:
- Use preallocated buffers and memroot
sql_select.cc:
- Use multi_alloc_root() instead of many alloc_root()
- Update calls to Explain
2014-12-05 11:01:51 +04:00
Sergey Vojtovich
3392278c86 MDEV-7004 - Merge scalability fixes from 10.0-power
Preallocate dynamic array and bitmap on mem_root to avoid expensive malloc.
This reduces number of allocations from 39 to 31 per OLTP RO transaction.
2014-12-05 11:01:51 +04:00
Sergey Vojtovich
eaa8c154e8 MDEV-7004 - Merge scalability fixes from 10.0-power
Preallocate dynamic array on THD mem_root to avoid expensive malloc.
2014-12-05 11:01:50 +04:00
Monty
070a6e7a89 - Changed default values of query_prealloc_size and query_alloc_block_size
so that a simple query with one join would not have to call my_malloc.
- Allow lower limites for query_prealloc_size for testing.
- Fixed wrong initialization of trans_alloc_block_size
2014-12-05 11:01:50 +04:00
Sergey Vojtovich
9127784d5c Cherry pick dynamic array changes from commit:
commit 85fd3d901311688e18ffce92ffc78129e5625791
Author: Monty <monty@mariadb.org>
Date:   Fri Aug 29 14:07:43 2014 +0300

    my_alloc.c
    - Changed 0x%lx -> %p
    array.c:
    - Static (preallocated) buffer can now be anywhere
    my_sys.h
    - Define MY_INIT_BUFFER_USED
    sql_delete.cc & sql_lex.cc
    - Use memroot when allocating classes (avoids call to current_thd)
    sql_explain.h:
    - Use preallocated buffers
    sql_explain.cc:
    - Use preallocated buffers and memroot
    sql_select.cc:
    - Use multi_alloc_root() instead of many alloc_root()
    - Update calls to Explain
2014-12-05 11:01:50 +04:00