Byla vydána verze databázového systému MariaDB 12.2.2, která je označena jako první stabilní release větve 12.2. Větev MariaDB 12.2 byla zařazena mezi průběžné verze (rolling), pokračuje v postupném vývoji funkcionality a nahradila větev MariaDB 12.1. Současně byla uvolněna verze MariaDB 12.3.1 s novou implementací binlogu, která má status kandidáta na verzi budoucí LTS-větve. Větev MariaDB 12.2 bude podporována až do vydání verze 12.3.2.
Projekt MariaDB vyvíjí odvozenou verzi od MySQL, která zachovává zpětnou kompatibilitu a odlišuje se integrací dalších úložišť a rozšířenými možnostmi. Rozvoj MariaDB dohlíží nezávislá organizace MariaDB Foundation v souladu s otevřeným a transparentním procesem vývoje, který není závislý na jednotlivých výrobcích. MariaDB je dodávána místo MySQL v mnoha distribucích Linuxu (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) a je implementována v takových významných projektech, jako jsou Wikipedia, Google Cloud SQL a Nimbuzz.
Mezi změnami ve větvi MariaDB 12.2:
- V režimu kompatibility s databázovým systémem Oracle byly implementovány funkce TO_NUMBER (převedení řetězce na číslo) a TRUNC (zkrácení data, například na hodinu, den, měsíc, rok).
- Při provádění operací sloučení tabulek (JOIN) byla implementována optimalizace zohledňující jedinečnost řádků ve vnořených dotazech s výrazem „GROUP BY“ pro přesnější předpověď počtu výsledných řádků (out_rows) a správné použití indexů.
- Byly přidány nové možnosti řízení optimalizátoru ROWID_FILTER/NO_ROWID_FILTER a INDEX_MERGE/NO_INDEX_MERGE, stejně jako možnost implicitního uvádění názvů bloků v dotazech (je možné cíleně aplikovat možnosti optimalizace na části dotazů, čímž se odkazuje na ně podle názvů „select#N“, kde N je pořadové číslo bloku). Například: „select /*+ JOIN_ORDER(@"select#2" twenty,ten) */ ...“.
- Byla odstraněna omezení na úroveň vloženosti struktur v funkcích pro práci s JSON (odstraněn limit JSON_DEPTH_LIMIT, který dříve měl hodnotu 32).
- Byla přidána tabulka TRIGGERED_UPDATE_COLUMNS do schématu INFORMATION_SCHEMA (INFORMATION_SCHEMA.TRIGGERED_UPDATE_COLUMNS), která ukazuje sloupce měněné při aktivaci triggeru.
- Ve tabulce PARAMETERS v schématu INFORMATION_SCHEMA byl implementován sloupec PARAMETER_DEFAULT, obsahující výchozí hodnoty parametrů uložených procedur.
- Byla realizována experimentální podpora pro vyjádření „CREATE GLOBAL TEMPORARY TABLE“ pro vytvoření globálních dočasných tabulek. Tyto dočasné tabulky jsou odstraněny po ukončení sezení a jsou viditelné všem uživatelům, ale obsahují data individuální pro každého uživatele.
- V testovacím režimu byla nabídnuta vylepšená podpora replikace mezi tabulkami, které mají odlišnou strukturu.
Zdroj: opennet.ru
