- 30 Jun, 2016 26 commits
-
-
Michael Widenius authored
- Force usage of () around complex DEFAULT expressions - Give error if DEFAULT expression contains invalid characters - Don't use const_charset_conversion for stored Item_func_sysconf expressions as the result is not constaint over different executions - Fixed Item_func_user() to not store calculated value in str_value
-
Alexander Barkov authored
ENCRYPT(), SHA(), SHA2(), AES_ENCRYPT(), AES_DECRYPT(), DES_ENCRYPT(), DES_DECRYPT()
-
Alexander Barkov authored
CRC32(), MD5(), FROM_BASE64(), TO_BASE64(), HEX(), UNHEX(), ENCODE(), DECODE(), PASSWORD(), COMPRESS(), UNCOMPRESS(), UNCOMPRESSED_LENGTH().
-
Alexander Barkov authored
UUID(), UUID_SHORT()
-
Alexander Barkov authored
Miscelaneous functions: BENCHMARK(), SLEEP(), ROW_COUNT(), FOUND_ROWS(), GET_LOCK(), RELEASE_LOCK(), IS_USED_LOCK(), IS_FREE_LOCK(), MASTER_POS_WAIT(), MASTER_GTID_WAIT(), BINLOG_GTID_POS(), ST_GIS_DEBUG(), DECODE_HISTOGRAM(),
-
Alexander Barkov authored
Miscelaneous functions: LIKE_RANGE_MIN(), LIKE_RANGE_MAX(), WEIGHT_STRING(), GET_FORMAT(), FORMAT(), LOAD_FILE().
-
Alexander Barkov authored
Metadata functions
-
Alexander Barkov authored
Dynamic column functions
-
Alexander Barkov authored
Functions DATABASE() and USER().
-
Alexander Barkov authored
INET4/INET6 functions
-
Alexander Barkov authored
- INT result functions - CAST variants: COLLATE, BINARY, CONVERT(..USING)
-
Alexander Barkov authored
UDF
-
Alexander Barkov authored
Numeric functions with string input
-
Alexander Barkov authored
Boolean predicates
-
Alexander Barkov authored
XML functions
-
Alexander Barkov authored
Adding tests for cast, bit functions, string functions.
-
Alexander Barkov authored
GIS functions
-
Alexander Barkov authored
Testing non-ASCII string literals.
-
Alexander Barkov authored
- real functions - temporal functions - hybrid functions
-
Monty authored
-
Michael Widenius authored
-
Michael Widenius authored
MDEV-10134 Add full support for DEFAULT - Added support for using tables with MySQL 5.7 virtual fields, including MySQL 5.7 syntax - Better error messages also for old cases - CREATE ... SELECT now also updates timestamp columns - Blob can now have default values - Added new system variable "check_constraint_checks", to turn of CHECK constraint checking if needed. - Removed some engine independent tests in suite vcol to only test myisam - Moved some tests from 'include' to 't'. Should some day be done for all tests. - FRM version increased to 11 if one uses virtual fields or constraints - Changed to use a bitmap to check if a field has got a value, instead of setting HAS_EXPLICIT_VALUE bit in field flags - Expressions can now be up to 65K in total - Ensure we are not refering to uninitialized fields when handling virtual fields or defaults - Changed check_vcol_func_processor() to return a bitmap of used types - Had to change some functions that calculated cached value in fix_fields to do this in val() or getdate() instead. - store_now_in_TIME() now takes a THD argument - fill_record() now updates default values - Add a lookahead for NOT NULL, to be able to handle DEFAULT 1+1 NOT NULL - Automatically generate a name for constraints that doesn't have a name - Added support for ALTER TABLE DROP CONSTRAINT - Ensure that partition functions register virtual fields used. This fixes some bugs when using virtual fields in a partitioning function
-
Sergei Golubchik authored
use Item->neg to convert generate negative Item_num's instead of Item_func_neg(Item_num). Based on the following commit: Author: Monty <monty@mariadb.org> Date: Mon May 30 22:44:00 2016 +0300 Make negative number their own token The negation (-) operator will call Item->neg() one underlying numeric constants and remove itself (like the NOT() function does today for other NOT functions. This simplifies things - -1 is not anymore an expression but a basic_const_item - improves optimizer - DEFAULT -1 doesn't need special handling anymore - When we add DEFAULT expressions, -1 will be treated exactly like 1 - printing of items doesn't anymore put braces around all negative numbers Other things fixed: - Fixed that longlong converted to decimal's has a more appropriate size - Fixed that "-0.0" read into a decimal is interpreted as 0.0
-
Monty authored
Fixed some test for future when DELETE will not trigger row based replication
-
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.
-
Sergei Golubchik authored
-
- 29 Jun, 2016 1 commit
-
-
Alexander Barkov authored
of bugs easier (MDEV-8919, MDEV-10304, MDEV-10305, MDEV-10307) - Adding Item::push_note_converted_to_negative_complement() and Item::push_note_converted_to_positive_complement() - Adding virtual methods Item::val_int_signed_typecast() and Item::val_int_unsigned_typecast() - Moving COLUMN_GET() related code from Item_func_signed::val_int() and Item_func_unsigned::val_int() to Item_dyncol_get::val_int_signed_typecast() and Item_dyncol_get::val_int_unsigned_typecast() - Moving Item_func_signed::val_int_from_str() to Item::val_int_from_str() and changing it to get the value from "this" instead of args[0]. The patch does not change behaviour. It's only to simplify fixing of the mentioned bugs. It will also simplify switching the CAST related code to use the type handler infrastructure easier (soon).
-
- 26 Jun, 2016 1 commit
-
-
Elena Stepanova authored
Result file in engines/funcs test suite needs to be updated accordingly
-
- 23 Jun, 2016 1 commit
-
-
Monty authored
Fixed ccfilter to detect errors where the column is included in the error message
-
- 22 Jun, 2016 4 commits
-
-
Monty authored
MDEV-10219 rpl.rpl_parallel_temptable failed in buildbot: Assertion `!table || !table->in_use || table->in_use == _current_thd()' failed Problem was that table->in_use was not properly set when dropping a temporary for the slave.
-
Monty authored
-
Monty authored
Decimals with float, double and decimal now works the following way: - DECIMAL_NOT_SPECIFIED is used when declaring DECIMALS without a firm number of decimals. It's only used in asserts and my_decimal_int_part. - FLOATING_POINT_DECIMALS (31) is used to mark that a FLOAT or DOUBLE was defined without decimals. This is regarded as a floating point value. - Max decimals allowed for FLOAT and DOUBLE is FLOATING_POINT_DECIMALS-1 - Clients assumes that float and double with decimals >= NOT_FIXED_DEC are floating point values (no decimals) - In the .frm decimals=FLOATING_POINT_DECIMALS are used to define floating point for float and double (31, like before) To ensure compatibility with old clients we do: - When storing float and double, we change NOT_FIXED_DEC to FLOATING_POINT_DECIMALS. - When creating fields from .frm we change for float and double FLOATING_POINT_DEC to NOT_FIXED_DEC - When sending definition for a float/decimal field without decimals to the client as part of a result set we convert NOT_FIXED_DEC to FLOATING_POINT_DECIMALS. - variance() and std() has changed to limit the decimals to FLOATING_POINT_DECIMALS -1 to not get the double converted floating point. (This was to preserve compatiblity) - FLOAT and DOUBLE still have 30 as max number of decimals. Bugs fixed: variance() printed more decimals than we support for double values. New behaviour: - Strings now have 38 decimals instead of 30 when converted to decimal - CREATE ... SELECT with a decimal with > 30 decimals will create a column with a smaller range than before as we are trying to preserve the number of decimals. Other changes - We are now using the obsolete bit FIELDFLAG_LEFT_FULLSCREEN to specify decimals > 31 - NOT_FIXED_DEC is now declared in one place - For clients, NOT_FIXED_DEC is always 31 (to ensure compatibility). On the server NOT_FIXED_DEC is DECIMAL_NOT_SPECIFIED (39) - AUTO_SEC_PART_DIGITS is taken from DECIMAL_NOT_SPECIFIED - DOUBLE conversion functions are now using DECIMAL_NOT_SPECIFIED instead of NOT_FIXED_DEC
-
Monty authored
Added my_global.h to PerconeFT to avoid "error <my_config.h> MUST be included first"
-
- 19 Jun, 2016 1 commit
-
-
Elena Stepanova authored
Some rdiff files in storage_engine test suite need to be updated accordingly
-
- 14 Jun, 2016 1 commit
-
-
Sergey Vojtovich authored
General spell fixing in comments and strings
-
- 13 Jun, 2016 2 commits
-
-
Sergei Golubchik authored
MDEV-10098 main.create_delayed fails with ps-protocol: assertion `global_status_var.global_memory_used >= 0' failed Remove the assert. We cannot verify that global_memory_used value is valid (>=0) because some of updates are cached in individual THD's (e.g. THD1 can have +300 cached, while the other THD2 can have -300 cached. If the second THD exists before the first one, global_memory_used will be -300 temporarily). Instead add the assert just before the exit, when all THDs been already destroyed.
-
Sergei Golubchik authored
always update global_status_var.global_memory_used through update_global_memory_status()
-
- 10 Jun, 2016 3 commits
-
-
Nirbhay Choubey authored
Since a query can now refer to the same temporary table multiple times, find_dup_table()/find_table_in_list() have been updated to also consider this new possibility.
-
Nirbhay Choubey authored
Temporary table being created by outer statement should not be visible to inner statement. And if inner statement creates a table with same name. The whole statement should fail with ER_TABLE_EXISTS_ERROR. Implemented by temporarily de-linking the TABLE_SHARE being created by outer statement so that it remains hidden to the inner statement.
-
Nirbhay Choubey authored
mysqld maintains a list of TABLE objects for all temporary tables created within a session in THD. Here each table is represented by a TABLE object. A query referencing a particular temporary table for more than once, however, failed with ER_CANT_REOPEN_TABLE error because a TABLE_SHARE was allocate together with the TABLE, so temporary tables always had only one TABLE per TABLE_SHARE. This patch lift this restriction by separating TABLE and TABLE_SHARE objects and storing TABLE_SHAREs for temporary tables in a list in THD, and TABLEs in a list within their respective TABLE_SHAREs.
-