- 13 Feb, 2017 14 commits
-
-
Sergei Golubchik authored
EINVAL means that the filesystem doesn't support posix_fallocate(). There were two places where this error was issued, one checked for EINVAL, the other did not. This commit fixed the other place to also check for EINVAL. Also, remove the space after the REFMAN to get the valid url with no space in the middle. Also don't say "Make sure the file system supports this function." when posix_fallocate() fails, because this message is only shown when the filesystem does support this function.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
fix Item_default_value not to pretend being const_item if the field's default_value expression isn't parsed yet
-
Sergei Golubchik authored
MDEV-11750 Assertion `vfield' failed in TABLE::update_virtual_fields after crash recovery on corrupted MyISAM table Adjust the length of the BIT field (same as in _mi_put_key_in_record())
-
Sergei Golubchik authored
move TABLE::key_read into handler. Because in index merge and DS-MRR there can be many handlers per table, and some of them use key read while others don't. "keyread" is really per handler, not per TABLE property.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
MDEV-11784 View is created with invalid definition which causes ERROR 1241 (21000): Operand should contain 1 column(s) set the correct print precedence for IN subqueries
-
Sergei Golubchik authored
Item_default_value::calculate was updating table->s->default_values, but it is supposed to be read-only
-
Sergei Golubchik authored
Optionally do table->update_default_fields() even for INSERT that supposedly provides values for all column. Because these "values" might be DEFAULT, which would need table->update_default_fields() at the end. Also set Item_default_value::used_tables() from the default expression. Non-zero used_field() means that mysql_insert() will initialize all fields to their default values (with restore_record()) even if all columns are later provided with values. Because default expressions may refer to other columns and they must be initialized.
-
Marko Mäkelä authored
Remove also the field trx_t::read_write that was only used by the Memcached hooks.
-
Marko Mäkelä authored
Oracle introduced a Memcached plugin interface to the InnoDB storage engine in MySQL 5.6. That interface is essentially a fork of Memcached development snapshot 1.6.0-beta1 of an old development branch 'engine-pu'. To my knowledge, there have not been any updates to the Memcached code between MySQL 5.6 and 5.7; only bug fixes and extensions related to the Oracle modifications. The Memcached plugin is not part of the MariaDB Server. Therefore it does not make sense to include the InnoDB interfaces for the Memcached plugin, or to have any related configuration parameters: innodb_api_bk_commit_interval innodb_api_disable_rowlock innodb_api_enable_binlog innodb_api_enable_mdl innodb_api_trx_level Removing this code in one commit makes it possible to easily restore it, in case it turns out to be needed later.
-
Marko Mäkelä authored
log_crypt_101_read_checkpoint(): Read the encryption information from a MariaDB 10.1 checkpoint page. log_crypt_101_read_block(): Attempt to decrypt a MariaDB 10.1 redo log page. recv_log_format_0_recover(): Only attempt decryption on checksum mismatch. NOTE: With the MariaDB 10.1 innodb_encrypt_log format, we can actually determine from the cleartext portion of the redo log whether the redo log is empty. We do not really have to decrypt the redo log here, if we did not want to determine if the checksum is valid.
-
Marko Mäkelä authored
We can use log_sys->buf instead of recv_sys->last_block during crash recovery. Remove the redundant buffer.
-
Marko Mäkelä authored
innodb_shutdown(), trx_sys_close(): Startup may be aborted between purge_sys and trx_sys creation. Therefore, purge_sys must be freed independently of trx_sys. innobase_start_or_create_for_mysql(): Remember to free purge_queue if it was not yet attached to purge_sys.
-
- 12 Feb, 2017 1 commit
-
-
Igor Babaev authored
These are different bugs, but the fixing code is the same: if window functions are used over implicit grouping then now the execution should follow the general path calling the function set in JOIN::first_select.
-
- 11 Feb, 2017 3 commits
-
-
Nirbhay Choubey authored
-
Sergei Golubchik authored
-
Igor Babaev authored
Corrected an assertion in JOIN::create_postjoin_aggr_table(): JOIN::join_tab[0] can be the first aggregation table if the query uses window functions.
-
- 10 Feb, 2017 18 commits
-
-
Sergei Golubchik authored
-
Vladislav Vaintroub authored
main thread may destroy mutexes that bootstrap is using in THD destructor.
-
Nirbhay Choubey authored
-
Elena Stepanova authored
-
Nirbhay Choubey authored
Print the message as a note instead of warning.
-
Nirbhay Choubey authored
-
Nirbhay Choubey authored
-
Nirbhay Choubey authored
-
Nirbhay Choubey authored
New default sql_mode includes: * STRICT_TRANS_TABLES * ERROR_FOR_DIVISION_BY_ZERO * NO_ENGINE_SUBSTITUTION * NO_AUTO_CREATE_USER
-
Nirbhay Choubey authored
The supplied sql_mode(s) should be converted to ASCII first, before comparing it with the sql_mode set.
-
Nirbhay Choubey authored
-
Nirbhay Choubey authored
-
Nirbhay Choubey authored
innodb_autoinc_lock_mode = 2 innodb_buffer_pool_dump_at_shutdown = ON innodb_buffer_pool_dump_pct = 25 innodb_buffer_pool_load_at_startup = ON innodb_checksum_algorithm = CRC32 innodb_file_format = Barracuda innodb_large_prefix = ON innodb_log_compressed_pages = ON innodb_purge_threads = 4 innodb_strict_mode = ON binlog_annotate_row_events = ON binlog_format = MIXED binlog-row-event-max-size = 8192 group_concat_max_len = 1M lock_wait_timeout = 86400 log_slow_admin_statements = ON log_slow_slave_statements = ON log_warnings = 2 max_allowed_packet = 16M replicate_annotate_row_events = ON slave_net_timeout = 60 sync_binlog = 1 aria_recover = BACKUP,QUICK myisam_recover_options = BACKUP,QUICK
-
Nirbhay Choubey authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
MDEV-10554: Assertion `!derived->first_select()->exclude_from_table_unique_test || derived->outer_select()-> exclude_from_table_unique_test' failed in TABLE_LIST::set_check_merged() Mark and check excluded because of merging derived tables and views.
-
Oleksandr Byelkin authored
-
Igor Babaev authored
Due to this bug many queries that contained a window function with MIN/MAX aggregation returned wrong results. Calculation of a MIN/MAX aggregate function uses cache objects and a comparator object that are created and set up in Item_sum_hybrid::fix_fields () by a call of Item_sum_hybrid::setup_hybrid(). The latter binds the objects to the first argument of the MIN/MAX function. Meanwhile window function perform aggregation over fields of a temporary table. So binding must be done rather to these fields. The earliest moment when setup the objects used in MIN/max functions can be done is after all calls of the method split_sum_func(). This patch introduces this late setup, but only for aggregate functions used in window functions. Probably it makes sense to use this late setup for all MIN/MAX objects.
-
- 09 Feb, 2017 4 commits
-
-
Alexey Botchkov authored
Test fixed.
-
Alexey Botchkov authored
Fix json_merge implementation.
-
Alexey Botchkov authored
Test result updated.
-
Marko Mäkelä authored
This is follow-up to commit 1293e5e5.
-