Take care not to modify the sqlite* pointer to sqlite_exec() if we suspect
that the pointer is stale - that it has previously been passed to
sqlite_close(). Possible fix for ticket #202. Prior to this fix, test
misuse-5.3 was causing a change to a buffer that had been previously free()-ed. (CVS 799)
check-in: f04547ed user: drh tags: trunk

Save the full pathname of the database file so that journalling still works
even if the user changes working directories after opening the databae.
Ticket #200. (CVS 798)
check-in: 1c58b4fc user: drh tags: trunk

Add the "space_used.tcl" script to the tools directory. This script is used
to measure how much disk space is used by each table and index of a database. (CVS 789)
check-in: 83b2c27a user: drh tags: trunk

Two optimizations to the pager: (1) Write dirty pages back to the database
file in order and (2) Keep a separate list of in-memory pages that are in
the checkpoint journal in order to speed a checkpoint commit. (CVS 783)
check-in: a6ef6657 user: drh tags: trunk

Add large file support to Windows. Change large file support for Unix so
that it compiles automatically - without requiring special options on the
compiler command line. (CVS 781)
check-in: 2008b56f user: drh tags: trunk

Add support for databases larger than 2GB under Unix. Must be compiled
with -D_FILE_OFFSET_BITS=64 and -D_LARGEFILE_SOURCE in order to work with
larger databases. (CVS 778)
check-in: a3f67fe9 user: drh tags: trunk

Bug fix: When multiple SQL statements were passed into a single sqlite_exec() call, execution speed would decrease for each statement executed because VDBE cursors were not being reused. Now the cursors are reused and execution time is linear. (CVS 754)
check-in: b0d27a37 user: drh tags: trunk

Modify the sqlite_encode_binary() routine to return the strlen() of the
encoded string. Also fix a bug that occurs when attempting to encode
a zero-length buffer. (CVS 751)
check-in: f12c3a25 user: drh tags: trunk

Rename all tests so that the first part of the test name corresponds to the
file that contains that test. This makes it much easier to find a particular
test after it fail. (CVS 749)
check-in: 6cb80ae1 user: drh tags: trunk

Modify the build process so that the VDBE opcode numbers and the table
that contains the opcode names are both automatically generated. This makes
it much easier to create new VDBE opcodes. (CVS 1727)
check-in: c4f0bb02 user: drh tags: trunk

Modify the build process so that the VDBE opcode numbers and the table
that contains the opcode names are both automatically generated. This makes
it much easier to create new VDBE opcodes. (CVS 746)
check-in: eb54d455 user: drh tags: trunk

Relax the locking requirements on BTree cursors. Any number of read and
write cursors can be open at the same time now, but a write cannot occur
as long as one or more read cursors are open. Before this change, one or more read cursors could be open on a table,
or a single write cursor, but not both. Both policies have the same
desirable effect: they prevent writes to a table while a sequential scan
of that table is underway. But the new policy is a little less restrictive.
Both policies prevent an UPDATE from occurring inside a SELECT (which is
what we want) but the new policy allows a SELECT to occur inside an
UPDATE. (CVS 739)
check-in: 8c2a0836 user: drh tags: trunk

If the database is locked when sqlite_open() is called, sqlite_exec() should
still honor the busy callback and should return an error message together
with the SQLITE_BUSY result code. (CVS 733)
check-in: 78a0229a user: drh tags: trunk

Fix for ticket #136: Added the OP_RenameCursor VDBE instruction and used it
to make cursor numbers right on nested subqueries. Also added OP_Gosub and
OP_Return but have not actually used them for anything yet. (CVS 727)
check-in: c602603e user: drh tags: trunk

This COLLATE keyword was not being parsed correctly inside CREATE TABLE
statements - it was being included as part of the datatype. This fixes
the problem. (CVS 722)
check-in: 39bd52d3 user: drh tags: trunk

Fix for ticket #110: return an error if trying to start a transaction within a
transaction or when attempting to commit or rollback outside of a transaction. (CVS 721)
check-in: df51cb16 user: drh tags: trunk