MariaDB 5.3.12 Changelog

Downloadarrow-up-right | Release Notes | Changelog |Overview of 5.3arrow-up-right

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 #3621arrow-up-right [merge] Mon 2013-01-28 09:12:23 +0100

  • Revision #3620arrow-up-right Sat 2013-01-26 22:33:18 +0100

    • MDEV-3875arrow-up-right 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 #3619arrow-up-right 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 #3618arrow-up-right [merge] Fri 2013-01-25 10:20:45 +0100

  • Revision #3617arrow-up-right [merge] Mon 2013-01-21 21:29:19 -0800

  • Revision #3616arrow-up-right Wed 2013-01-16 21:07:26 +0200

    • 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().

  • Revision #3615arrow-up-right Thu 2013-01-17 16:08:05 +0200

    • MDEV-3900arrow-up-right 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.

    • Solution Instead of considering all SPs expensive, consider expensive only those SPs that are non-deterministic. If an SP is deterministic, the optimizer will checj if it is constant, and may eventually evaluate it during optimization.

  • Revision #3614arrow-up-right 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

  • Revision #3613arrow-up-right Wed 2013-01-16 15:11:13 +0200

    • Subquery turned into constant too late to be excluded from grouping list so test for constant added to the create_temp_table().

  • Revision #3612arrow-up-right Fri 2013-01-11 20:26:34 -0800

    • Fixed bug MDEV-4025arrow-up-right. 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.

  • Revision #3611arrow-up-right Fri 2013-01-11 12:44:21 +0100

    • MDEV-4020arrow-up-right : 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 #3610arrow-up-right [merge] Thu 2013-01-10 15:40:21 +0100

  • Revision #3609arrow-up-right Tue 2013-01-08 21:23:03 +0100

  • Revision #3608arrow-up-right Fri 2012-12-28 14:41:46 +0200

    • MDEV-3873arrow-up-right & MDEV-3876arrow-up-right & MDEV-3912arrow-up-right : 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.

    • 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.

  • Revision #3607arrow-up-right Wed 2012-12-19 15:56:57 +0200

    • MDEV-3928arrow-up-right: 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

    • 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.

  • Revision #3606arrow-up-right Wed 2012-12-05 21:06:00 +0200

circle-info

Be notified of new MariaDB Server releases automatically by subscribingarrow-up-right to the MariaDB Foundation community announce 'at' lists.mariadb.org announcement list (this is a low traffic, announce-only list). MariaDB plc customers will be notified for all new releases, security issues and critical bug fixes for all MariaDB plc products thanks to the Notification Services.

MariaDB may already be included in your favorite OS distribution. More information can be found on the Distributions which Include MariaDB page.

This page is licensed: CC BY-SA / Gnu FDL

spinner

Last updated

Was this helpful?