O SQLite, a engine SQL baseada em C que é embutida em várias aplicações, foi atualizada para a versão 3.7.17 e suporta memory-mapped I/O, o que poderia dobrar o desempenho e usar menos RAM. A nova funcionalidade adiciona métodos xFetch() e xUnfetch(), que são automaticamente chamados se o memory-mapped I/O é ativado, para mapear dados na memória.
Os desenvolvedores destacam que há algumas desvantagens na técnica, que requer de os codificadores usem as funções que sejam mais robustas no modo como elas lidam com ponteiros e erros, e é possível não ver melhoria de desempenho em alguns casos. Então, por padrão, o memory-mapped I/O fica desativado. Programadores interessados em explorar o recurso devem consultar a documentação.
Outras melhorias incluem a adição de uma função para string globbing, relatórios de rollback e uso arriscado de bases sem ligamentos ou aliases no log de erros e um novo testes harness, para verificar como múltiplos processos manipulam o acesso a uma base ao mesmo tempo. O SQLite 3.7.17 também traz aprimoramentos para o query planner quando ele lida com joins.
Também há suporte para armazenamento de uma Application ID no header do banco de dados, de modo que os aplicativos possam determinar se o banco de dados é para eles. Ele também permite que o comando de arquivo identifique a que um aplicativo de um banco de dados pertence ao consultar um arquivo estendido magic.txt.
Outras mudanças são incluídas na nova versão, incluindo várias correções de bugs, como uma para um bug de corrupção de banco de dados.
A nova versão é recomendada para todos os usuários do SQLite e pode ser baixada como fonte ou como binários para Linux, Mac OS X, Windows, Windows Phone 8 e Windows RT.
Com informações de The H




