Commit graph

88918 commits

Author SHA1 Message Date
Sergei Petrunia
c235de12ae MDEV-6394: ANALYZE DELETE .. RETURNING fails with ERROR 2027 Malformed packet (now, the code)
Forgot the code
2014-06-26 22:06:41 +04:00
Sergei Petrunia
9394f2f9b0 Merge branch '10.1' of github.com:MariaDB/server into 10.1 2014-06-26 22:04:04 +04:00
Sergei Petrunia
3d7eeb6307 MDEV-6394: ANALYZE DELETE .. RETURNING fails with ERROR 2027 Malformed packet
- Add support for DELETE .. RETURNING statement in ANALYZE code.
2014-06-26 22:03:13 +04:00
Jan Lindström
c6d29cd30d Merge branch '10.1' of github.com:MariaDB/server into 10.1 2014-06-26 20:47:08 +03:00
Jan Lindström
3e5994868d MDEV-6392: Change innodb_have_lzo and innodb_have_lz4 as a static
variables and reduce the number of ifdef's
2014-06-26 20:45:27 +03:00
Sergei Petrunia
be885ebe8c Code cleanup, more tests. 2014-06-26 20:12:18 +04:00
Sergei Petrunia
c6be74458f MDEV-6398: ANALYZE UPDATE does not populate r_rows
- In print_explain_row(), do not forget to print r_rows.
- Switch Explain_update from using its own counters to re-using
  Table_access_tracker.
- Make ANALYZE UPDATE code structure uniform with ANALYZE DELETE.
2014-06-26 19:09:23 +04:00
Sergei Petrunia
a787edd7e6 MDEV-6395: Make ANALYZE UPDATE/DELETE handle the degenerate query plans. 2014-06-26 18:32:18 +04:00
Sergei Petrunia
12d6f89b07 MDEV-6393: ANALYZE SELECT crashes ... Don't try printing EXPLAIN if we had an error. 2014-06-26 15:55:25 +04:00
Sergei Golubchik
b7d10e5687 MDEV-5730 enhance security using special compilation options
add a comment
2014-06-26 12:46:33 +02:00
Sergei Golubchik
da4f8269bf MDEV-5730 enhance security using special compilation options
-Wl,-z,relro,-z,now
-pie
-fstack-protector --param=ssp-buffer-size=4
-D_FORTIFY_SOURCE=2
2014-06-26 11:54:13 +02:00
Sergei Golubchik
6c0e3ef450 cmake cleanup: use MY_CHECK_AND_SET_COMPILER_FLAG.
move MY_CHECK_C_COMPILER_FLAG and MY_CHECK_CXX_COMPILER_FLAG
to a separate file, introduce MY_CHECK_AND_SET_COMPILER_FLAG,
use it where possible.
2014-06-26 11:54:13 +02:00
Sergei Golubchik
afa4c36ca0 cmake: prefer INSTALL(PROGRAMS over INSTALL(FILES 2014-06-26 11:54:12 +02:00
Sergei Golubchik
6c9dd841cb remove unused sql/examples 2014-06-26 11:54:12 +02:00
Alexey Botchkov
b95ec13553 Revert "MDEV-12 OpenGIS: create required tables: GeometryColumns, related views."
This reverts commit 0bf9fd8929.
2014-06-26 11:37:24 +05:00
Sergei Petrunia
648b957f42 Merge branch 'bb-10.1-explain-analyze' into 10.1 2014-06-26 10:48:08 +04:00
Sergei Petrunia
68bf3c5052 Code cleanup 2014-06-26 10:43:58 +04:00
Sergei Petrunia
18d5a748f1 MDEV-406: ANALYZE $stmt: Make multi-table UPDATE/DELETE work, code cleanup. 2014-06-26 01:22:50 +04:00
Alexey Botchkov
0bf9fd8929 MDEV-12 OpenGIS: create required tables: GeometryColumns, related views.
Scripts added that create OpenGIS-required views and tables they're based upon.
2014-06-26 00:46:21 +05:00
Jan Lindström
aa22471633 Merge branch '10.1' of github.com:MariaDB/server into 10.1
Conflicts:
	storage/xtradb/handler/ha_innodb.cc
2014-06-25 21:00:24 +03:00
Sergei Petrunia
4a7cacda58 MDEV-406: ANALYZE $stmt: fix "explain UPDATE view problem". 2014-06-25 20:47:54 +04:00
Jan Lindström
5893ae0b81 Fix test failure when trying to set compression algorithm to 3 2014-06-25 19:04:44 +03:00
Sergei Petrunia
3da81ab97f MDEV-406: ANALYZE $stmt: more testcases, fix memory leak 2014-06-25 18:35:30 +04:00
Sergei Petrunia
424d5de89d Merge bb-10.1-explain-analyze into 10.1 2014-06-25 16:46:42 +04:00
Sergei Petrunia
b561a98a87 MDEV-406: ANALYZE $stmt: add some tests for joins 2014-06-25 16:01:09 +04:00
Sergei Petrunia
7711999d8b MDEV-406: ANALYZE $stmt: add support for BNL join buffering 2014-06-25 15:15:38 +04:00
Jan Lindström
3bca01930a MDEV-6361: innodb_compression_algorithm configuration variable can
be set to unsupported value.

MDEV-6350: Excessive unnecessary memory allocation at InnoDB/XtraDB
startup if LZO is installed.
2014-06-25 08:46:54 +03:00
Sergei Petrunia
c3cfb6910a MDEV-406: ANALYZE $stmt: Scans that never executed will have r_rows=NULL 2014-06-24 23:58:13 +04:00
Sergei Petrunia
06a87d77e6 Fix compile on Windows: use rint() instead of round(). 2014-06-24 23:38:49 +04:00
Sergei Petrunia
1dd5d31c73 MDEV-406: ANALYZE $stmt: fix order_by.test
In JOIN_TAB::update_explain_data(), take into account that
- the table that may have pre-sorted is the first non-const table
- Tables that are eliminated by table elimination are marked
  as const tables, but are not present in the Explain data structures
2014-06-24 22:21:34 +04:00
Sergei Petrunia
c08de06246 MDEV-406: ANALYZE $stmt: get ANALYZE work for subqueries
- "ANALYZE $stmt" should discard select's output, but it should still
  evaluate the output columns (otherwise, subqueries in select list
  are not executed)
- SHOW EXPLAIN's code practice of calling JOIN::save_explain_data()
  after JOIN::exec() is disastrous for ANALYZE, because it resets
  all counters after the first execution. It is stopped
  = "Late" test_if_skip_sort_order() calls explicitly update their part
    of the query plan.
  = Also, I had to rewrite I_S optimization to actually have optimization
    and execution stages.
2014-06-24 19:41:43 +04:00
Sergei Golubchik
787ec31778 MDEV-6248 GUI-friendly cmake options to enable/disable plugins
* Introduce a set of PLUGIN_xxx cmake options with values
  NO, STATIC, DYNAMIC, AUTO, YES (abort if plugin is not compiled)
* Deprecate redundant and ambiguous WITH_xxx, WITH_PLUGIN_xxx,
  WITH_xxx_STORAGE_ENGINE, WITHOUT_xxx, WITHOUT_PLUGIN_xxx,
  WITHOUT_xxx_STORAGE_ENGINE
* Actually check whether a plugin is disabled (DISABLED keyword was
  always present, but it was ignored until now).
* Support conditionally disabled plugins - keyword ONLY_IF
* Use ONLY_IF for conditionally skipping plugins, instead of
  doing MYSQL_ADD_PLUGIN conditionally as before. Because if
  MYSQL_ADD_PLUGIN isn't done at all, PLUGIN_xxx=YES cannot work.
2014-06-23 17:39:13 +02:00
Sergei Golubchik
da9bb66b02 cmake GUI cleanup
mark path-related variables (AIO_LIBRARY, ODBC_LIBRARY, ODBC_INCLUDE_DIR,
Thrift_LIBS, Thrift_INCLUDE_DIRS, CRYPTO_LIBRARY, OPENSSL_LIBRARIES,
OPENSSL_ROOT_DIR, OPENSSL_INCLUDE_DIR) as advanced - paths are
automatically discovered by cmake.

mark few choice variables (ENABLED_LOCAL_INFILE, WITHOUT_SERVER,
DISABLE_SHARED) as not advanced - they are user choices, not automatically
configured values.

remove unused BACKUP_TEST variable.
2014-06-23 17:39:13 +02:00
Sergei Golubchik
242e7f958d MDEV-4549 [PATCH] Clean up code working with ACL tables
* enum values to index different ACL tables, instead of hard-coded numbers
  (even different in diffent functions).
* move TABLE_LIST initialization into open_grant_tables()
  and use it everywhere
* change few my_bool's to bool's
2014-06-23 16:23:51 +02:00
Sergei Golubchik
f321d3e5f1 main.temp_table_frm failure on fulltest (--embedded, when TMPDIR=/tmp)
use more restrictive --list_files to hide the usual /tmp garbage
2014-06-21 08:56:49 +02:00
Sergei Golubchik
ce6a63ec41 MDEV-4260 Don't create frm files for temporary tables
* Don't write frm for tmp tables
* pass frm image down to open_table_uncached, when possible
* don't use truncate-by-recreate for temp tables - cannot recreate
  without frm, and delete_all_rows is faster anyway
2014-06-20 15:47:44 +02:00
Sergei Golubchik
cc5b3998b6 remove HTON_FLUSH_AFTER_RENAME (BDB-ism, unused for years) 2014-06-20 11:34:50 +02:00
Sergei Golubchik
fb8818c1af Fix CMakeLists.txt for cmake Ninja generator 2014-06-20 09:03:47 +02:00
Sergei Golubchik
dc64ba2187 MDEV-6137 better help for SET/ENUM sysvars
Auto-generate the allowed list of values for enum/set/flagset options
in --help output. But don't do that when the help text already has them.

Also, remove lists of values from help strings of various options, where
they were simply listed without any additional information.
2014-06-19 12:02:23 +02:00
Sergei Golubchik
0cb7c19fbe update sys_vars.innodb_compression_algorithm_basic to pass
it checked that the default is lz4. Which only worked on systems that
had lz4 and did not have lzo. Now it checks for the default to be zlib,
which works on systems that has neither lz4 or lzo. Like our package
builders in buildbot. This is intentional, we don't want introduce
additional dependencies (lz4, lzo) for our packages just yet.
This can (and will) be reconsidered, and this test can (and will)
be updated again.
2014-06-18 15:00:58 +02:00
Jan Lindström
5f02051f07 Merge branch '10.1' of github.com:MariaDB/server into 10.1 2014-06-17 11:33:50 +03:00
Jan Lindström
89e0514150 Fixed test failure introduced by adding a new dynamic
configuration variable innodb_compression_algorithm.
Removed unnecessary test for removed configuration
variable.
2014-06-17 08:40:54 +03:00
Sergei Petrunia
581b889771 Update analyze_stmt.result after the last commit 2014-06-16 13:34:03 +04:00
Sergei Golubchik
cf1a09e42f MDEV-6107 merge default_tmp_storage_engine
Adapt default_tmp_storage_engine implementation from mysql-5.6
New feature (as compared to 5.6), default_tmp_storage_engine=NULL
means that temporary tables will use default_storage_engine value.
This makes the behavior backward compatible.
2014-06-15 18:42:31 +02:00
Sergei Golubchik
2edcf8f9ff .gitignore ninja files 2014-06-15 18:42:10 +02:00
Sergei Golubchik
24133e654d fix bison warnings (clash <NONE> != <>) 2014-06-14 18:24:22 +02:00
Sergei Golubchik
f61f36b386 Merge branch '10.0' into 10.1
Conflicts:
	CMakeLists.txt
	VERSION
Modified:
	.gitignore
2014-06-13 16:10:25 +02:00
Sergei Golubchik
55b010233a promote server_audit and sequence plugins to stable 2014-06-13 13:25:32 +02:00
Sergei Golubchik
0c64cd83eb valgrind warning. initialize found_rows earlier, before any "goto err". 2014-06-12 10:57:03 +02:00
Sergei Golubchik
3d4dbe4d94 avoid uppercase table aliases tests - they're not portable 2014-06-11 19:08:06 +02:00