ĂshtĂ« publikuar versioni SQLite 3.45, njĂ« SGBD e lehtĂ«, e konceptuar si njĂ« bibliotekĂ« e integrueshme. Kodi SQLite shpĂ«rndahet si pronĂ« publike (public domain), dmth mund tĂ« pĂ«rdoret pa kufizime dhe pa pagesĂ« pĂ«r çdo qĂ«llim. MbĂ«shtetja financiare pĂ«r zhvilluesit e SQLite sigurohet nga njĂ« konsorcium i krijuar posaçërisht, i cili pĂ«rfshin kompani si Bentley, Bloomberg, Expensify dhe Navigation Data Standard.
Ndryshimet kryesore:
- Të gjitha funksionet SQL për të punuar me formatin JSON janë rishkruar dhe përkthyer në një format të ri të brendshëm të pemës së analizës JSONB, i cili serializohet dhe mund të ruhet në DB për të shmangur rishikimin e përsëritur kur përdoren vlera JSON. Versionet e reja të funksioneve që formojnë JSON tani gjenerojnë formatin binar JSONB në vend të atij tekstual. Funkioni json_valid() ka shtuar një argument të dytë opsional, përmes të cilit mund të caktohet një maskë bitore, e cila përcakton karakteristikat e saktë të JSON (për shembull, me caktimin 0x04 do të pranohet si i saktë blob-i JSONB, me caktimin 0x01 JSON-i tekstual në formatin RFC-8259, dhe me caktimin 0x05 të dy variantet).
- Në tabelën virtuale FTS5, e cila përdoret për kërkimin me tekst të plotë, është shtuar opsioni tokendata, që lejon përdorimin e tokenizuesve të vet.
- Në mënyrë të paracaktuar është e aktivizuar optimizimi SQLITE_DIRECT_OVERFLOW_READ, ku faqet overflow, të cilat janë më të mëdha se madhësia standarde e faqes b-tree, lexohen direkt nga skedari, duke u anashkaluar cache-n. Për ta çaktivizuar gjatë ndërtimit, mund të përdoret opsioni "-DSQLITE_DIRECT_OVERFLOW_READ=0".
- Në planifikuesin e kërkesave është rritur efikasiteti i optimizimit të kufijve transitive dhe është përmirësuar injorimi i indekseve që janë të njohura si të cilësisë të ulët gjatë ekzekutimit të operacionit ANALYZE.
- NĂ« interface-n e linjĂ«s sĂ« komandĂ«s Ă«shtĂ« pĂ«rmirĂ«suar shfaqja e pĂ«rmbajtjes nĂ« kodimin UTF-8 nĂ« platformĂ«n Windows. ĂshtĂ« siguruar automatikisht identifikimi i pĂ«rdorimit tĂ« interface-it CLI gjatĂ« riprodhimit tĂ« skenareve " .dump" dhe bĂ«hen ndryshime pĂ«rkatĂ«se nĂ« cilĂ«sime, si " .dbconfig defensive off" dhe " .dbconfig dqs_dll on".
- Në funksionet SQL të përcaktuara nga aplikacioni është shtuar pronësia SQLITE_RESULT_SUBTYPE, e cila lejon thirrjen nga funksioni sqlite3_result_subtype() për të inspektuar nënklasat e argumenteve.
SĂ« fundi, vlen tĂ« theksohet zhvillimi nĂ« ndĂ«rtimet eksperimentale tĂ« SQLite tĂ« njĂ« mĂ«nyre tĂ« re tĂ« regjistrimit tĂ« transaksioneve â WAL2 ("PRAGMA journal_mode = wal2"), ku pĂ«rdoren dy skedarĂ« wal ("database-wal" dhe "database-wal2") nĂ« vend tĂ« njĂ« tĂ« vetĂ«m. Kur shkruhen tĂ« dhĂ«na nĂ« BD, vendosen tĂ« dhĂ«na tĂ« reja nĂ« skedarin e parĂ« wal. NĂ«se skedari i parĂ« wal arrin njĂ« madhĂ«si tĂ« mjaftueshme, kalimi bĂ«het nĂ« shkrimin nĂ« skedarin e dytĂ«. Pas kalimit nĂ« skedarin e dytĂ« wal, i pari bĂ«het i disponueshĂ«m pĂ«r pĂ«rfundimin e ndryshimeve (checkpoint) dhe rishtypje. Prandaj, kur skedari i dytĂ« wal arrin njĂ« madhĂ«si tĂ« madhe, kalimi bĂ«het nĂ« tĂ« parin dhe kĂ«shtu me radhĂ«, qĂ« zgjidh problemin me rritjen e pakontrolluar tĂ« skedarit wal nĂ« situatat kur transaksioni nuk pĂ«rfundon pĂ«r njĂ« kohĂ« tĂ« gjatĂ« ose nĂ« proceset e zgjatura tĂ« leximit.
Burimi: opennet.ru
