2005 February 15 (2.8.16)
* Fix a bug that can lead to database corruption if there are two open connections
to the same database and one connection does a VACUUM and the second makes some
change to the database.
* Correctly handle quoted names in CREATE INDEX statements.
* Fix a naming conflict between sqlite.h and sqlite3.h.
* Avoid excess heap usage when copying expressions.
* Other minor bug fixes.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
changes:
Fix the min() and max() optimizer so that it works when the FROM clause
consists of a subquery.
Ignore extra whitespace at the end of of "." commands in the shell.
Bundle sqlite_encode_binary() and sqlite_decode_binary() with the library.
The TEMP_STORE and DEFAULT_TEMP_STORE pragmas now work.
Code changes to compile cleanly using OpenWatcom.
Fix VDBE stack overflow problems with INSTEAD OF triggers and NULLs in
IN operators.
Add the global variable sqlite_temp_directory which if set defines
the directory in which temporary files are stored.
sqlite_interrupt() plays well with VACUUM.
Other minor bug fixes.
FreeBSD 4 portability hint from Michal Pasternak.
Some of the changes since 2.8.5 include:
* Refactor parts of the code in order to make the code footprint
smaller. The code is now also a little bit faster.
* The built-in min() and max() functions now honor the difference
between NUMERIC and TEXT datatypes.
* New HH:MM:SS modifier to the built-in date/time functions.
* Add function prototypes for the database encryption API.
* Fix a bug that might corrupt the rollback journal if a power failure or
external program halt occurs in the middle of a COMMIT.
* Reduce the size and increase the speed of various modules.
* Fix a potential database corruption problem on Unix.
* 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.
* Fix a critical bug introduced in 2.8.0 which could cause database corruption.
* The VACUUM command now works with the non-callback API
* 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
* Documentation updates and typo fixes
* Removed support for the Oracle8 outer join syntax.
* Allow GLOB and LIKE operators to work as functions.
* Make sure the journal file directory entry is committed to disk before
writing the database file.
changes:
Make LIMIT work on a compound SELECT statement.
LIMIT 0 now shows no rows. Use LIMIT -1 to see all rows.
Correctly handle comparisons between an INTEGER PRIMARY KEY and a
floating point number.
Fix several important bugs in the new ATTACH and DETACH commands.
Updated the NULL-handling document.
Allow NULL arguments in sqlite_compile() and sqlite_step().
Many minor bug fixes
Enhanced the "PRAGMA integrity_check" command to verify indices.
Added authorization hooks for the new ATTACH and DETACH commands.
Many documentation updates
2003 June 4 (2.8.3)
- Fix a problem that will corrupt the indices on a table if you
do an INSERT OR REPLACE or an UPDATE OR REPLACE on a table that
contains an INTEGER PRIMARY KEY plus one or more indices.
- Add the ability for INSERT and UPDATE statements to refer to
the "rowid" (or "_rowid_" or "oid") columns.
- Other important bug fixes
2003 May 17 (2.8.2)
- Fix a problem that will corrupt the database file if you drop a
table from the main database that has a TEMP index.
2003 May 16 (2.8.1)
- Reactivated the VACUUM command that reclaims unused disk space
in a database file.
- Added the ATTACH and DETACH commands to allow interacting with
multiple database files at the same time.
- Added support for TEMP triggers and indices.
- Added support for in-memory databases.
- Removed the experimental sqlite_open_aux_file(). Its function
is subsumed in the new ATTACH command.
- The precedence order for ON CONFLICT clauses was changed so
that ON CONFLICT clauses on BEGIN statements have a higher
precedence than ON CONFLICT clauses on constraints.
- Many, many bug fixes and compatibility enhancements.
Lots of bug fixes in SQL parsing and supports more weildy SQL code like
using the right of an AS in athe column list of a SELECT as part of an
expression in the WHERE, ORDER BY, GROUP BY and/of HAVING clauses.
For a full report see the changelog on
http://www.hwaci.com/sw/sqlite/changes.html
1) locking problems due to a few race conditions
2) fixing a bug in `create temporary table' wich could contaminate the
main database file opened too
3) bug fix in b-tree subsystem that could sometimes cause the first row of
a table to be repeated during a database scan.
bugs removal, fixing the behaviour of comparison operators so that they are
consistent with the order of entries in an index, correct handling of
integers in SQL expressions that are larger than what can be represented by
the machine integer and locking protocol fixes.
The author also incorporated my suggestions after the messy LP64 patches I
made; its now a lot more clean allthough there are still a few warnings but
they are checked and OK.
and bugfixes including support for 16Mb rows. For a full change see the
website's changelog at http://www.hwaci.com/sw/sqlite/changes.html
The file format changed! so please dump the database in SQL with .dump in
the old version and import it later in the new version.
less invasive as posible without rewriting stuff.
The main problems were the assumption that a pointer and an int had the
same size. Also there were strange casts near calculations that were not
nessisary.
SQLite is a C library that implements an SQL database engine. Programs
that link with the SQLite library can have SQL database access without
running a separate RDBMS process. The distribution comes with a standalone
command-line access program (sqlite) that can be used to administer an
SQLite database and which serves as an example of how to use the SQLite
library.
SQLite is not a client library used to connect to a big database server.
SQLite is the server. The SQLite library reads and writes directly to and
from the database files on disk.