| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
views."
This reverts commit 0bf9fd89290e2ebd6eb44c36b2885e9e314499b5.
|
|\ |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- "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.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
- Testcase for ANALYZE UNION
- Provide r_rows for union result.
|
| | |
| | |
| | |
| | |
| | | |
- Support tracking for UNIONs, temporary-table based ORDER BYs,
and both.
|
| | |
| | |
| | |
| | | |
-Add analyze_stmt.test/result
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
MDEV-406: ANALYZE $stmt
- Ported the old patch to new explain code
- New SQL syntax (ANALYZE $stmt)
- ANALYZE UPDATE/DELETE is now supported (because EXPLAIN UPDATE/DELETE is supported)
- Basic counters are calculated for basic kinds of queries
(still need to see what happens with join buffer, ORDER BY...LIMIT queries, etc)
|
| | |
| | |
| | |
| | | |
Scripts added that create OpenGIS-required views and tables they're based upon.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
Conflicts:
storage/xtradb/handler/ha_innodb.cc
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* 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.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* 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
|
| | |
| | |
| | |
| | | |
use more restrictive --list_files to hide the usual /tmp garbage
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* 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
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| | |
be set to unsupported value.
MDEV-6350: Excessive unnecessary memory allocation at InnoDB/XtraDB
startup if LZO is installed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| | |
configuration variable innodb_compression_algorithm.
Removed unnecessary test for removed configuration
variable.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
CMakeLists.txt
VERSION
Modified:
.gitignore
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Some variables weren't cleared properly so consequitive embedded server start/stop failed.
Cleanups added. Also mysql_client_test.c extended to test that (taken from Mattias Johnson's patch)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When plugin=mysql_native_password (or mysql_old_password) take the password
from *either* password *or* authentication_string, whichever is set.
This makes no sense, but alas, that's what MySQL-5.6 does.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
TIME/DATETIME COMPARE
fix for ranges like "indexed_datetime OP time"
(test case is in the previous revision)
|
| | |
| | |
| | |
| | |
| | |
| | | |
TIME/DATETIME COMPARE"
fix for ref like "indexed_time = datetime"
|
| | |
| | |
| | |
| | |
| | |
| | | |
Field_blob::new_key_field
(prep for MDEV-6065)
|
| | | |
|
| |\ \ |
|
| | |\ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The method JOIN_CACHE::init may fail (return 1) if some conditions on the
used join buffer is not satisfied. For example it fails if join_buffer_size
is greater than join_buffer_space_limit. The conditions should be checked
when running the EXPLAIN command for the query. That's why the method
JOIN_CACHE::init has to be called for EXPLAIN commands as well.
|
| |\ \ \ \
| | |/ / /
| |/| | | |
|