Commit graph

85,839 commits

Author SHA1 Message Date
John Esmet
4bdb0dee1c Fix a mistake during merge 2014-03-03 09:10:41 -05:00
John Esmet
3817fd161d refs #190 Remove conditonal compilation of lambda code, which isn't widely supported on older systems 2014-03-03 09:04:00 -05:00
John Esmet
2f1eccd44e The code in <functional> is not supported on reasonably old systems.
Revert "fixes #190 Use the locktree escalator lambda function API, remove"

This reverts commit 34666ecb9b.
2014-03-03 08:57:55 -05:00
John Esmet
e20bccc17a fixes #46 Add dynamic-value omt clone (dmt) and use it to implement basement nodes 2014-03-02 22:46:49 -05:00
John Esmet
4595401019 Attempt to placate the OSX buildslaves, which do not appreciate multiple
definitions of `assert'
2014-03-02 20:37:25 -05:00
John Esmet
a01e76b3e5 refs #116 Refactor mempool construction in bndata so it covers more
cases.
2014-03-02 20:17:37 -05:00
John Esmet
1221054361 fixes #116 Remove the 25% padding from toku_mempool_construct. Clean up
the bndata code that calls toku_mempool_construct.
2014-03-02 18:53:39 -05:00
John Esmet
5b081b1927 Attempt to placate the buildslaves - they seem to not like these include
directives the way my desktop does.
2014-03-02 18:22:40 -05:00
John Esmet
d037524b70 fixes #188 Renamed the last brt artifacts to ft_handle. Tried to keep
comments etc sane by not dropping a big sed bomb. Hopefully things make
sense from here on out.
2014-03-02 18:04:37 -05:00
John Esmet
34dbe5ecb2 Fix a maybe-uninitialized warning 2014-03-02 17:54:33 -05:00
John Esmet
0d6edd44b6 fixes #189 Clean up huge page detection a bit. It's not perfect but it's
an improvement.
2014-03-02 17:19:46 -05:00
John Esmet
9b875ae5b1 fixes #190 Use the locktree escalator lambda function API, remove
condidtional compilation.
2014-03-02 16:53:41 -05:00
John Esmet
f1e6eda063 Tests compile now 2014-03-01 21:27:32 -05:00
John Esmet
71fc55995f Rename toku_pin_ftnode to toku_pin_ftnode_for_query, since it does
query-specific things like applying ancestors messages and upgrading
PL_READ to PL_WRITE_CHEAP in such a scenario
2014-03-01 21:11:05 -05:00
John Esmet
6ba9232dc1 Renamed 'toku_pin_ftnode_off_client_thread' to 'toku_pin_ftnode_with_dep_nodes' 2014-03-01 21:10:59 -05:00
John Esmet
70c6f6e742 Remove toku_unpin_ftnode_off_client_thread 2014-03-01 20:49:24 -05:00
John Esmet
489e3eab6e Got rid if some stuff, tokufractaltree compiling 2014-03-01 20:43:22 -05:00
John Esmet
10a4b7668b fixes #144 Remove the 'batched' API, which was deprecated long ago when
the cachetable reader-writer lock was replaced with bucket mutexes.
2014-03-01 20:15:47 -05:00
John Esmet
5603451411 fixes #177 Rename cmd to msg when it is referring to a FT_MSG as opposed
to a logentry command in the recovery log / rollback log.
2014-03-01 19:57:40 -05:00
John Esmet
ddacebb1ea fixes #187 Add a paranoid invariant that left endpoints are <= right
endpoints on acquire and release.
2014-03-01 19:25:08 -05:00
John Esmet
7a5f8ba8a8 refs #186 Rename utils/ -> tools/ 2014-03-01 19:13:23 -05:00
John Esmet
6e76df11b1 refs #184 Remove non-production code 2014-03-01 19:07:18 -05:00
John Esmet
3b85f796d8 fixes #184 Remove non-production code 2014-03-01 18:56:22 -05:00
Sergey Vojtovich
84d13a7e88 MDEV-5081 - Simple performance improvement for MariaDB
Currently fast mutexes have lower throuput compared to normal mutexes.
Remove them from release build configuration.
2014-02-28 15:46:02 +04:00
Michael Widenius
a10a9448b0 Added new states to be able to better diagnose where server hangs.
- Table locks now ends with state "After table lock"
- Open table now ends with state "After opening tables"
- All calls to close_thread_tables(), not only from mysql_execute_command(), has state "closing tables"
- Added state "executing" for mysql admin commands, like CACHE INDEX, REPAIR TABLE etc.
- Added state "Finding key cache" for CACHE INDEX
- Added state "Filling schema table" when we generate temporary table for SHOW commands and information schema.

Other things:
Add limit from innobase for thread_sleep_delay. This fixed a failing tests case.
Added db.opt to support-files to make 'make package' work


mysql-test/suite/funcs_1/datadict/processlist_val.inc:
  Use new state
mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result:
  Updated test result because of new state
mysql-test/suite/funcs_1/r/processlist_val_no_prot.result:
  Updated test result because of new state
sql/CMakeLists.txt:
  Have option files in support-files
sql/lock.cc:
  Added new state 'After table lock'
sql/sql_admin.cc:
  Added state "executing" and "Sending data" for mysql admin commands, like CACHE INDEX, REPAIR TABLE etc.
  Added state "Finding key cache"
sql/sql_base.cc:
  open tables now ends with state "After table lock", instead of NULL
sql/sql_parse.cc:
  Moved state "closing tables" to close_thread_tables()
sql/sql_show.cc:
  Added state "Filling schema table" when we generate temporary table for SHOW commands and information schema.
storage/xtradb/buf/buf0buf.c:
  Removed compiler warning
storage/xtradb/handler/ha_innodb.cc:
  Add limit from innobase for thread_sleep_delay. This fixed a failing tests case.
support-files/db.opt:
  cmakes needs this to create data/test directory
2014-05-03 19:12:17 +03:00
Alexander Barkov
f137be800e An after-fix for MDEV-6146 Can't mix (latin1_swedish_ci,NUMERIC) and (utf8_unicode_ci,IMPLICIT) for MATCH
The original patch broke "mtr --ps fulltext".
2014-04-29 14:38:01 +04:00
Alexander Barkov
f467f4bb93 MDEV-5459 Illegal mix of collations for datetime 2014-04-28 17:01:58 +04:00
Alexander Barkov
1081e403c6 MDEV-5702 Incorrect results are returned with NULLIF() 2014-04-28 15:56:31 +04:00
unknown
968f4d4e25 MDEV-6139: UPDATE w/ join against MRG_MyISAM table with read-only sub-table failsUPDATE w/ join against MRG_MyISAM table with read-only sub-table fails
The problem was that on opening all tables TL_WRITE, than local tables which is not updated set to TL_READ, but underlying tables of MyISAMmrg left untouched.

Prartition engine has not this problem.

All cases where lock_type assigned is not changed because call of virtual function is not cheap.
2014-04-28 09:13:53 +03:00
Jan Lindström
772aa0c575 MDEV-6160: InnoDB: Failing assertion: page_is_comp(next_page) == page_is_comp(page)
This is not yet a fix. This is change to print additional information at the point
when this assertion is going to happen. Print as much information about the pages
and index to find out why next page is not a compact format.
2014-04-28 08:30:05 +03:00
Elena Stepanova
53612e7787 Modified the condition for skipping innodb.innodb-autoinc to exclude
the part which was defined by MariaDB version and thus caused a wrong
check result
2014-04-28 03:37:53 +04:00
Elena Stepanova
64d7c97db9 MDEV-6178 mysql_upgrade breaks databases with long user names
Added a 5.5-specific test which involves manual modification of system
tables. The problem itself was fixed in MDEV-6068
2014-04-28 02:56:53 +04:00
Elena Stepanova
4ccea172ff MDEV-6169 main.myisam-metadata fails mtr internal check
The test didn't clean debug_sync
2014-04-26 23:16:51 +04:00
Elena Stepanova
ca47b5652b MDEV-6168 rpl.rpl_heartbeat_basic fails mtr internal check
Synchronization with master was missing
2014-04-26 21:32:08 +04:00
Elena Stepanova
2110bc6159 Increment the version number 2014-04-26 21:29:15 +04:00
Michael Widenius
b17a053cc9 MDEV-6129: Server crashes during UNION with ORDER BY field IS NULL
Fixed crashing bug for union queries where there was no real tables.


mysql-test/r/group_by.result:
  Added test case
mysql-test/t/group_by.test:
  Added test case
sql/db.opt:
  Removed genrated file
sql/item.cc:
  Handled case when table_list->pos_in_tables is not set. Can only happens when there is no real tables in query
2014-04-24 18:20:57 +03:00
Alexander Barkov
64d33032a6 Merge 5.3->5.5 2014-04-23 17:43:20 +04:00
Alexander Barkov
2f93e7cf47 MDEV-6146 Can't mix (latin1_swedish_ci,NUMERIC) and (utf8_unicode_ci,IMPLICIT) for MATCH 2014-04-23 10:28:06 +04:00
Alexander Barkov
31c82360e4 Merge from 5.3 2014-04-21 14:22:18 +04:00
Alexander Barkov
f5b73fe3f1 Merge from 5.3. 2014-04-21 12:19:47 +04:00
Alexander Barkov
1c6d508a2b Merge from 5.3 2014-04-18 13:41:15 +04:00
Alexander Barkov
f7a47e137b Merge from 5.3 2014-04-18 12:16:56 +04:00
Alexey Botchkov
ed899ec8f2 MDEV-6124 Audit plugin fails with the Percona-Server 5.6.
Some lines of code in file_logger.c were lost while moving to the
   general MariaDB tree. Adding them.
2014-04-17 02:12:08 +05:00
Alexey Botchkov
142c20eda9 MDEV-4856 SQL_ERROR_LOG shows 1146 errors which didnt appear in mysql client.
The fill_schema_table() function used to call get_table_share() for a table name in WHERE
    then clear the error list. That way plugins receive the superfluous error notification if it
    happens in it. Also the problem was that error handler didn't prevent the suppressed
    error message from logging anyway as the logging happens in THD::raise_condition
    before the handler call.
    Trigger_error_handler is remade into Warnings_only_error_handler, so it stores the error
    message in all cases in the thd->stmt_da.
    Then later the stored error is raised.
2014-04-15 20:41:08 +05:00
Alexey Botchkov
708ba733da MDEV-5138 Numerous test failures in "mtr --ps --embedded".
If a prepared statement calls an stored procedure,
     the thd->server_status out of the SP goes up
     to the PS and then to the client. So that the
     client gets the SERVER_STATUS_CURSOR_EXISTS status
     if the SP uses a cursor. Which makes the embedded
     server fail.
     Fixed by saving/restoring the upper-level server_status
     in sp_head::execute().
2014-04-15 18:17:47 +05:00
Alexey Botchkov
9d32b8b2aa MDEV-5138 Numerous test failures in "mtr --ps --embedded".
Thread can be disconnected internally for example after COMMIT statements.
     So we should check this for the statement execution.
2014-04-15 18:16:47 +05:00
Alexey Botchkov
8a6a95a111 MDEV-5138 Numerous test failures in "mtr --ps --embedded".
mysqltest in the 'embedded-server' mode runs queries in a separate thread,
    but it didn't do so for the prepared statements - they were run in the main thread.
    That leads to inconsistencies.
    When a test sets SESSION 'dbug' variable like
            SET SESSION debug_dbug="+d,warn_during_ha_commit_trans";
    it is run as a plain query in that separate thread, so the main thread remains unaffected.
    After that the prepared statement run in the main thread doesn't produce expected 'dbug' errors,
    so the test fails.
    To fix that I made prepared statement to be run in that special thread along with the plain queries.
    That makes the environment consistent.
2014-04-15 18:12:25 +05:00
Alexey Botchkov
365960a068 MDEV-5138 Numerous test failures in "mtr --ps --embedded".
As Davi added code like
          sav_protocol= thd->protocol
          thd->protocol= &thd->protocol_binary
          ...
          thd->protocol= sav_protocol
  the fucntions like emb_store_querycache_result() cannot determine
  the used protocol testing thd->protocol == &thd->protocol_binary.
  Fixed by additional check thd->command == COM_STMT_EXECUTE.
2014-04-15 18:09:58 +05:00
Alexey Botchkov
7d1033115a MDEV-5138 Numerous test failures in "mtr --ps --embedded".
The function Protocol::net_store_data(a, b, CHARSET_A, CHARSET_B) should
        be adapted to be working in the embedded server as it's done
        with the Protocol::net_store_data(a, b).
        That new function renamed as net_store_data_cs, so we can make it
        virtual.
2014-04-15 18:08:33 +05:00
unknown
05722f06b2 MDEV-5991: crash in Item_field::used_tables
Units of subqueroes from excluded expressions should be excluded from select_lex/select_unit tree.
2014-04-15 13:20:26 +03:00