An error occurred fetching the project authors.
- 16 Sep, 2024 2 commits
-
-
Yuchen Pei authored
The existing syntax for CREATE SERVER CREATE [OR REPLACE] SERVER [IF NOT EXISTS] server_name FOREIGN DATA WRAPPER wrapper_name OPTIONS (option [, option] ...) option: { HOST character-literal | DATABASE character-literal | USER character-literal | PASSWORD character-literal | SOCKET character-literal | OWNER character-literal | PORT numeric-literal } With this change we have: option: { HOST character-literal | DATABASE character-literal | USER character-literal | PASSWORD character-literal | SOCKET character-literal | OWNER character-literal | PORT numeric-literal | PORT quoted-numerical-literal | identifier character-literal} We store these options as a JSON field in the mysql.servers system table. We retain the restriction that PORT needs to be a number, but also allow it to be a quoted number, so that SHOW CREATE SERVER can be used for dumping. Without an accompanied implementation of SHOW CREATE SERVER, some mysqldump tests will fail. Therefore this commit should be immediately followed by the one implementating SHOW CREATE SERVER, with testing covering both.
-
Yuchen Pei authored
The limit of socket length on unix according to libc is 108, see sockaddr_un::sun_path, but in the table it is a string of max length 64, which results in truncation of socket and failure to connect by plugins using servers such as spider.
-
- 17 Oct, 2023 1 commit
-
-
Oleksandr Byelkin authored
-
- 22 Sep, 2023 1 commit
-
-
Oleksandr Byelkin authored
Fix row counters to be able to get any possible value.
-
- 01 Nov, 2022 1 commit
-
-
Oleksandr Byelkin authored
-
- 13 Oct, 2022 1 commit
-
-
Alexander Barkov authored
Increasing the data type from char(32) to char(64) for the following system columns: - mysql.event.collation_connection - mysql.event.db_collation - mysql.proc.collation_connection - mysql.proc.db_collation This change was forgotten during MDEV-27009. Also fixing the comment "Start/End of 10.9 tests" in ctype_utf8_uca.test to "Start/End of 10.10 tests", as MDEV-27009 was actually released in 10.10.
-
- 12 Sep, 2022 1 commit
-
-
Alexander Barkov authored
-
- 10 Aug, 2022 1 commit
-
-
Sergei Golubchik authored
-
- 19 Jan, 2022 3 commits
-
-
Sergei Petrunia authored
Change it to LONGBLOB. Also, update_statistics_for_table() should not "swallow" an error from open_stat_tables.
-
Sergei Petrunia authored
-
Michael Okoko authored
Signed-off-by:
Michael Okoko <okokomichaels@outlook.com>
-
- 19 May, 2021 1 commit
-
-
Rucha Deodhar authored
This patch changes the main name of 3 byte character set from utf8 to utf8mb3. New old_mode UTF8_IS_UTF8MB3 is added and set TRUE by default, so that utf8 would mean utf8mb3. If not set, utf8 would mean utf8mb4.
-
- 21 Apr, 2021 1 commit
-
-
Vicențiu Ciorbaru authored
This commit implements the standard SQL extension OFFSET start { ROW | ROWS } [FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } { ONLY | WITH TIES }] To achieve this a reserved keyword OFFSET is introduced. The general logic for WITH TIES implies: 1. The number of rows a query returns is no longer known during optimize phase. Adjust optimizations to no longer consider this. 2. During end_send make use of an "order Cached_item"to compare if the ORDER BY columns changed. Keep returning rows until there is a change. This happens only after we reached the row limit. 3. Within end_send_group, the order by clause was eliminated. It is still possible to keep the optimization of using end_send_group for producing the final result set.
-
- 20 Apr, 2021 1 commit
-
-
Oleksandr Byelkin authored
Also increase user name up to 128. The work was started by Rucha Deodhar <rucha.deodhar@mariadb.com>, contains audit plugin fixes by Alexey Botchkov <holyfoot@askmonty.org>.
-
- 08 Mar, 2021 1 commit
-
-
Robert Bindar authored
The mysql.user view password_expired column should display the right result, in sync with whether an account has its password expired or not For mariadb 10.4+ upgrades before this commit, the mysql.user view needs to be dropped and recreated to actually make the view display the correct value for the password_expired column.
-
- 07 May, 2020 1 commit
-
-
Oleksandr Byelkin authored
Also fixes: MDEV-21487: Implement option for mysql_upgrade that allows root@localhost to be replaced MDEV-21486: Implement option for mysql_install_db that allows root@localhost to be replaced Add user mariadb.sys to be definer of user view (and has right on underlying table global_priv for required operation over global_priv (SELECT,UPDATE,DELETE)) Also changed definer of gis functions in case of creation, but they work with any definer so upgrade script do not try to push this change.
-
- 13 Feb, 2020 1 commit
-
-
Vicențiu Ciorbaru authored
Remove usage of deprecated variable storage_engine. It was deprecated in 5.5 but it never issued a deprecation warning. Make it issue a warning in 10.5.1. Replaced with default_storage_engine.
-
- 14 Feb, 2019 1 commit
-
-
Sergei Golubchik authored
fix mysql_fix_privilege_tables to look for the `user` table in the correct schema when deciding whether to convert it to `global_priv` table make related tests a bit more verbose
-
- 11 Dec, 2018 1 commit
-
-
Sergei Golubchik authored
Implement User_table_json. Fix scripts to use mysql.global_priv. Fix tests.
-
- 26 Nov, 2018 1 commit
-
-
Alexander Barkov authored
-
- 16 Aug, 2018 1 commit
-
-
Vladislav Vaintroub authored
Changed bootstrap scripts, adjusted result files.
-
- 14 Aug, 2018 1 commit
-
-
Michael Widenius authored
Make all system tables in mysql directory of type engine=Aria Privilege tables are using transactional=1 Statistical tables are using transactional=0, to allow them to be quickly updated with low overhead. Help tables are also using transactional=0 as these are only updated at init time. Other changes: - Aria store engine is now a required engine - Update comment for Aria tables to reflect their new usage - Fixed that _ma_reset_trn_for_table() removes unlocked table from transaction table list. This was needed to allow one to lock and unlock system tables separately from other tables, for example when reading a procedure from mysql.proc - Don't give a warning when using transactional=1 for engines that is using transactions. This is both logical and also to avoid warnings/errors when doing an alter of a privilege table to InnoDB. - Don't abort on warnings from ALTER TABLE for changes that would be accepted by CREATE TABLE. - New created Aria transactional tables are marked as not movable (as they include create_rename_lsn). - bootstrap.test was changed to kill orignal server, as one can't anymore have two servers started at same time on same data directory and data files. - Disable maria.small_blocksize as one can't anymore change aria block size after system tables are created. - Speed up creation of help tables by using lock tables. - wsrep_sst_resync now also copies Aria redo logs.
-
- 29 Mar, 2018 1 commit
-
-
Michael Widenius authored
-
- 27 Feb, 2018 1 commit
-
-
Alexander Barkov authored
Backporting from bb-10.2-compatibility to bb-10.2-ext Version: 2018-01-26 - CREATE PACKAGE [BODY] statements are now entirely written to mysql.proc with type='PACKAGE' and type='PACKAGE BODY'. - CREATE PACKAGE BODY now supports IF NOT EXISTS - DROP PACKAGE BODY now supports IF EXISTS - CREATE OR REPLACE PACKAGE [BODY] is now supported - CREATE PACKAGE [BODY] now support the DEFINER clause: CREATE DEFINER user@host PACKAGE pkg ... END; CREATE DEFINER user@host PACKAGE BODY pkg ... END; - CREATE PACKAGE [BODY] now supports SQL SECURITY and COMMENT clauses, e.g.: CREATE PACKAGE p1 SQL SECURITY INVOKER COMMENT "comment" AS ... END; - Package routines are now created from the package CREATE PACKAGE BODY statement and don't produce individual records in mysql.proc. - CREATE PACKAGE BODY now supports package-wide variables. Package variables can be read and set inside package routines. Package variables are stored in a separate sp_rcontext, which is cached in THD on the first packate routine call. - CREATE PACKAGE BODY now supports the initialization section. - All public routines (i.e. declared in CREATE PACKAGE) must have implementations in CREATE PACKAGE BODY - Only public package routines are available outside of the package - {CREATE|DROP} PACKAGE [BODY] now respects CREATE ROUTINE and ALTER ROUTINE privileges - "GRANT EXECUTE ON PACKAGE BODY pkg" is now supported - SHOW CREATE PACKAGE [BODY] is now supported - SHOW PACKAGE [BODY] STATUS is now supported - CREATE and DROP for PACKAGE [BODY] now works for non-current databases - mysqldump now supports packages - "SHOW {PROCEDURE|FUNCTION) CODE pkg.routine" now works for package routines - "SHOW PACKAGE BODY CODE pkg" now works (the package initialization section) - A new package body level MDL was added - Recursive calls for package procedures are now possible - Routine forward declarations in CREATE PACKATE BODY are now supported. - Package body variables now work as SP OUT parameters - Package body variables now work as SELECT INTO targets - Package body variables now support ROW, %ROWTYPE, %TYPE
-
- 25 Feb, 2018 1 commit
-
-
Alexander Barkov authored
- CREATE PACKAGE [BODY] statements are now entirely written to mysql.proc with type='PACKAGE' and type='PACKAGE BODY'. - CREATE PACKAGE BODY now supports IF NOT EXISTS - DROP PACKAGE BODY now supports IF EXISTS - CREATE OR REPLACE PACKAGE [BODY] is now supported - CREATE PACKAGE [BODY] now support the DEFINER clause: CREATE DEFINER user@host PACKAGE pkg ... END; CREATE DEFINER user@host PACKAGE BODY pkg ... END; - CREATE PACKAGE [BODY] now supports SQL SECURITY and COMMENT clauses, e.g.: CREATE PACKAGE p1 SQL SECURITY INVOKER COMMENT "comment" AS ... END; - Package routines are now created from the package CREATE PACKAGE BODY statement and don't produce individual records in mysql.proc. - CREATE PACKAGE BODY now supports package-wide variables. Package variables can be read and set inside package routines. Package variables are stored in a separate sp_rcontext, which is cached in THD on the first packate routine call. - CREATE PACKAGE BODY now supports the initialization section. - All public routines (i.e. declared in CREATE PACKAGE) must have implementations in CREATE PACKAGE BODY - Only public package routines are available outside of the package - {CREATE|DROP} PACKAGE [BODY] now respects CREATE ROUTINE and ALTER ROUTINE privileges - "GRANT EXECUTE ON PACKAGE BODY pkg" is now supported - SHOW CREATE PACKAGE [BODY] is now supported - SHOW PACKAGE [BODY] STATUS is now supported - CREATE and DROP for PACKAGE [BODY] now works for non-current databases - mysqldump now supports packages - "SHOW {PROCEDURE|FUNCTION) CODE pkg.routine" now works for package routines - "SHOW PACKAGE BODY CODE pkg" now works (the package initialization section) - A new package body level MDL was added - Recursive calls for package procedures are now possible - Routine forward declarations in CREATE PACKATE BODY are now supported. - Package body variables now work as SP OUT parameters - Package body variables now work as SELECT INTO targets - Package body variables now support ROW, %ROWTYPE, %TYPE
-
- 12 Feb, 2018 2 commits
-
-
Sergei Golubchik authored
Truncate_versioning_priv->Delete_history_priv because the command and the privilege were renamed
-
Jerome Brauge authored
Standard compatible behavior for UPDATE: all assignments in SET are executed "simultaneously", not left-to-right. And `SET a=b,b=a` will swap the values.
-
- 07 Feb, 2018 1 commit
-
-
Monty authored
-
- 17 Dec, 2017 1 commit
-
-
Aleksey Midenkov authored
-
- 08 Dec, 2017 1 commit
-
-
Sergei Golubchik authored
because the statement is TRUNCATE, not DELETE
-
- 04 Dec, 2017 1 commit
-
-
Varun Gupta authored
This commit implements aggregate stored functions. The basic idea behind the feature is: * Implement a special instruction FETCH GROUP NEXT ROW that will pause the execution of the stored function. When the instruction is reached, execution of the initial query resumes "as if" the function returned. This gives the server the opportunity to advance to the next row in the result set. * Stored aggregates behave like regular aggregate functions. The implementation of thus resides in the class Item_sum_sp. Because it is an aggregate function, for each new row in the group, the Item_sum_sp::add() method will be called. This is when execution resumes and the function does another iteration to "add" one extra element to the final result. * When the end of group is reached, val_xxx() method will be called for the item. This case is handled by another execute step for the stored function, only with a special flag to force a call to the return handler. See Item_sum_sp::execute() for details. To allow this pause and resume semantic, we must preserve the function context across executions. This is stored in Item_sp::sp_query_arena only for aggregate stored functions, but has no impact for regular functions. We also enforce aggregate functions to include the "FETCH GROUP NEXT ROW" instruction. Signed-off-by:
Vicențiu Ciorbaru <vicentiu@mariadb.org>
-
- 21 Nov, 2017 1 commit
-
-
Aleksey Midenkov authored
-
- 14 Oct, 2017 1 commit
-
-
halfspawn authored
-
- 08 Sep, 2017 1 commit
-
-
Eugene Kosov authored
-
- 24 May, 2017 1 commit
-
-
kevg authored
-
- 12 Dec, 2016 1 commit
-
-
Sergei Golubchik authored
otherwise we'd need to store sql_mode *per vcol* (consider CREATE INDEX...) and how SHOW CREATE TABLE would support that? Additionally, get rid of vcol::expr_str, just to make sure the string is always generated and never leaked in the original form.
-
- 27 Aug, 2016 1 commit
-
-
Sergei Golubchik authored
-
- 30 Jun, 2016 1 commit
-
-
Michael Widenius authored
Print default values for BLOB's. This is a part commit for automatic changes to make the real commit smaller. All changes here are related to that we now print DEFAULT NULL for blob and text fields, like we do for all other fields.
-
- 14 Nov, 2015 1 commit
-
-
Monty authored
-
- 03 Nov, 2015 1 commit
-
-
Nirbhay Choubey authored
This reverts commit f8381d93.
-