summaryrefslogtreecommitdiff
path: root/sql/sql_delete.cc
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-8282: crash in filesort() with simple ordered deleteSergei Petrunia2015-06-201-0/+1
| | | | | | | Handle the case where the optimizer decides to use handler->delete_all_rows(), but then this call returns HA_ERR_UNSUPPORTED and execution switches to regular row-by-row deletion.
* Merge tag 'mariadb-10.0.19' into 10.1Sergei Golubchik2015-06-011-1/+2
|\
| * Merge branch '5.5' into 10.0Sergei Golubchik2015-05-041-1/+2
| |\
| | * MDEV-8018: main.multi_update fails with --ps-protocolOleksandr Byelkin2015-04-221-1/+1
| | | | | | | | | | | | | | | | | | save_prep_leaf_tables() made recursive to work with underlying view Arena restoiring fixed in case of EOM.
* | | [MDEV-8063]: Fix incorrect commit.Vicentiu Ciorbaru2015-05-191-3/+3
| | | | | | | | | | | | | | | | | | The previous commit did not contain the reviewed changes and introduced a behaviour problem for the explain statement. This fixes the issue.
* | | MDEV-8063: Unconditional ANALYZE DELETE does not delete rowsVicențiu Ciorbaru2015-05-191-4/+2
| | | | | | | | | | | | | | | | | | When detecting a statement that can make use of ha_delete_all_rows(), we refrained from running the statement when being presented with the analyze or explain prefix.
* | | MDEV-7950 Item_func::type() takes 0.26% in OLTP ROAlexander Barkov2015-05-141-1/+1
| | | | | | | | | | | | | | | | | | Step#5: changing the function remove_eq_conds() into a virtual method in Item. It removes 6 virtual calls for Item_func::type(), and adds only 2 virtual calls for Item***::remove_eq_conds().
* | | MDEV-7943 - pthread_getspecific() takes 0.76% in OLTP ROSergey Vojtovich2015-05-131-2/+2
| | | | | | | | | | | | | | | | | | Added THD argument to select_result and all derivative classes. This reduces number of pthread_getspecific calls from 796 to 776 per OLTP RO transaction.
* | | MDEV-7951 - sql_alloc() takes 0.25% in OLTP ROSergey Vojtovich2015-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sql_alloc() has additional costs compared to direct mem_root allocation: - function call: it is defined in a separate translation unit and can't be inlined - it needs to call pthread_getspecific() to get THD::mem_root It is called dozens of times implicitely at least by: - List<>::push_back() - List<>::push_front() - new (for Sql_alloc derived classes) - sql_memdup() Replaced lots of implicit sql_alloc() calls with direct mem_root allocation, passing through THD pointer whenever it is needed. Number of sql_alloc() calls reduced 345 -> 41 per OLTP RO transaction. pthread_getspecific() overhead dropped 0.76 -> 0.59 sql_alloc() overhed dropped 0.25 -> 0.06
* | | MergeSergei Petrunia2015-04-121-1/+2
|\ \ \
| * | | MDEV-7856: EXPLAIN FORMAT=JSON should show partitionsOleksandr Byelkin2015-04-091-1/+2
| | | |
* | | | MDEV-7836: ANALYZE FORMAT=JSON should provide info about GROUP/ORDER BYSergei Petrunia2015-04-121-8/+17
|/ / / | | | | | | | | | Provide basic info about sorting/grouping done by the queries.
* | | MDEV-7899: 10.1 is 3% slower than 10.0 in OLTP ROSergei Petrunia2015-04-071-8/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | - Remove ANALYZE's timing code off the the execution path of regular SELECTs. - Improve the tracker that tracks counts/execution times of SELECTs or DML statements: = regular execution just increments counters = ANALYZE will also collect timings.
* | | MDEV-7812: ANALYZE FORMAT=JSON UPDATE/DELETE doesnt print the r_total_time_msOleksandr Byelkin2015-03-291-0/+2
| | | | | | | | | | | | | | | | | | Tracking total time added in UPDATE/DELETE Fixed selectivity calculation in UPDATE/DELETE Macro definitions of time tracting fixed.
* | | Merge branch '10.0' into 10.1Sergei Golubchik2015-03-071-2/+3
|\ \ \ | |/ /
| * | Merge branch '5.5' into 10.0Sergei Golubchik2015-02-181-2/+3
| |\ \ | | |/
| | * MDEV-7260: Crash in get_best_combination when executing multi-table UPDATE ↵unknown2015-02-111-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | with nested views Do not use merge_for_insert for commands which use SELECT because optimizer can't work with such tables. Fixes which makes multi-delete working with normally merged views.
* | | MDEV-6676: Optimistic parallel replicationKristian Nielsen2014-12-061-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | my_alloc.cmariadb-10.1.2Monty2014-12-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* | | Merge branch '10.1' into bb-10.1-mergeSergei Golubchik2014-12-031-13/+13
|\ \ \
| * | | EXPLAIN FORMAT=JSON: Add support for single-table UPDATE/DELETE.Sergei Petrunia2014-11-281-13/+13
| | | |
* | | | Merge branch '10.0' into bb-10.1-mergeSergei Golubchik2014-12-021-0/+1
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .bzrignore VERSION cmake/plugin.cmake debian/dist/Debian/control debian/dist/Ubuntu/control mysql-test/r/join_outer.result mysql-test/r/join_outer_jcl6.result mysql-test/r/null.result mysql-test/r/old-mode.result mysql-test/r/union.result mysql-test/t/join_outer.test mysql-test/t/null.test mysql-test/t/old-mode.test mysql-test/t/union.test packaging/rpm-oel/mysql.spec.in scripts/mysql_config.sh sql/ha_ndbcluster.cc sql/ha_ndbcluster_binlog.cc sql/ha_ndbcluster_cond.cc sql/item_cmpfunc.h sql/lock.cc sql/sql_select.cc sql/sql_show.cc sql/sql_update.cc sql/sql_yacc.yy storage/innobase/buf/buf0flu.cc storage/innobase/fil/fil0fil.cc storage/innobase/include/srv0srv.h storage/innobase/lock/lock0lock.cc storage/tokudb/CMakeLists.txt storage/xtradb/buf/buf0flu.cc storage/xtradb/fil/fil0fil.cc storage/xtradb/include/srv0srv.h storage/xtradb/lock/lock0lock.cc support-files/mysql.spec.sh
| * | MDEV-5120 Test suite test maria-no-logging failsMichael Widenius2014-09-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The reason for the failure was a bug in an include file on debian that causes 'struct stat' to have different sized depending on the environment. This patch fixes so that we always include my_global.h or my_config.h before we include any other files. Other things: - Removed #include <my_global.h> in some include files; Better to always do this at the top level to have as few "always-include-this-file-first' files as possible. - Removed usage of some include files that where already included by my_global.h or by other files. client/mysql_plugin.c: Use my_global.h first client/mysqlslap.c: Remove duplicated include files extra/comp_err.c: Remove duplicated include files include/m_string.h: Remove duplicated include files include/maria.h: Remove duplicated include files libmysqld/emb_qcache.cc: Use my_global.h first plugin/semisync/semisync.h: Use my_pthread.h first sql/datadict.cc: Use my_global.h first sql/debug_sync.cc: Use my_global.h first sql/derror.cc: Use my_global.h first sql/des_key_file.cc: Use my_global.h first sql/discover.cc: Use my_global.h first sql/event_data_objects.cc: Use my_global.h first sql/event_db_repository.cc: Use my_global.h first sql/event_parse_data.cc: Use my_global.h first sql/event_queue.cc: Use my_global.h first sql/event_scheduler.cc: Use my_global.h first sql/events.cc: Use my_global.h first sql/field.cc: Use my_global.h first Remove duplicated include files sql/field_conv.cc: Use my_global.h first sql/filesort.cc: Use my_global.h first Remove duplicated include files sql/gstream.cc: Use my_global.h first sql/ha_ndbcluster.cc: Use my_global.h first sql/ha_ndbcluster_binlog.cc: Use my_global.h first sql/ha_ndbcluster_cond.cc: Use my_global.h first sql/ha_partition.cc: Use my_global.h first sql/handler.cc: Use my_global.h first sql/hash_filo.cc: Use my_global.h first sql/hostname.cc: Use my_global.h first sql/init.cc: Use my_global.h first sql/item.cc: Use my_global.h first sql/item_buff.cc: Use my_global.h first sql/item_cmpfunc.cc: Use my_global.h first sql/item_create.cc: Use my_global.h first sql/item_geofunc.cc: Use my_global.h first sql/item_inetfunc.cc: Use my_global.h first sql/item_row.cc: Use my_global.h first sql/item_strfunc.cc: Use my_global.h first sql/item_subselect.cc: Use my_global.h first sql/item_sum.cc: Use my_global.h first sql/item_timefunc.cc: Use my_global.h first sql/item_xmlfunc.cc: Use my_global.h first sql/key.cc: Use my_global.h first sql/lock.cc: Use my_global.h first sql/log.cc: Use my_global.h first sql/log_event.cc: Use my_global.h first sql/log_event_old.cc: Use my_global.h first sql/mf_iocache.cc: Use my_global.h first sql/mysql_install_db.cc: Remove duplicated include files sql/mysqld.cc: Remove duplicated include files sql/net_serv.cc: Remove duplicated include files sql/opt_range.cc: Use my_global.h first sql/opt_subselect.cc: Use my_global.h first sql/opt_sum.cc: Use my_global.h first sql/parse_file.cc: Use my_global.h first sql/partition_info.cc: Use my_global.h first sql/procedure.cc: Use my_global.h first sql/protocol.cc: Use my_global.h first sql/records.cc: Use my_global.h first sql/records.h: Don't include my_global.h Better to do this at the upper level sql/repl_failsafe.cc: Use my_global.h first sql/rpl_filter.cc: Use my_global.h first sql/rpl_gtid.cc: Use my_global.h first sql/rpl_handler.cc: Use my_global.h first sql/rpl_injector.cc: Use my_global.h first sql/rpl_record.cc: Use my_global.h first sql/rpl_record_old.cc: Use my_global.h first sql/rpl_reporting.cc: Use my_global.h first sql/rpl_rli.cc: Use my_global.h first sql/rpl_tblmap.cc: Use my_global.h first sql/rpl_utility.cc: Use my_global.h first sql/set_var.cc: Added comment sql/slave.cc: Use my_global.h first sql/sp.cc: Use my_global.h first sql/sp_cache.cc: Use my_global.h first sql/sp_head.cc: Use my_global.h first sql/sp_pcontext.cc: Use my_global.h first sql/sp_rcontext.cc: Use my_global.h first sql/spatial.cc: Use my_global.h first sql/sql_acl.cc: Use my_global.h first sql/sql_admin.cc: Use my_global.h first sql/sql_analyse.cc: Use my_global.h first sql/sql_audit.cc: Use my_global.h first sql/sql_base.cc: Use my_global.h first sql/sql_binlog.cc: Use my_global.h first sql/sql_bootstrap.cc: Use my_global.h first Use my_global.h first sql/sql_cache.cc: Use my_global.h first sql/sql_class.cc: Use my_global.h first sql/sql_client.cc: Use my_global.h first sql/sql_connect.cc: Use my_global.h first sql/sql_crypt.cc: Use my_global.h first sql/sql_cursor.cc: Use my_global.h first sql/sql_db.cc: Use my_global.h first sql/sql_delete.cc: Use my_global.h first sql/sql_derived.cc: Use my_global.h first sql/sql_do.cc: Use my_global.h first sql/sql_error.cc: Use my_global.h first sql/sql_explain.cc: Use my_global.h first sql/sql_expression_cache.cc: Use my_global.h first sql/sql_handler.cc: Use my_global.h first sql/sql_help.cc: Use my_global.h first sql/sql_insert.cc: Use my_global.h first sql/sql_lex.cc: Use my_global.h first sql/sql_load.cc: Use my_global.h first sql/sql_locale.cc: Use my_global.h first sql/sql_manager.cc: Use my_global.h first sql/sql_parse.cc: Use my_global.h first sql/sql_partition.cc: Use my_global.h first sql/sql_plugin.cc: Added comment sql/sql_prepare.cc: Use my_global.h first sql/sql_priv.h: Added error if we use this before including my_global.h This check is here becasue so many files includes sql_priv.h first. sql/sql_profile.cc: Use my_global.h first sql/sql_reload.cc: Use my_global.h first sql/sql_rename.cc: Use my_global.h first sql/sql_repl.cc: Use my_global.h first sql/sql_select.cc: Use my_global.h first sql/sql_servers.cc: Use my_global.h first sql/sql_show.cc: Added comment sql/sql_signal.cc: Use my_global.h first sql/sql_statistics.cc: Use my_global.h first sql/sql_table.cc: Use my_global.h first sql/sql_tablespace.cc: Use my_global.h first sql/sql_test.cc: Use my_global.h first sql/sql_time.cc: Use my_global.h first sql/sql_trigger.cc: Use my_global.h first sql/sql_udf.cc: Use my_global.h first sql/sql_union.cc: Use my_global.h first sql/sql_update.cc: Use my_global.h first sql/sql_view.cc: Use my_global.h first sql/sys_vars.cc: Added comment sql/table.cc: Use my_global.h first sql/thr_malloc.cc: Use my_global.h first sql/transaction.cc: Use my_global.h first sql/uniques.cc: Use my_global.h first sql/unireg.cc: Use my_global.h first sql/unireg.h: Removed inclusion of my_global.h storage/archive/ha_archive.cc: Added comment storage/blackhole/ha_blackhole.cc: Use my_global.h first storage/csv/ha_tina.cc: Use my_global.h first storage/csv/transparent_file.cc: Use my_global.h first storage/federated/ha_federated.cc: Use my_global.h first storage/federatedx/federatedx_io.cc: Use my_global.h first storage/federatedx/federatedx_io_mysql.cc: Use my_global.h first storage/federatedx/federatedx_io_null.cc: Use my_global.h first storage/federatedx/federatedx_txn.cc: Use my_global.h first storage/heap/ha_heap.cc: Use my_global.h first storage/innobase/handler/handler0alter.cc: Use my_global.h first storage/maria/ha_maria.cc: Use my_global.h first storage/maria/unittest/ma_maria_log_cleanup.c: Remove duplicated include files storage/maria/unittest/test_file.c: Added comment storage/myisam/ha_myisam.cc: Move sql_plugin.h first as this includes my_global.h storage/myisammrg/ha_myisammrg.cc: Use my_global.h first storage/oqgraph/oqgraph_thunk.cc: Use my_config.h and my_global.h first One could not include my_global.h before oqgraph_thunk.h (don't know why) storage/spider/ha_spider.cc: Use my_global.h first storage/spider/hs_client/config.cpp: Use my_global.h first storage/spider/hs_client/escape.cpp: Use my_global.h first storage/spider/hs_client/fatal.cpp: Use my_global.h first storage/spider/hs_client/hstcpcli.cpp: Use my_global.h first storage/spider/hs_client/socket.cpp: Use my_global.h first storage/spider/hs_client/string_util.cpp: Use my_global.h first storage/spider/spd_conn.cc: Use my_global.h first storage/spider/spd_copy_tables.cc: Use my_global.h first storage/spider/spd_db_conn.cc: Use my_global.h first storage/spider/spd_db_handlersocket.cc: Use my_global.h first storage/spider/spd_db_mysql.cc: Use my_global.h first storage/spider/spd_db_oracle.cc: Use my_global.h first storage/spider/spd_direct_sql.cc: Use my_global.h first storage/spider/spd_i_s.cc: Use my_global.h first storage/spider/spd_malloc.cc: Use my_global.h first storage/spider/spd_param.cc: Use my_global.h first storage/spider/spd_ping_table.cc: Use my_global.h first storage/spider/spd_sys_table.cc: Use my_global.h first storage/spider/spd_table.cc: Use my_global.h first storage/spider/spd_trx.cc: Use my_global.h first storage/xtradb/handler/handler0alter.cc: Use my_global.h first storage/xtradb/handler/i_s.cc: Use my_global.h first
* | | Merge 10.0.14 into 10.1Sergei Golubchik2014-10-151-1/+2
|\ \ \ | |/ /
| * | 5.5.39 mergeSergei Golubchik2014-08-071-1/+2
| |\ \ | | |/
| | * MDEV-6289 : Unexpected results when querying information_schemaSergey Petrunya2014-07-231-1/+2
| | | | | | | | | | | | | | | | | | - When traversing JOIN_TABs with first_linear_tab/next_linear_tab(), don't forget to enter the semi-join nest when it is the first table in the join order. Failure to do so could cause e.g. I_S tables not to be filled.
* | | cleanup: galera merge, simple changesSergei Golubchik2014-10-011-6/+3
| | |
* | | MDEV-6247: Merge 10.0-galera to 10.1.Jan Lindström2014-08-261-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | Merged lp:maria/maria-10.0-galera up to revision 3879. Added a new functions to handler API to forcefully abort_transaction, producing fake_trx_id, get_checkpoint and set_checkpoint for XA. These were added for future possiblity to add more storage engines that could use galera replication.
* | | MDEV-6394: ANALYZE DELETE .. RETURNING fails with ERROR 2027 Malformed ↵mariadb-10.1.0Sergei Petrunia2014-06-261-10/+19
| | | | | | | | | | | | | | | | | | packet (now, the code) Forgot the code
* | | MDEV-6398: ANALYZE UPDATE does not populate r_rowsSergei Petrunia2014-06-261-2/+4
| | | | | | | | | | | | | | | | | | | | | - 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.
* | | MDEV-6395: Make ANALYZE UPDATE/DELETE handle the degenerate query plans.Sergei Petrunia2014-06-261-16/+21
| | |
* | | MDEV-406: ANALYZE $stmt: Make multi-table UPDATE/DELETE work, code cleanup.Sergei Petrunia2014-06-261-1/+1
| | |
* | | Re-commit in git:Sergei Petrunia2014-05-271-0/+9
|/ / | | | | | | | | | | | | | | | | 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)
* | MDEV-5433 select_result::send_error() is unusedSergei Golubchik2014-03-261-12/+1
| | | | | | | | remove dead code
* | MDEV-9095: Executing triggers on slave in row-based replicationunknown2014-03-191-20/+2
| |
* | MDEV-5314 - Compiling fails on OSX using clangSergey Vojtovich2014-02-191-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | This is port of fix for MySQL BUG#17647863. revno: 5572 revision-id: jon.hauglid@oracle.com-20131030232243-b0pw98oy72uka2sj committer: Jon Olav Hauglid <jon.hauglid@oracle.com> timestamp: Thu 2013-10-31 00:22:43 +0100 message: Bug#17647863: MYSQL DOES NOT COMPILE ON OSX 10.9 GM Rename test() macro to MY_TEST() to avoid conflict with libc++.
* | Merge 10.0-base -> 10.0Sergey Petrunya2013-10-161-16/+231
|\ \
| * | MDEV-3798: [SHOW] EXPLAIN UPDATE/DELETE, Memory leak in ↵Sergey Petrunya2013-10-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | binlog.binlog_base64_flag: - It turns out, there are statements that will call lex_start(thd->lex) after parsing has been finished. lex_start() will set lex->explain=NULL, which will lose the pointer to already allocated Explain_plan object. - To get rid of this, switch to lazy creation of lex->explain. Now, it is created only when we get a part ot query plan.
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-141-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the SHOW EXPLAIN code to work with the new architecture (part#1): Before, SHOW EXPLAIN operated on real query plan structures, which meant it had to check when SELECTs are created/deleted. SELECTs would call apc_target->enable() when they got a query plan and disable() when their query plan was deleted. Now, Explain data structure becomes available at once (and we call apc_target->enable()) and then it stays until it is deleted (when that happens, we call apc_target->disable()).
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-091-1/+4
| | | | | | | | | | | | - Produce correct `key_len` when type=index.
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-091-3/+9
| | | | | | | | | | | | | | | - Produce correct #rows for ORDER BY ... LIMIT N queries that take advantage of ordered index read to read only N rows.
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-091-3/+5
| | | | | | | | | | | | | | | - Generate correct contents of `Extra` column for UPDATEs/DELETEs that use quick selects - UPDATEs with used_key_is_modified=true will show "Using buffer"
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-081-1/+1
| | | | | | | | | | | | | | | - Update test results after last few csets - Generate correct value for `possible_keys` column for single table UPDATE/DELETE.
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-081-0/+1
| | | | | | | | | | | | | | | | | | - if EXPLAIN DELETE prints "Deleting all rows", it should show the expected number of rows in the rows column.
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-071-13/+1
| | | | | | | | | | | | | | | - Add support for EXPLAIN INSERT.
| * | Better commentsSergey Petrunya2013-10-051-2/+0
| | |
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-051-5/+17
| | | | | | | | | | | | - Handle the case when EXPLAIN UPDATE/DELETE has pruned away all partitions.
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-051-31/+33
| | | | | | | | | | | | | | | - Address review feedback: more renames
| * | MDEV-3798: EXPLAIN UPDATE/DELETESergey Petrunya2013-10-051-8/+8
| | | | | | | | | | | | - Address review feedback: rename nearly any name used by the new EXPLAIN code.
| * | MDEV-5093, MDEV-5094:Sergey Petrunya2013-10-041-2/+19
| | | | | | | | | | | | - Make EXPLAIN {PARTITIONS,EXTENDED} {UPDATE,DELETE} work.