Uscita del DBMS SQLite 3.51

È stato rilasciato SQLite 3.51, un database leggero presentato come libreria plug-in. Il codice SQLite è distribuito come dominio pubblico, ossia può essere utilizzato senza restrizioni e gratuitamente per qualsiasi scopo. Il supporto finanziario per gli sviluppatori di SQLite è fornito da un consorzio appositamente creato.

Principali modifiche:

  • Sono state aggiunte nuove funzioni JSON jsonb_each() e jsonb_tree(), che si differenziano dalle funzioni precedentemente disponibili json_each() e json_tree() in quanto restituiscono valori JSONB per dati di tipo array o oggetto.
  • Il codice delle estensioni carray e percentile è stato trasferito nel file di base «sqlite3.c» con codice integrato di SQLite. Per impostazione predefinita, queste estensioni sono disabilitate e richiedono specifiche di compilazione delle opzioni «-DSQLITE_ENABLE_CARRAY» e «-DSQLITE_ENABLE_PERCENTILE».
  • È stata migliorata l'interfaccia per l'utilizzo di SQLite negli script Tcl. È stato aggiunto l'opzione «-asdict» al comando «eval» per restituire le stringhe utilizzando il tipo «dict» invece di «array». È stata introdotta la possibilità di interrompere le funzioni utente per restituire un valore NULL.
  • Modifiche all'interfaccia della riga di comando:
    • La precisione del comando «.timer» è stata aumentata a microsecondi;
    • Nei modi di formattazione «box» e «column» è stato implementato il supporto per caratteri a larghezza doppia;
    • Il comando «.imposter» può ora fornire tabelle imposter in sola lettura (che permettono di accedere ai dati nell'indice come a una tabella), funzionando con l'operazione VACUUM e senza necessità di essere avviato con il flag «—unsafe-testing»;
    • Aggiunta l'opzione «—ifexists» all'utilità sqlite e al comando «.open».
    • La larghezza massima della riga impostata con il comando «.width» è limitata a 30000 caratteri.
  • Sono state apportate ottimizzazioni delle prestazioni:
    • Ridotto il carico sulla CPU durante l'impegno delle transazioni limitate all'accesso in sola lettura;
    • Migliorata la determinazione delle operazioni JOIN che non restituiscono righe a causa dell'assenza di righe in una o più tabelle;
    • Esclusa l'esecuzione di sottoquery scalari che non influiscono sul risultato;
    • Accelerata l'esecuzione delle funzioni di finestra nelle query con l'espressione «BETWEEN 😡 FOLLOWING AND :y FOLLOWING» e con un valore molto grande per «:y».
  • Aggiunta la pragma «PRAGMA wal_checkpoint=NOOP» e la funzione API sqlite3_wal_checkpoint() per registrare le modifiche nel log WAL.
  • Nell'API sono state aggiunte le funzioni sqlite3_set_errmsg() e sqlite3_db_status64().
  • Nella versione JavaScript/WASM di SQLite è stata implementata la supporto per la compilazione in WebAssembly con puntatori a 64 bit.
  • Aumentata la resistenza ai danni del Database nelle applicazioni che rilasciano i blocchi POSIX tramite la chiamata close().
  • Migliorato il supporto per la piattaforma VxWorks.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster