Udgivelsen af SQLite 3.51

SQLite 3.51 er udgivet, en letvægtsdatabase, der præsenteres som et plugin-bibliotek. Koden til SQLite distribueres som offentlig ejendom (public domain), hvilket betyder, at den kan bruges uden begrænsninger og gratis til enhver formål. Den finansielle støtte til SQLite-udviklerne leveres af et specifikt oprettet konsortium.

Vigtige ændringer:

  • Der er tilføjet nye JSON-funktioner jsonb_each() og jsonb_tree(), som adskiller sig fra de tidligere tilgængelige funktioner json_each() og json_tree() ved at returnere JSONB-værdier for data af typen array eller objekt.
  • Koden til udvidelserne carray og percentile er blevet overført til basisfilen «sqlite3.c» med indbygget SQLite-kode. Som standard er disse funktioner deaktiverede og kræver angivelse af parameterne «-DSQLITE_ENABLE_CARRAY» og «-DSQLITE_ENABLE_PERCENTILE» under bygningen.
  • Grænsefladen til brug af SQLite i Tcl-scripts er forbedret. Flaget «-asdict» er blevet tilføjet til kommandoen «eval» for at returnere strenge ved hjælp af typen «dict» i stedet for «array». Muligheden for at afbryde brugerdefinerede funktioner for at returnere værdien NULL er også blevet tilføjet.
  • Ændringer i kommandolinjegrænsefladen:
    • Præcisionen af kommandoen «.timer» er øget til mikrosekunder;
    • I formateringsindstillingerne «box» og «column» er der blevet tilføjet understøttelse af tegn med dobbelt bredde;
    • Kommandoen «.imposter» kan nu levere imposter-tabeller i skrivebeskyttet tilstand (giver adgang til data i indekset som om det var en tabel), der fungerer med VACUUM-operationen og ikke kræver, at flaget «—unsafe-testing» aktiveres;
    • Til sqlite-værktøjet og kommandoen «.open» er der tilføjet muligheden «—ifexists».
    • Den maksimale bredde af en række, der angives ved hjælp af kommandoen «.width», er begrænset til 30000 tegn.
  • Der er blevet gennemført ydeevneoptimeringer:
    • CPU-belastningen er reduceret ved at låse transaktioner, der er begrænset til læseadgang;
    • Forbedret opdagelse af sammenføjningsoperationer (JOIN), der ikke returnerer rækker, fordi en eller flere tabeller ikke indeholder rækker;
    • Udførelse af skalarunder-spørgsmål, der ikke påvirker resultatet, er udelukket;
    • Ydeevnen for vinduesfunktioner i forespørgsler med udtrykket «BETWEEN 😡 FOLLOWING AND :y FOLLOWING» og et meget stort værdi for «:y» er accelereret.
  • Pragmaen «PRAGMA wal_checkpoint=NOOP» og API-funktionen sqlite3_wal_checkpoint() er tilføjet til at logge ændringer i WAL-loggen.
  • I API'et er der tilføjet funktioner sqlite3_set_errmsg() og sqlite3_db_status64().
  • I JavaScript/WASM-versionen af SQLite er der tilføjet støtte til bygning i WebAssembly-præsentationen med 64-bit pekere.
  • Øget modstandsdygtighed over for databasedefekter i applikationer, der fjerner POSIX-låse via close()-kald.
  • Forbedret support til VxWorks-platformen.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster