Është publikuar rrethi i SQLite 3.51, një SGBD e lehtë, e cila paraqitet si një bibliotekë e integruar. Kodi SQLite shpërndahet si pasuri publike, dmth, mund të përdoret pa kufizime dhe falas për çdo qëllim. Mbështetje financiare për zhvilluesit e SQLite ofrohet nga një konsorcium i krijuar posaçërisht.
Ndryshimet kryesore:
- Funksionet e reja JSON jsonb_each() dhe jsonb_tree() janë shtuar, të cilat dallohen nga funksionet e mëparshme json_each() dhe json_tree() duke kthyer një vlerë JSONB për të dhënat me tipin array ose objekt.
- Kodi i zgjerimeve carray dhe percentile është transferuar në skedarin bazë "sqlite3.c" me kod të integruar SQLite. Shtesat e të dhënave janë të çaktivizuara si parazgjedhje dhe kërkojnë që parametrat "-DSQLITE_ENABLE_CARRAY" dhe "-DSQLITE_ENABLE_PERCENTILE" të specifikohen gjatë ndërtimit.
- Interfejsi për përdorimin e SQLite në skriptet Tcl është përmirësuar. Komandës "eval" i është shtuar një flamur "-asdict" për të përfolur vargjet me përdorimin e tipit "dict" në vend të "array". Është shtuar mundësia e ndërprerjes së funksioneve përdoruesit për të kthyer një vlerë NULL.
- Ndryshimet në interfejsin e komandës në linjë:
- Saktësia e komandës ".timer" është rritur deri në mikrosekonda;
- Në modet e formatimit «box» dhe «column» është realizuar mbështetje për simbolet me gjerësi të dyfishtë;
- Komanda «.imposter» tani mund të ofrojë tabela imposter në mënyrë vetëm për lexim, duke lejuar qasjen në të dhënat në indeks si në një tabelë, duke punuar me operacionin VACUUM dhe pa kërkuar për tu nisur me flagun «—unsafe-testing»;
- Në utilitarin sqlite dhe komandën «.open» është shtuar opsioni «—ifexists».
- Gjerësia maksimale e rreshtit, e vendosur me komandën «.width», është e kufizuar në 30000 simbole.
- Janë kryer optimizime të performancës:
- Është reduktuar ngarkesa në CPU gjatë bllokimit të transaksioneve të kufizuara me qasje në lexim;
- Është përmirësuar identifikimi i operacioneve të bashkimit (JOIN) që nuk kthejnë rreshta për shkak se një ose disa tabela nuk kanë rreshta;
- Ekzekutimi i nënpyetjeve skalarë, që nuk ndikojnë në rezultat, është përjashtuar;
- Është përshpejtuar punimi i funksioneve dritare në kërkesat me shprehjen «BETWEEN 😡 FOLLOWING AND :y FOLLOWING» dhe një vlerë shumë të madhe «:y».
- Është shtuar pragmën «PRAGMA wal_checkpoint=NOOP» dhe funksioni API sqlite3_wal_checkpoint() për bllokimin e ndryshimeve në WAL-log
- Në API janë shtuar funksionet sqlite3_set_errmsg() dhe sqlite3_db_status64().
- Në versionin JavaScript/WASM të SQLite është implementuar mbështetje për ndërtimin në formatin WebAssembly me tregues 64-bit.
- Është rritur qëndrueshmëria ndaj dëmtimit të BD në aplikacionet që largojnë bllokimet POSIX përmes thirrjes close().
- Është përmirësuar mbështetja për platformën VxWorks.
Burimi: opennet.ru
