Subject: pkg/24660: databases/sqlite update to 2.8.12, billions of them bug fixed, lotta new features
To: None <>
From: None <,>
List: netbsd-bugs
Date: 03/04/2004 01:16:31
>Number:         24660
>Category:       pkg
>Synopsis:       databases/sqlite update to 2.8.12, billions of them bug fixed, lotta new features
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    pkg-manager
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Thu Mar 04 01:17:00 UTC 2004
>Release:        N/A
An Embeddable SQL Database Engine

This page was last modified on 2004/01/22 23:38:22 UTC
The latest SQLite version is 2.8.12 created on 2004/02/08 18:07:35 UTC

2004 February 8 (2.8.12)

Fix a bug that will might corrupt the rollback journal if a power failure or external program halt occurs in the middle of a COMMIT. The corrupt journal can lead to database corruption when it is rolled back.
Reduce the size and increase the speed of various modules, especially the virtual machine.
Allow "<expr> IN <table>" as a shorthand for "<expr> IN (SELECT * FROM <table>".
Optimizations to the sqlite_mprintf() routine.
Make sure the MIN() and MAX() optimizations work within subqueries.
2004 January 14 (2.8.11)

Fix a bug in how the IN operator handles NULLs in subqueries. The bug was introduced by the previous release.
2004 January 13 (2.8.10)

Fix a potential database corruption problem on Unix caused by the fact that all posix advisory locks are cleared whenever you close() a file. The work around it to embargo all close() calls while locks are outstanding.
Performance enhancements on some corner cases of COUNT(*).
Make sure the in-memory backend response sanely if malloc() fails.
Allow sqlite_exec() to be called from within user-defined SQL functions.
Improved accuracy of floating-point conversions using "long double".
Bug fixes in the experimental date/time functions.
2004 January 5 (2.8.9)

Fix a 32-bit integer overflow problem that could result in corrupt indices in a database if large negative numbers (less than -2147483648) were inserted into a indexed numeric column.
Fix a locking problem on multi-threaded Linux implementations.
Always use "." instead of "," as the decimal point even if the locale requests ",".
Added UTC to localtime conversions to the experimental date/time functions.
Bug fixes to date/time functions.
2003 December 17 (2.8.8)

Fix a critical bug introduced into 2.8.0 which could cause database corruption.
Fix a problem with 3-way joins that do not use indices
The VACUUM command now works with the non-callback API
Improvements to the "PRAGMA integrity_check" command
2003 December 4 (2.8.7)

Added experimental sqlite_bind() and sqlite_reset() APIs.
If the name of the database is an empty string, open a new database in a temporary file that is automatically deleted when the database is closed.
Performance enhancements in the lemon-generated parser
Experimental date/time functions revised.
Disallow temporary indices on permanent tables.
Documentation updates and typo fixes
Added experimental sqlite_progress_handler() callback API
Removed support for the Oracle8 outer join syntax.
Allow GLOB and LIKE operators to work as functions.
Other minor documentation and makefile changes and bug fixes.
2003 August 21 (2.8.6)

Moved the CVS repository to
Update the NULL-handling documentation.
Experimental date/time functions added.
Bug fix: correctly evaluate a view of a view without segfaulting.
Bug fix: prevent database corruption if you dropped a trigger that had the same name as a table.
Bug fix: allow a VACUUM (without segfaulting) on an empty database after setting the EMPTY_RESULT_CALLBACKS pragma.
Bug fix: if an integer value will not fit in a 32-bit int, store it in a double instead.
Bug fix: Make sure the journal file directory entry is committed to disk before writing the database file.


 * tested only on FreeBSD 4-STABLE
 * "os.h" patches are needed for FreeBSD 4-STABLE
 * mailing list has been told about patches 
   (sqlite author, drh, reads that list often)
 * you could mention SQLite Wiki in descr,
   it contains lots of useful information.

 * patches have been sponsored by mkpatches(1), so they may be 
   differently named, than originals in pkgsrc. No, I don't think I care
   about this, if we want to have easy-trackable patches, we should
   name them different way, than patch-??. If you insist - well, I 
   think I did my part of the job, do it yourself if you want. Note, 
   that in this case, you mainly track "+#include "os.h"", go for it ;)