Avaldatud on SQLite 3.40, kergekaaluline andmebaasihaldussĂŒsteem, mis on vormistatud kui dĂŒnaamiline teek. SQLite'i kood on levitatud avaliku domaanina, st seda saab kasutada piiranguteta ja tasuta mistahes eesmĂ€rkidel. SQLite'i arendajate rahastamist toetab spetsiaalselt loodud konsortsium, kuhu kuuluvad sellised ettevĂ”tted nagu Adobe, Oracle, Mozilla, Bentley ja Bloomberg.
Peamised muudatused:
- Kasutusele on vĂ”etud katseversioon SQLite kompileerimisest vahendatud koodi WebAssembly, mis suudab kĂ€ivituda veebibrauseris ja on sobilik andmebaaside haldamiseks veebirakendustes JavaScripti keeles. Veebiarendajatele pakutakse kĂ”rgetasemelist objektorienteeritud liidest andmete töötlemiseks, mis sarnaneb sql.js vĂ”i Node.js-le, samuti madalamal tasemel C API ja Web Worker mehhanismil pĂ”hinevat API-d, mis vĂ”imaldab luua asĂŒnkroonneid töötlejaid, mis töötavad eraldi tĂ”ugudes. Andmed, mida veebirakendused salvestavad SQLite'i WASM versioonis, saavad salvestada kliendi poolel OPFS (Origin-Private FileSystem) vĂ”i API window.localStorage abil.
- Lisatud on recovery laiendus, mis on mÔeldud andmete taastamiseks kahjustatud andmefailidest. KÀskluste liideses kasutatakse taastamiseks kÀsku ".recover".
- Parandatud on pĂ€ringu planeerimise toimimist. Eemaldatud on piirangud indeksite kasutamisel tabelitega, mis sisaldavad rohkem kui 63 veergu (varem ei rakendatud indekseerimist veergude puhul, mille jĂ€rjestusnumber ĂŒletab 63). Parandatud on vĂ€ljendites kasutatavate vÀÀrtuste indekseerimist. Suuri stringe ja blob'e ei laadita enam kettalt, kui töödeldakse NOT NULL ja IS NULL operaatoreid. Eemaldatud on vaadete materjaliseerimine, mille puhul tĂ€ies ulatuses skaneerimist viiakse lĂ€bi ainult ĂŒks kord.
- Koodibaasis on failinimede esindamiseks "char *" tĂŒĂŒbi asemel kasutusele vĂ”etud eraldi tĂŒĂŒp sqlite3_filename.
- Lisatud on sisemine funktsioon sqlite3_value_encoding().
- Lisatud on reĆŸiim SQLITE_DBCONFIG_DEFENSIVE, mis keelab andmeskeemi versiooni muutmise.
- Parameetri âPRAGMA integrity_checkâ rakendusse on lisatud tĂ€iendavad kontrollid. NĂ€iteks ei tohi tabelid ilma STRICT mĂ€rgita sisaldada numbrilisi vÀÀrtusi TEXT tĂŒĂŒpi veergudes ega stringivÀÀrtusi numbritega NUMERIC tĂŒĂŒpi veergudes. Samuti on lisatud kontroll ridade korrektse jĂ€rjestuse kohta tabelites, kus on mĂ€rge âWITHOUT ROWIDâ.
- VĂ€ljendis âVACUUM INTOâ on arvesse vĂ”etud âPRAGMA synchronousâ seadeid.
- Lisatud on kompileerimisvalik SQLITE_MAX_ALLOCATION_SIZE, mis vÔimaldab piirata mÀlu jaotuse plokkide suurust.
- SQLite'i sisseehitatud pseudojuhuslike arvude genereerimise algoritm on vahetatud RC4 voolusĂŒsteemi ĆĄifreerimise vastu Chacha20 vastu.
- Erinevates andmevormingutes on lubatud kasutamine sama nimega indekseid.
- Teostatud on jĂ”udluse optimeerimised, mis on vĂ”imaldanud vĂ€hendada CPU koormust umbes 1% tĂŒĂŒpilise tegevuse korral.
Allikas: opennet.ru
