The most recent release in the MariaDB 5.5 series is:MariaDB 5.5.68 Download Now
Download | Release Notes | Changelog |[Overview of 5.5
Release date: 30 Jan 2013
For the highlights of this release, see the release notes.
The revision number links will take you to the revision's page on Launchpad. On Launchpad you can view more details of the revision and view diffs of the code modified in that revision.
Revision #3654 Tue 2013-01-29 12:27:31 +0100
more changes for fedora18
Tue 2013-01-29 10:46:05 +0100
fix 'compat' rpm for fedora18
Mon 2013-01-28 17:24:50 +0100
fix embedded build with for cmake 2.6.2 (older cmake could not handle IF(NOT MATCHES)
Mon 2013-01-28 15:13:39 +0200
Fix for , and backport of the following collection of fixes and backports from .
The bug in was an instance of the problem fixed by Sergey's patch in 10.0 - namely that the range optimizer could change table->[read | write]_set, and not restore it.
revno: 3471 committer: Sergey Petrunya branch nick: 10.0-serg-fix-imerge timestamp: Sat 2012-11-03 12:24:36 +0400 message:
Now, ROR-merged QUICK_RANGE_SELECT objects make no assumptions about the values of table->read_set and table->write_set. Each QUICK_ROR_SELECT has (and had before) its own column bitmap, but now, all QUICK_ROR_SELECT's functions that care: reset(), init_ror_merged_scan(), and get_next() will set table->read_set when invoked and restore it back to what it was before the call before they return.
This allows to avoid the mess when somebody else modifies table->read_set for some reason.
[merge] Mon 2013-01-28 13:36:05 +0100
Revision #2502.567.65 [merge] Mon 2013-01-28 09:12:23 +0100
5.2 merge
Revision #2502.566.42 Mon 2013-01-28 09:10:01 +0100
compilation error with -Wuninitialized -Werror
[merge] Fri 2013-01-25 17:22:21 +0100
5.1 merge
Fri 2013-01-25 14:29:46 +0100
- Server crashes on normal shutdown in closefrm after executing a query from MyISAM table
Revision #2502.567.64 Sat 2013-01-26 22:33:18 +0100
MDEV-3875 Wrong result (missing row) on a DISTINCT query with the same subquery in the SELECT list and GROUP BY
fix remove_dup_with_hash_index() and remove_dup_with_compare() to take NULLs into account
Revision #2502.567.63 Fri 2013-01-25 16:56:57 +0200
The problem was that expression with field after transformation (on the first execution) reached by fix_fields() (via reference) before row which it belongs to (on the second execution) and fix_field for row did not follow usual protocol for Items with argument (first check that the item fixed then call fix_fields).
Item_row::fix_field fixed.
Revision #3649 Mon 2013-01-28 13:49:14 +0200
MDEV-4091: Dynamic columns C functions should be included in libmysqlclient
Revision #3648 [merge] Sat 2013-01-26 22:23:27 +0100
Revision #3644.1.4 Fri 2013-01-25 23:34:46 +0100
fix embedded
Fri 2013-01-25 18:59:30 +0100
Fix embedded build
Fri 2013-01-25 17:26:10 +0100
, :
Miscellaneous workarounds for drop-in compatibility problems with Linux distributions, arounf versioning of the MySQL 5.5 client shared library. There seems to be 3 different ways major distributions handle versioning
Fri 2013-01-25 16:50:14 +0100
: problems installing MariaDB packages (conflicts with mysql-libs-5.5) FIx : make "shared" RPM obsolete/provide mysql-libs
Revision #3647 [merge] Sat 2013-01-26 01:59:27 +0200
Automatic merge
Revision #3645.1.1 Fri 2013-01-25 21:40:42 +0200
Fixed MDEV-3890: Server crash inserting record on a temporary table after truncating it The problem was that a temporary table was re-created as a non-temporary table.
Revision #3646 [merge] Fri 2013-01-25 11:24:42 +0100
5.3 merge
Revision #2502.567.62 [merge] Fri 2013-01-25 10:20:45 +0100
5.2 merge
Fri 2013-01-25 10:19:35 +0100
Replace deprecated SET OPTION syntax in mysqldump
mysqldump.c: s/SET OPTION/SET/ (OPTION was, hm, optional since 3.21, so there's no need to use SET OPTION even in the old compatibility modes)
Fri 2013-01-25 09:41:26 +0100
remote user enumeration ()
instead of returning Access denied on the incorrect user name, emulate the complete failed logic procedure, possibly with the change plugin packet.
Fri 2013-01-25 00:20:53 +0100
report "using password: YES/NO" correctly for the COM_CHANGE_USER failures
Fri 2013-01-25 00:17:39 +0100
COM_CHANGE_USER allows fast password brute-forcing ()
allow only three failed change_user per connection. successful change_user do NOT reset the counter
Revision #3645 [merge] Wed 2013-01-23 15:18:05 -0800
Merge 5.3->5.5
Revision #2502.567.61 [merge] Mon 2013-01-21 21:29:19 -0800
Merge 5.2->5.3
[merge] Mon 2013-01-21 15:23:40 -0800
Merge 5.1->5.2
[merge] Mon 2013-01-21 13:48:34 -0800
Merge.
Sat 2013-01-19 23:40:53 -0800
Corrected the test case for bug .
Wed 2013-01-16 11:17:58 -0800
Corrected the fix for bug .
Tue 2013-01-15 16:46:27 -0800
Fixed bug . The original patch with the implementation of virtual columns did not support INSERT DELAYED into tables with virtual columns. This patch fixes the problem.
Wed 2013-01-16 21:07:26 +0200
fix.
The problem was that maybe_null of Item_row and its componetes was unsynced after update_used_tables() (and so pushed_cond_guards was not initialized but then requested).
Fix updates Item_row::maybe_null on update_used_tables().
Thu 2013-01-17 16:08:05 +0200
Optimizer difference between MySQL and MariaDB with stored functions in WHERE clause of UPDATE or DELETE statements
Analysis The reason for the less efficient plan was result of a prior design decision - to limit the eveluation of constant expressions during optimization to only non-expensive ones. With this approach all stored procedures were considered expensive, and were not evaluated during optimization. As a result, SPs didn't participate in range optimization, which resulted in a plan with table scan rather than index range scan.
Thu 2013-01-17 13:53:15 +0200
backport of: Don't reset maybe_null in update_used_tables(); This breaks ROLLUP This fixed failing test in group_by.test
Wed 2013-01-16 15:11:13 +0200
fix.
Subquery turned into constant too late to be excluded from grouping list so test for constant added to the create_temp_table().
Fri 2013-01-11 20:26:34 -0800
Fixed bug . The bug could lead to a wrong estimate of the number of expected rows in the output of the EXPLAIN commands for queries with GROUP BY. This could be observed in the test case for LP bug 934348.
Fri 2013-01-11 12:44:21 +0100
: Make sure strmov symbol is exported by client library on Linux (even if the server and libraries itself use stpcpy instead of it)
It is a workaround that allows myodbc built by certain distributions' (CentOS,Fedora) to peacefully coexist with mariadb client libraries. The problem is that MyODBC in these distros needs strmov() to be exported by mysql client shared library, or else myodbc fails to load.
Revision #3644 Wed 2013-01-23 14:58:05 +0100
remove one particularly stupid test
Revision #3643 Mon 2013-01-21 12:20:54 +0100
MDEV-4069 thd_wait_end does not called in some cases in buf_page_read_low in XtraDB engine
Revision #3642 Tue 2013-01-22 13:29:59 +0200
Fixed typo in the function name. test suite added.
Revision #3641 Mon 2013-01-21 14:34:39 +0200
MDEV-3873: fixed functions absend in 5.3.
Revision #3640 Sun 2013-01-20 21:43:11 +0100
fix a strict aliasing warning - remove a meaningless cast.
Revision #3639 Sun 2013-01-20 21:42:01 +0100
MDEV-3952 Incompatible change in MariaDB-5.5.28a-client rpm adds mytop when not in MariaDB-5.5.23-client (CentOS 5)
Same as for deb: don't add mytop to the client rpm.
Revision #3638 Sun 2013-01-20 14:06:33 +0100
MDEV-3934 Assertion `((keypart_map+1) & keypart_map) == 0' failed in _mi_pack_key with an index on a POINT column
sel_arg_range_seq_next(): set keypart map also for GEOM_FLAG keys
Revision #3637 Sun 2013-01-20 00:46:51 +0100
MDEV-4029 SELECT on information_schema using a subquery locks up the information_schema table due to incorrect mutexes handling
Early evaluation of subqueries in the WHERE conditions on I_S.*_STATUS tables, otherwise the subquery on this same table will try to acquire LOCK_status twice.
Revision #3636 Sat 2013-01-19 14:03:33 +0100
MDEV-3832 MariaDB conflicts with packages filesystem-3.1-2.fc18.i686 and jre-1.7.0_09-fcs.i586 on Fedora 18
fix the rpm packaging to work on Fedora18. Two problems: * conflicts on common directories with other packages. * more auto-generated requirements for mariadb-test.rpm
Revision #3635 Fri 2013-01-18 19:10:20 +0100
MDEV-633 Bug #1024058 - mysqld XA crash in replication slave
initialize cache_mngr and write the Xid into binlog even if binlog is disabled with SQL_LOG_BIN=0 or no --log-slave-updates in the slave thread
Revision #3634 Fri 2013-01-18 19:07:59 +0100
simplify THD::binlog_setup_trx_data() usage
Revision #3633 Fri 2013-01-18 19:04:51 +0100
MDEV-3908 crash in multi-table delete and mdl (CVE-2012-5612)
Add a test case. The fix comes with MySQL bug#15948123: SERVER WORKS INCORRECT WITH LONG TABLE ALIASES
Revision #3632 Fri 2013-01-18 19:04:23 +0100
MDEV-4065 thd_kill_statement service
Revision #3631 Fri 2013-01-18 18:49:07 +0100
Fix Windows installers' bootstrapper scripts , after mysql_performance_tables.sql was split off mysql_system_tables.sql
Revision #3630 Thu 2013-01-17 02:27:10 +0200
Don't reset maybe_null in update_used_tables(); This breaks ROLLUP This fixed failing test in group_by.test
Revision #3629 Thu 2013-01-17 01:08:49 +0200
Fixed compiler warning
Revision #3628 [merge] Wed 2013-01-16 11:13:08 +0100
xtradb merge. Percona-Server-5.5.28-rel29.3
Revision #0.12.59 Tue 2013-01-15 22:22:49 +0100
Percona-Server-5.5.28-rel29.3
Revision #3627 Tue 2013-01-15 19:16:29 +0100
Test case and a different fix for MySQL bug#14485479
Revision #3626 Tue 2013-01-15 19:16:18 +0100
small cleanups
Revision #3625 Tue 2013-01-15 19:15:51 +0100
backport a test case for a 5.5 bug fix from the 5.6 tree
Revision #3624 [merge] Tue 2013-01-15 19:13:32 +0100
mysql-5.5.29 merge
merge] Tue 2012-09-11 17:42:22 +0300
merge
Mon 2012-08-27 15:30:58 +0300
Bug #13548161: MYSQLD_SAFE IMPROVEMENTS FOR 5.5 ALLWAYS SETS PLUGIN_DIR TO DEFAULT IGNOR
The test in mysqld_safe for the presence of the --plugin-dir and assigning a default value to it were performed before the actual argument parsing. This is wrong, as PLUGIN_DIR mysqld_safe code also uses MY_BASEDIR_VERSION to look for version specific plugin directory if present. Fixed by moving the PLUGIN_DIR logic after the parse_arguments() call.
Fri 2012-08-24 15:01:31 +0300
Bug #14181049: MYSQL_INSTALL_DB.PL CREATES EMPTY SYSTEM TABLES FOR MYSQL
The script is different from what's used on unixes. It was not playing the table insertion script (mysql_system_tables_data.sql), although it was checking for the presence of this script. Fixed by re-enabling the lookup for this file and replaying it at bootstrap time. Note that on the Unixes "SELECT @@hostname" does return a fully qualified name, whereas on Windows it returns only a hostname. So by default we're filtering records in the mysql.user table until we ensure this is fixed.
Revision #3623 Tue 2013-01-15 19:08:49 +0100
update debian patch to apply
Revision #3622 [merge] Tue 2013-01-15 19:07:46 +0100
5.3 merge
Revision #2502.567.54 [merge] Thu 2013-01-10 15:40:21 +0100
5.2->5.3 merge
[merge] Thu 2013-01-10 13:54:04 +0100
5.1 merge
[merge] Wed 2013-01-09 23:51:51 +0100
mysql-5.1.67 merge
[merge] Fri 2012-12-21 15:19:08 +0100
merge
Fri 2012-12-21 15:17:26 +0100
Support VS2012. Exclude compiler-defined symbols from being exported by mysqld.exe
[merge] Fri 2012-12-21 14:04:25 +0100
merge
Thu 2012-12-06 00:37:06 +0100
: myisamchk bogus error for files larger than 4GB.
Tue 2012-12-11 09:50:48 +0100
one-byte overflow with old passwords
Mon 2012-11-26 13:33:24 +0100
Fix broken feedback plugin after .
Link feedback plugin with yassl libraries, if with-ssl=bundled is used, since mysqld does not export SSL symbols anymore.
Fri 2012-11-23 13:50:46 +0100
- - Mysqlclient exports the same symbols as openssl
Compile yassl and taocrypt using -fvisibility=hidden, when possible. This prevent symbols from being exported.
[merge] Thu 2012-11-22 18:29:53 +0100
merge 5.1
Thu 2012-11-22 18:27:02 +0100
Feedback plugin now recognizes Windows 8 / Windows Server 2012.
Tue 2013-01-08 21:23:03 +0100
FROM_DAYS() returns different result in MariaDB comparing to MySQL: NULL vs 0000-00-00
fixed a regression, introduced while fixing
Fri 2012-12-28 14:41:46 +0200
& & : Wrong result (extra rows) with ALL subquery from a MERGE view.
The problem was in the lost ability to be null for the table of a left join if it is a view/derived table.
It hapenned because setup_table_map(), was called earlier then we merged the view or derived.
Wed 2012-12-19 15:56:57 +0200
: Assertion `example' failed in Item_cache::is_expensive_processor with a 2-level IN subquery
Analysis: The following call stack shows that it is possible to set Item_cache::value_cached, and the relevant value without setting Item_cache::example.
#0 Item_cache_temporal::store_packed at item.cc:8395 #1 get_datetime_value at item_cmpfunc.cc:915 #2 resolve_const_item at item.cc:7987 #3 propagate_cond_constants at sql_select.cc:12264 #4 propagate_cond_constants at sql_select.cc:12227 #5 optimize_cond at sql_select.cc:13026 #6 JOIN::optimize at sql_select.cc:1016 #7 st_select_lex::optimize_unflattened_subqueries at sql_lex.cc:3161 #8 JOIN::optimize_unflattened_subqueries at opt_subselect.cc:4880 #9 JOIN::optimize at sql_select.cc:1554
Wed 2012-12-05 21:06:00 +0200
fix.
Fixed algorithm of detecting of first real table in view/subquery-in-the-FROM-clase.
Fri 2012-11-23 13:11:31 +0100
bump the version to 5.3.11
[merge] Thu 2012-11-22 10:30:39 -0800
Merge
Wed 2012-11-21 21:55:04 -0800
Fixed LP bug #1002146 (bug ). If the setting of system variables does not allow to use join buffer for a join query with GROUP BY <f1,...> / ORDER BY <f1,...> then filesort is not needed if the first joined table is scanned in the order compatible with order specified by the list <f1,...>.
Revision #3621 Tue 2013-01-15 17:46:46 +0100
remove thd_mark_as_hard_kill() (because it's conceptually wrong. only the user can decide whether the kill is allowed to leave tables in the inconsistent state, storage engine has no say in that)
Revision #3620 Tue 2013-01-15 14:33:08 +0200
Revision #3619 Mon 2013-01-14 15:05:05 +0200
Fix for bug MDEV-3992
Analysis: The crash is a result of incorrect analysis of whether a secondary key can be extended with a primary in order to compute ORDER BY. The analysis is done in test_if_order_by_key(). This function doesn't take into account that the primary key may in fact index the same columns as the secondary key. For the test query test_if_order_by_key says that there is an extended key with total 2 keyparts. At the same time, the condition if (pkinfo->key_part[i].field->key_start.is_set(nr)) in test_if_cheaper_oredring() becomes true for (i == 0), which results in an invalid access to rec_per_key[-1].
Solution: The best solution would be to reuse KEY::ext_key_parts that is already computed by open_binary_frm(), however after detailed analysis the conclusion is that the change would be too intrusive for a GA release. The solution for 5.5 is to add a guard for the case when the 0-th key part is considered, and to assume that all keys will be scanned in this case.
Revision #3618 Fri 2013-01-11 02:03:43 +0200
Buildbot fixes and cleanups: - Added --verbose to BUILD scripts to get make to write out compile commands. - Detect if AM_EXTRA_MAKEFLAGS=VERBOSE=1 was used with build scripts. - Don't write warnings about replication variables when doing bootstrap. - Fixed that mysql_cond_wait() and mysql_cond_timedwait() will report original source file in case of errors. - Ignore some compiler warnings
Revision #3617 Fri 2013-01-11 01:31:50 +0200
Fixed crashing bug in GROUP_CONCAT with ROLLUP Fixed MDEV-4002: Server crash or valgrind errors in Item_func_group_concat::setup and Item_func_group_concat::add
Revision #3616 Fri 2013-01-11 00:53:07 +0200
Fixed problem with failing mysql_upgrade when proc table was not correct. Moved out creation of performance schema tables from mysql_system_tables.sql as the performance_tables creation scripts needs a working mysql.proc to work.
Revision #3615 Fri 2013-01-11 00:35:33 +0200
Fixed MDEV-4013: Password length in replication setup Give error for wrong parameters to CHANGE MASTER Extend MASTER_PASSWORD and MASTER_HOST lengths
Revision #3614 Fri 2013-01-11 00:22:14 +0200
Fixed some race conditons and bugs related to killed queries KILL now breaks locks inside InnoDB Fixed possible deadlock when running INNODB STATUS Added ha_kill_query() and kill_query() to send kill signal to all storage engines Added reset_killed() to ensure we don't reset killed state while awake() is getting called
Revision #3613 Thu 2013-01-10 23:40:18 +0200
Fix for MDEV-4009: main.delayed sporadically fails with "query 'REPLACE DELAYED t1 VALUES (5)' failed: 1317: Query execution was interrupted" - Fixed broadcast without a proper mutex - Don't break existing locks if we are just testing if we can get the lock
Revision #3612 Wed 2013-01-09 17:30:20 +0100
MDEV-3846 REFRESH_CHECKPOINT and REFRESH_TABLE_STATS tokens share the same value
Revision #3611 Wed 2013-01-09 17:29:51 +0100
MDEV-3985 crash: uninstall soname 'a'
Revision #3610 Tue 2013-01-08 21:23:40 +0100
MDEV-3883 Show global status not in order
Revision #3609 Tue 2013-01-08 21:21:28 +0100
MDEV-3987 uninitialized read in Item_cond::fix_fields leads to crash: select .. where .. in ( select ... )
change Item_func_group_concat to use max_length according to the expected semantics
Revision #3608 Mon 2013-01-07 20:21:05 +0100
non-functional cleanup, clarifying CONVERT_IF_BIGGER_TO_BLOB
Revision #3607 Sat 2013-01-05 23:52:25 +0100
Remove timed mutexes in XtraDB - obsolete feature that does not link on Windows, if plugin is build dynamically It was already removed from innobase in the past.
Revision #3606 Tue 2013-01-01 15:33:25 +0100
MDEV-3993 - add MSI installer option to set character-set-server=utf8
Revision #3605 [merge] Mon 2012-12-31 01:39:26 +0400
Revision #3604.1.1 Fri 2012-12-28 17:02:33 +0400
storage_engine tests and upstream engines/* suites went out of sync with current MariaDB code. Reasons: - as of 5.5.27, YEAR(2) is deprecated, hence the new warning; - - different error code/message on out-of-range autoincrement; - INSERT IGNORE now produces a warning if a duplicate was encountered (change pushed along with )
Revision #3604 Thu 2012-12-06 17:30:22 +0100
typo
Revision #3603 Thu 2012-12-06 16:34:02 +0100
if the debian package name for 5.5.28 is 5.5.28-mariadb1wheezy then for 5.5.28a it should be 5.5.28a-mariadb1wheezy not 5.5.28-mariadb-a1wheezy
Revision #3602 Fri 2012-12-21 11:18:29 +0200
Revision #3601 Fri 2012-12-21 00:12:37 +0100
MDEV-3945 - do not hold LOCK_thread_count when freeing THD.
The patch decreases the duration of LOCK_thread_count, so it is not hold during THD destructor and freeing memory. This mutex now only protects the integrity of threads list, when removing THD from it, and thread_count variable.
The add_to_status() function that updates global status during client disconnect, is now correctly protected by the LOCK_status mutex.
Benchmark : in a "non-persistent" sysbench test (oltp_ro with reconnect after each query), ~ 25% more connects/disconnects were measured
Revision #3600 Thu 2012-12-20 22:38:40 +0200
MDEV-3899 Valgrind warnings (blocks are definitely lost) in filesort on IN subquery with SUM and DISTINCT
Analysys: In the beginning of JOIN::cleanup there is code that is supposed to free all filesort buffers. The code assumes that the table being sorted is the first non-constant table. To get this table it calls: first_top_level_tab(this, WITHOUT_CONST_TABLES)
However, first_top_level_tab() instead returned the wrong table - the first one in the plan, instead of the first non-constant table. There is no other place outside filesort() where sort buffers may be freed. As a result, the sort buffer was not freed, and there was a memory leak.
Solution: Change first_top_level_tab(), to test for WITH_CONST_TABLES instead of WITHOUT_CONST_TABLES.
Revision #3599 Wed 2012-12-19 21:58:05 +0200
Fixed some compiler warnings
Revision #3598 Tue 2012-12-18 12:44:15 +0200
MDEV-3818: Query against view over IS tables worse than equivalent query without view
Fixed the test to be lower-case because it fails on windows with mixed case.
Revision #3597 Mon 2012-12-17 22:34:56 +0200
Fixed the CREATE TABLE IF EXIST generates warnings instead of errors
Revision #3596 Mon 2012-12-17 15:23:58 +0200
MDEV-3818: Query against view over IS tables worse than equivalent query without view
Analysis: The reason for the suboptimal plan when querying IS tables through a view was that the view columns that participate in an equality are wrapped by an Item_direct_view_ref and were not recognized as being direct column references.
Solution: Use the original Item_field objects via the real_item() method.
Revision #3595 Sun 2012-12-16 20:51:48 +0200
Remember original table row pack type for ALTER TABLE if table is not copied.
Revision #3594 Sun 2012-12-16 20:49:57 +0200
Removed lock wait timeout warning when using CREATE TABLE IF EXISTS
Revision #3593 Sun 2012-12-16 16:13:17 +0200
Implemented MDEV-3941: CREATE TABLE xxx IF NOT EXISTS should not block if table exists. - Added option to check_if_table_exists() to quickly check if table exists (either SHARE or .FRM) - Extended lock_table_names() to not wait for meta data locks if CREATE IF NOT EXISTS is used.
Revision #3592 [merge] Sun 2012-12-16 12:04:26 +0200
Automatic merge
Revision #3544.1.1 Fri 2012-12-14 20:21:50 +0200
Removed extra '+' from some lines (remains of old merge)
Revision #3591 Mon 2012-11-26 21:22:44 +0200
Fix of MDEV-3874: Server crashes in Item_field::print on a SELECT from a MERGE view with materialization+semijoin, subquery, ORDER BY.
The problem was that in debugging binaries it try to print item to assign human readable name to the item. But subquery item was already freed (join_free/cleanup with full cleanup) so Item_field refers to temporary table which memory had been already freed.
Revision #3590 Tue 2012-12-04 16:06:07 -0800
Fixed bug MDEV-3888. When inserting a record with update on duplicate keys the server calls the ha_index_read_idx_map handler function to look for the record that violates unique key constraints. The third parameter of this call should mark only the base components of the index where the server is searched for the record. Possible hidden components of the primary key are to be unmarked.
Revision #3589 Sat 2012-12-01 18:01:59 +0100
fix openssl_1 test
Revision #3588 Sat 2012-12-01 16:33:22 +0100
MDEV-3901: Wrong SSL error messages
Fixed typo (missing comma)
don't write a key value into the record buffer - a key length can be larger then the record length.
Revision #2502.565.28 Fri 2013-01-25 12:26:35 +0100
MDEV-759 Bug #998340 - Valgrind complains on simple selects containing expression DAY(FROM_UNIXTIME(-1))
check item->null_value before using the result of item->val_int()
Fedora (also Mageia, and likely other Redhat descendants) way old, 5.1 API functions are given version libmysqlclient_16 new API functions (client plugins, mysql_stmt_next ) are given version libmysqlclient_18 some extra functions beyond API are exported. some functions are renamed.
2.Debian Wheezy way all functions are given libmysqlclient_18 version
Ubuntu way (or MySQL/MariaDB download packages) no versioning
UIp to this fix, MariaDB distributions did not have any versioning in the libraries, this rendered client library incompatible to distributions thus exchanging distribution's libmysqlclient.so.18.0.0 with MariaDB's did not work nicely (anywhere but on Ubuntu)
THE FIX is to build libraries the same way as distributions do it - when building RPMs, use same version script as Fedora does, Make sure to export extra-symbols, the same as Fedora exports. - when building DEBs, use the same version script as Debian Wheezy - do not use version scripts otherwise
Also, makes sure that extensions of MySQL APIs (asynchronous client functionality) is exported by the shared libraries.
Fixed bug MDEV-4063 (bug #56927). This bug could result in returning 0 for the expressions of the form <aggregate_function>(distinct field) when the system variable max_heap_table_size was set to a small enough number. It happened because the method Unique::walk() did not support the case when more than one pass was needed to merge the trees of distinct values saved in an external file.
Backported a fix in grant_lowercase.test from mariadb 5.5.
Revision #2502.565.26 Mon 2013-01-21 10:52:39 +0100
MDEV-4029 SELECT on information_schema using a subquery locks up the information_schema table due to incorrect mutexes handling
Early evaluation of subqueries in the WHERE conditions on I_S.*_STATUS tables, otherwise the subquery on this same table will try to acquire LOCK_status twice.
proactive s/strmov/strnmov/ in sql_acl.cc and related test cases
The failure is caused by failing stat() call . C Runtime function stat() uses old struct with 32bit st_size member, and since Visual Studio 2010 , it returns an error on st_size overflow (i.e on files larger than 4GB)
Fix replaces stat() by my_stat(), the later is backed by 64bit-able stat64().
Fixed by propagating new maybe_null flag during Item::update_used_tables().
Change in join_outer.test and join_outer_jcl6.test appeared because IS NULL reported no used tables (i.e. constant) for argument which could not be NULL and new maybe_null flag was propagated for IS NULL argument (Item_field) because table the Item_field belonged to changed its maybe_null status.
The fix is to set Item_cache_temporal::example even when the value is set directly by Item_cache_temporal::store_packed. This makes the Item_cache_temporal object consistent.
This page is licensed: CC BY-SA / Gnu FDL