summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-18719 Assertion (c.prtype ^ o->prtype) & ... failed on ALTER TABLEbb-10.4-elenst-no-mdev371Marko Mäkelä2019-02-264-3/+40
| | | | | | | | | | | | | | | | The prtype & DATA_LONG_TRUE_VARCHAR flag only plays a role when converting between InnoDB internal format and the MariaDB SQL layer row format. Ideally this flag would never have been persisted in the InnoDB data dictionary. There were bogus assertion failures when an instant ADD, DROP, or column reordering was combined with a change of extending a VARCHAR from less than 256 bytes to more than 255 bytes. Such changes are allowed starting with MDEV-15563 in MariaDB 10.4.3. dict_table_t::instant_column(), dict_col_t::same_format(): Ignore the DATA_LONG_TRUE_VARCHAR flag, because it does not affect the persistent storage format.
* MDEV-18408 Assertion `0' failed in Item::val_native_result / ↵Alexander Barkov2019-02-268-271/+411
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Timestamp_or_zero_datetime_native_null::Timestamp_or_zero_datetime_native_null upon mysqld_list_fields after crash recovery The problem happened because Item_ident_for_show did not implement val_native(). Solution: - Removing class Item_ident_for_show - Implementing a new method Protocol::send_list_fields() instead, which accepts a List<Field> instead of List<Item> as input. Now no any Item creation is done during mysqld_list_fields(). Adding helper methods, to reuse the code easier: - Moved a part of Protocol::send_result_set_metadata(), responsible for sending an individual field metadata, into a new method Protocol_text::store_field_metadata(). Reusing it in both send_list_fields() and send_result_set_metadata(). - Adding Protocol_text::store_field_metadata() - Adding Protocol_text::store_field_metadata_for_list_fields() Note, this patch also automatically fixed another bug: MDEV-18685 mysql_list_fields() returns DEFAULT 0 instead of DEFAULT NULL for view columns The reason for this bug was that Item_ident_for_show::val_xxx() and get_date() did not check field->is_null() before calling field->val_xxx()/get_date(). Now the default value is correctly sent by Protocol_text::store(Field*).
* MDEV-18668 Server crash or ASAN use-after-poison in Item_equal_iterator /Igor Babaev2019-02-263-1/+30
| | | | | | | st_select_lex::pushdown_from_having_into_where upon query with impossible WHERE condition Do not push from HAVING into impossible WHERE
* MDEV-18681 Server crashes in embedding_sjmIgor Babaev2019-02-263-8/+49
| | | | | Do not do substitution for best equal field in HAVING conditions. It's not needed.
* fix test to pass on embedded sereverOleksandr Byelkin2019-02-212-4/+4
|
* mysql_install_db: make sure the variable's value is visibleSergei Golubchik2019-02-211-5/+5
| | | | | move the assignment out of a function, so that it wouldn't happen in a subshell
* MDEV-18677 clang-cl 7 fails to compile innodbMarko Mäkelä2019-02-211-5/+11
| | | | | | ib_counter_element_t: Declare as struct, not union. Based on patch by Vladislav Vaintroub
* MDEV-12484 Enable unix socket authentication by defaultSergei Golubchik2019-02-214-167/+17
| | | | | | | | Debian part. Do not ask to set a root password, do not create debian-sys-maint user (but preserve an existing one on upgrades - user scripts might be relying on it). Just create an empty /etc/mysql/debian.cnf for --defaults-file not to fail
* don't invoke error interceptors for fatal errorsSergei Golubchik2019-02-212-26/+2
| | | | | | | | and, again, *don't use thd->clear_error()* this fixed main.sp_notembedded failure on various amd64 platforms (where ER_STACK_OVERRUN_NEED_MORE happens to fire in open_stat_tables() under Dummy_error_handler)
* MDEV-18297 clarify mysql_install_db help textSergei Golubchik2019-02-211-0/+10
|
* MDEV-18297 How to reset a forgotten root passwordSergei Golubchik2019-02-215-40/+62
| | | | | | | | | After FLUSH PRIVILEGES remember if the connection started under --skip-grant-tables and keep it all-powerful, not a lowly anonymous. One could use this connection to reset passwords as needed. Also fix a crash in SHOW CREATE USER
* don't consider the password "expired" if authentication is passwordlessSergei Golubchik2019-02-213-2/+35
|
* MDEV-7597 Expiration of user passwordsSergei Golubchik2019-02-2121-359/+251
| | | | | | | | | | | | | | | | | post-merge changes: * handle password expiration on old tables like everything else - make changes in memory, even if they cannot be done on disk * merge "debug" tests with non-debug tests, they don't use dbug anyway * only run rpl password expiration in MIXED mode, it doesn't replicate anything, so no need to repeat it thrice * restore update_user_table_password() prototype, it should not change ACL_USER, this is done in acl_user_update() * don't parse json twice in get_password_lifetime and get_password_expired * remove LEX_USER::is_changing_password, see if there was any auth instead * avoid overflow in expiration calculations * don't initialize Account_options in the constructor, it's bzero-ed later * don't create ulong sysvars - they're not portable, prefer uint or ulonglong * misc simplifications
* MDEV-7597 Expiration of user passwordsRobert Bindar2019-02-2134-99/+1259
| | | | | | | | | | | | | | | | | This patch adds support for expiring user passwords. The following statements are extended: CREATE USER user@localhost PASSWORD EXPIRE [option] ALTER USER user@localhost PASSWORD EXPIRE [option] If no option is specified, the password is expired with immediate effect. If option is DEFAULT, global policy applies according to the default_password_lifetime system var (if 0, password never expires, if N, password expires every N days). If option is NEVER, the password never expires and if option is INTERVAL N DAY, the password expires every N days. The feature also supports the disconnect_on_expired_password system var and the --connect-expired-password client option. Closes #1166
* try harder to link unix_socket plugin staticallySergei Golubchik2019-02-2112-50/+14
| | | | fix unix_socket tests to work if unix_socket is a built-in
* update C/CSergei Golubchik2019-02-211-0/+0
|
* store string lengths in frm in 1-3 bytesSergei Golubchik2019-02-213-66/+65
|
* don't allow TIME columns in PERIOD specificationSergei Golubchik2019-02-213-1/+8
|
* UPDATE FOR PERIOD OF: don't crash on multi-table viewsSergei Golubchik2019-02-215-6/+32
|
* update sql_yacc_ora.yy to match sql_yacc.yySergei Golubchik2019-02-212-14/+60
|
* misc cleanupsSergei Golubchik2019-02-2110-100/+95
|
* testsSergei Golubchik2019-02-2110-141/+316
| | | | | | * don't suppress output unnecessary * only run system versioning tests with two innodb combinations * show results of delete/update (add SELECTs as needed)
* MDEV-16975 Application-time periods: ALTER TABLENikita Malyavin2019-02-2117-53/+533
| | | | | * implicit period constraint is hidden and cannot be dropped independently * create...like and create...select support
* MDEV-16974 Application-time periods: UPDATENikita Malyavin2019-02-218-25/+579
|
* MDEV-16973 Application-time periods: DELETENikita Malyavin2019-02-2115-128/+1048
| | | | | | | * inject portion of time updates into mysql_delete main loop * triggered case emits delete+insert, no updates * PORTION OF `SYSTEM_TIME` is forbidden * `DELETE HISTORY .. FOR PORTION OF ...` is forbidden as well
* MDEV-17082 Application-time periods: CREATENikita Malyavin2019-02-2118-189/+617
| | | | | * add syntax `CREATE TABLE ... PERIOD FOR <apptime>` * add table period entity
* move aws_sdk to extra/Sergei Golubchik2019-02-213-7/+3
|
* Merge branch '10.3' into 10.4Oleksandr Byelkin2019-02-21217-1985/+6121
|\
| * Merge branch 'bb-10.3-release' into 10.3Oleksandr Byelkin2019-02-201-27/+0
| |\
| | * remove aws-key management pluginmariadb-10.3.13Oleksandr Byelkin2019-02-201-27/+0
| | |
| * | MDEV-18663 Tests : use --core-file if mariabackup output is redirected to a fileVladislav Vaintroub2019-02-204-4/+4
| |/ | | | | | | This is done in order to help debugging buildbot failures.
| * Updated list of unstable tests for 10.3.13 releaseElena Stepanova2019-02-201-139/+121
| |
| * make compatible parser in sync with main oneOleksandr Byelkin2019-02-191-12/+29
| |
| * Merge branch '10.2' into bb-10.3-mergeOleksandr Byelkin2019-02-195-8/+14
| |\
| | * Merge branch '10.1' into 10.2Oleksandr Byelkin2019-02-195-8/+14
| | |\
| | | * 1. centos has symlinks /bin->usr/bin and /sbin -> usr/sbin,Oleksandr Byelkin2019-02-191-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | but even if this script called as /bin/mysql_install_db it is still standard install and scripts are in /usr/share/ (but not in the /share/) 2. fix of bindir path
| | | * Don't build aws_key_management plugin by defaultSergei Golubchik2019-02-194-3/+9
| | | |
| * | | Merge branch '10.3' into bb-10.3-mergeOleksandr Byelkin2019-02-1937-322/+386
| |\ \ \
| | * \ \ Merge 10.2 into 10.3Marko Mäkelä2019-02-19211-2061/+6208
| | |\ \ \ | | | |/ /
| | | * | MDEV-18639 Assertion failure upon attempt to start with lower number of undo ↵Thirunarayanan Balathandayuthapani2019-02-193-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tablespaces trx_rseg_t::is_persistent(): Correct a bogus debug assertion.
| | | * | Merge 10.1 into 10.2Marko Mäkelä2019-02-193-6/+3
| | | |\ \ | | | | |/
| | | | * Fixed bug in macro _ma_mark_page_with_transid()Monty2019-02-193-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | By pure chance the macro worked in the cases it was used, but better to get this fixed!
| | | * | MDEV-18611: mariabackup silently ended during xtrabackup_copy_logfile()Marko Mäkelä2019-02-192-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | log_group_read_log_seg(): Always return false when returning before reading end_lsn. xtrabackup_copy_logfile(): On error, indicate whether a corrupt log record was encountered. Only xtrabackup_copy_logfile() in Mariabackup cared about the return value of the function. InnoDB crash recovery was not affected by this bug.
| | | * | MDEV-18204 - fixupVladislav Vaintroub2019-02-192-12/+13
| | | | |
| | | * | Merge 10.1 into 10.2Marko Mäkelä2019-02-184-64/+58
| | | |\ \ | | | | |/
| | | | * MDEV-18630 Uninitialised value in FOREIGN KEY error messageMarko Mäkelä2019-02-184-64/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dict_create_foreign_constraints_low(): Clean up the way in which the error messages are initialized, and ensure that the table name is always initialized.
| | | * | MDEV-18204 Fix rocksdb incremental backupVladislav Vaintroub2019-02-187-58/+133
| | | | | | | | | | | | | | | | | | | | | | | | | Fix incremental prepare to copy #rocksdb subdirectory from the incremental dir.
| | | * | MDEV-18575 remove innodb-encrypt-log parameter from mariabackupVladislav Vaintroub2019-02-141-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The variable is obsolete. In mariabackup --backup, encryption plugin loading code sets the value this parameter to the same as in server. In mariabackup --prepare, no new redo log is generated, and xtrabackup_logfile is removed after it anyway.
| | | * | Merge pull request #1181 from grooverdan/10.2-submodule-updateJan Lindström2019-02-131-4/+8
| | | |\ \ | | | | | | | | | | | | cmake/submodules: notify user about gitconfig for automatic update
| | | | * | typo cmake/submodules.cmakeLaurynas Biveinis2019-02-131-1/+1
| | | | | | | | | | | | | | | | | | Co-Authored-By: grooverdan <daniel@linux.ibm.com>