1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-04 04:42:17 +03:00

1674 Commits

Author SHA1 Message Date
drh
2dcc9aa2a8 Add the sqliteBtreePrevious() routine to the BTree module API. This is
in anticipation of implementing reverse order searching of a table. (CVS 794)

FossilOrigin-Name: 0ad1d93879bee0d34b122591c025192a51b8490f
2002-12-04 13:40:25 +00:00
drh
da47d7748f Change to the pager to avoid opening journal files unnecessarily. This can
sometimes results in a significant speed improvement. (CVS 791)

FossilOrigin-Name: fa5c042585c601449ede7319d0c5993cd8ba75a4
2002-12-02 04:25:19 +00:00
drh
f74b8d9b89 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)

FossilOrigin-Name: 8c2a0836980341faa479cfe6c716409e6057367d
2002-09-01 23:20:45 +00:00
drh
cb48588297 Fix for ticket #135: Remove unused variables from three files. (CVS 719)
FossilOrigin-Name: 8cf17f2a24ee9bd5d1ea66484922819626c412dd
2002-08-15 13:50:48 +00:00
drh
74587e5567 Updates prior to release 2.6.3. (CVS 706)
FossilOrigin-Name: 34c4149eea7a48927e36867f4e25ff7fac40c66e
2002-08-13 00:01:16 +00:00
drh
0d316a40cc Fix for ticket #9: Add the ability to read little-endian database files
from a big-endian machine and vice versa. (CVS 704)

FossilOrigin-Name: ce4b943bf68c160445a58ffccfbabbbd30d9829b
2002-08-11 20:10:47 +00:00
drh
199e3cf1b6 Change the name of variable "near" to "nearby" since MSVC mistakenly belieaves
that "near" is a keyword. (CVS 685)

FossilOrigin-Name: 9761a2a0fbfd3e98f719a813bcc544950968aef2
2002-07-18 11:01:47 +00:00
drh
bea00b9a2b In the BTree subsystem, when using pages from the freelist, attempt to select
pages close to related pages in order to keep data structures near each other
in the database file.  This improves access speed in some circumstances. (CVS 667)

FossilOrigin-Name: fd7e41f0eed80fb1c7e18eb84834ec3cea74a649
2002-07-08 10:59:50 +00:00
drh
6b30867ff6 Make the BTree balance() routine a little faster by reusing database
pages locally rather than freeing and reallocating them. (CVS 666)

FossilOrigin-Name: 3c2dea4310af491d6cb09856d4bc5236d6dc44ac
2002-07-08 02:16:37 +00:00
drh
193a6b4142 More rollback problems: Fix two more errors introduced by checking (410) that
can cause database corruption after a ROLLBACK.  Also add new tests to make
sure everything is working this time. (CVS 663)

FossilOrigin-Name: f6e24d5ccbcfcf5863ffbd65860dafa2f5663e99
2002-07-07 16:52:46 +00:00
drh
0de8c11292 Prepare for the 2.5.5 release. (CVS 661)
FossilOrigin-Name: 00f83c2576f4a9689720d344788f66219c1f6827
2002-07-06 16:32:14 +00:00
drh
7aa128dbc5 Fix for ticket #76: Fix a database corruption that might occur when
dropping tables or indices. (CVS 635)

FossilOrigin-Name: 7936b0325024c81ed8d4bab192d7350d045ec999
2002-06-21 13:09:16 +00:00
drh
5df72a5ad6 Fix for ticket #62: Do not report an SQLITE_READONLY error until the application
actually tries to write data into a readonly file.  It is OK to start a
transaction on a read-only file, and doing so will get you a read lock.  This
change allows TEMP tables to be read/write even though the main database is
readonly. (CVS 607)

FossilOrigin-Name: 9ef795d1d756a404d2123ebc19df1985b19c9888
2002-06-06 23:16:05 +00:00
drh
9adf9ac4e4 Remove all tabs from the beginning of source code lines. Replace tabs with
the appropriate number of spaces. (CVS 565)

FossilOrigin-Name: 690f9a163173c4c7af7e8e92e942cee4184c7974
2002-05-15 11:44:13 +00:00
drh
cd61c2816f Added the default_cache_size and default_synchronous pragmas. Added additional
tests for pragmas.  Added a new speedtest script. (CVS 421)

FossilOrigin-Name: 161c0c5f5db66815e4345c9b5f7a600c03a67475
2002-03-06 22:01:34 +00:00
drh
4b845d7ef4 Change the pager locking mechanism so that we don't have to write page 1
to the journal and to the database unless it actually changes. (CVS 419)

FossilOrigin-Name: 480eef1a3a4f049bc0d0cbee32dc8a8d138597c6
2002-03-05 12:41:19 +00:00
drh
4ff6dfa7de More bugs fixed for views. (CVS 416)
FossilOrigin-Name: 813077623087ffc6cd506f57cf6d1e3d9239f806
2002-03-03 23:06:00 +00:00
drh
30e58750c1 Pager optimization: do not write or journal free pages. This results in
a 2x performance gain for large INSERTs and a 5x performance gain for
large DELETEs. (CVS 410)

FossilOrigin-Name: cf1ebcfb741786f84a596c406f4c492f68cbe881
2002-03-02 20:41:57 +00:00
drh
f9ffac96a7 Change the btree node balancers to sort nodes into accending order. This
improves insert and delete speed by 25%. (CVS 409)

FossilOrigin-Name: abbb999d4fc3fe142567b6ede5e625e7bf0da714
2002-03-02 19:00:31 +00:00
drh
77c679c096 Fix a comment. (CVS 384)
FossilOrigin-Name: 953928537c350e6c9df157553114c6d9d44712d5
2002-02-19 22:43:58 +00:00
drh
9562b55115 Optimize simple min() and max() queries. (CVS 382)
FossilOrigin-Name: cc5abfe392bdb8c3ed00e0610bc2b41851bfc9d7
2002-02-19 15:00:07 +00:00
drh
aaab5725db Change the name of the sanity_check PRAGMA to "integrity_check" and make
it available on all compiles. (CVS 381)

FossilOrigin-Name: c6e9048e66c8d8e2d5f6c62aa724eef3e9d9f572
2002-02-19 13:39:21 +00:00
drh
8c87e6e0ff Reenable testing code even if NDEBUG is defined. (CVS 367)
FossilOrigin-Name: 0090c279d83ee355fbac8a484401d29bfa50b0dc
2002-02-03 19:15:02 +00:00
drh
24e97df9c7 Fix a serious bug in INSERT when the source is a SELECT. (CVS 366)
FossilOrigin-Name: 20ea737536700b016385c70105a2af8b2bffce2b
2002-02-03 19:06:02 +00:00
drh
1bffb9c84f Put in PRAGMA SANITY_CHECK in place of VACUUM. (CVS 365)
FossilOrigin-Name: 7c65029e5bf26eb640aef529a7421cd0d6ffd1a9
2002-02-03 17:37:36 +00:00
drh
1dd397f091 The VACUUM command now does a database sanity check. (CVS 364)
FossilOrigin-Name: 95d1f8389dd5e168bdf0290169662296b6a0f6d9
2002-02-03 03:34:07 +00:00
drh
0d65dc0e90 Five-algorithm conflict resolution appears to be working. (CVS 363)
FossilOrigin-Name: 0115518f8e4591123582e3d2bb67282111ebcf60
2002-02-03 00:56:09 +00:00
drh
663fc63a77 Get the ABORT conflict resolution algorithm working. (CVS 362)
FossilOrigin-Name: 9be4d4c6f12056782966396dca0b8e2d384d0cf2
2002-02-02 18:49:19 +00:00
drh
c6b52df32d An attempt to delete a single row using a WHERE clause that specifies
the rowid would result in an error if the rowid did not exist.  This
problem has been resolved. (CVS 338)

FossilOrigin-Name: 011be9a9d2632d261489005d97c69b0a0bc5a108
2002-01-04 03:09:29 +00:00
drh
6446c4dc67 Comment and documentation changes. (CVS 331)
FossilOrigin-Name: e8595579a5218aa3f344f967a23ac52ea89daca1
2001-12-15 14:22:18 +00:00
drh
0ce92edd57 Fix a bug in the sqliteBtreeFirst() function which was causing the first
row of a table to be repeated during a scan. (CVS 328)

FossilOrigin-Name: 1404ac076b2155778b6b21546b30df6f45ea7ba7
2001-12-15 02:47:28 +00:00
drh
a7fcb05988 Fix a race condition in the locking code that would sometimes cause
SQLITE_PROTOCOL or SQLITE_CORRUPT to be returned when SQLITE_BUSY should
have been returned. (CVS 326)

FossilOrigin-Name: b0d218876442187af08161d989e6887b1cb4130c
2001-12-14 15:09:55 +00:00
drh
b8ca307e7b Bug fix: sqlite_exec() would sometimes return SQLITE_PROTOCOL when it
should have returned SQLITE_BUSY.  There was also a deadlock that the
previous bug was masking. (CVS 322)

FossilOrigin-Name: 585ed5ebf1c1afc8ae1d569b121208018d8ecd49
2001-12-05 00:21:20 +00:00
drh
f5bf0a78be Fix a bug in DROP TABLE that could cause SQLITE_MASTER table corruption.
The root problem was that the sequence of BTree operations (Delete, Next)
would not always leave the cursor pointing at the first entry after the
entry that was deleted.  A consequence of this error was that a DROP TABLE
on a table with indices would not always remove every index associated
with that table from the SQLITE_MASTER table.  Subsequent attempts to
open the database will fail when the index for the missing table was
parsed.  Changes have also been made to ignore extra indices in the
SQLITE_MASTER table so that a database previously corrupted by this bug
is once again readable. (CVS 316)

FossilOrigin-Name: 8a984667113564f2bac7412165b6ff8b7e3e8f70
2001-11-23 00:24:12 +00:00
drh
5a2c2c20af Attempting to add support for 64-bit platforms. (CVS 314)
FossilOrigin-Name: 03673adbfe0c8a92d79f86ddf1136736594208ad
2001-11-21 02:21:11 +00:00
drh
58a11680d1 Comment changes (CVS 308)
FossilOrigin-Name: 2d2ad264aad6fbdcef586e73d750e3fde842252f
2001-11-10 13:51:08 +00:00
drh
8721ce4ae7 Incremental update. We are in the middle of modifying the index system
to support range queries without doing a complete table scan. (CVS 303)

FossilOrigin-Name: e6ca23fa4569bc33065bf57ce7ce6132cd6a9de0
2001-11-07 14:22:00 +00:00
drh
80ff32f5be Increase maximum row size to 1MB. (CVS 300)
FossilOrigin-Name: 7dd58fad398253608f55867cf1c7749eef005657
2001-11-04 18:32:46 +00:00
drh
18b81e5a93 Comment changes only. (CVS 296)
FossilOrigin-Name: b2cb118fb7c6713684d32a48a7ba8ffffe596687
2001-11-01 13:52:52 +00:00
drh
6d4abfbee5 More changes for 2.0.7. (CVS 293)
FossilOrigin-Name: f8328a5f11801c5124f9a8dace22df3c1cfb2191
2001-10-22 02:58:08 +00:00
drh
1bee3d7b43 Added support for the COUNT_CHANGES pragma in order to help out the
ODBC driver.  Fixed a but on count(*) when applied to empty tables. (CVS 289)

FossilOrigin-Name: 747bf1b30b74cfd0e9c27e7c0bc5172637f35520
2001-10-15 00:44:35 +00:00
drh
382c0247c7 Adding table column query capability to support ODBC. (CVS 278)
FossilOrigin-Name: b63b3f3684a3d584ef99f54cde76b6c483bbfef7
2001-10-06 16:33:02 +00:00
drh
100569d862 Remove C++ comments from btree.c. (CVS 277)
FossilOrigin-Name: 4b7710e2daadffb716bd88f3a213f94ffbb750ef
2001-10-02 13:01:48 +00:00
drh
717e640294 Added basic support for enforcement of UNIQUE on indices and primary
keys.  Support for addition constraints is to follow. (CVS 267)

FossilOrigin-Name: 34c42967f3d52dfb65d9f31db4f6995d098ec1f7
2001-09-27 03:22:32 +00:00
drh
ecdc7530dd Fixes to the locking and rollback behavior. (CVS 261)
FossilOrigin-Name: 337b3d3b2a903328d9744c111979909a284b8348
2001-09-23 02:35:53 +00:00
drh
b19a2bc603 Disclaimed copyright. Preparing for release 2.0. (CVS 250)
FossilOrigin-Name: 4e926efe2b59adfec4086eb1d2ba830238facb4c
2001-09-16 00:13:26 +00:00
drh
092d0350d5 Limit the total data in a single row to 2^16-1 bytes. (CVS 248)
FossilOrigin-Name: 8fdec4d8b6043471f21235bc8918c9a8d838f508
2001-09-15 13:15:12 +00:00
drh
f57b14a657 Added a PRAGMA statement. Took out the special comment parsing. (CVS 245)
FossilOrigin-Name: 5e3724603e6f52bb74deb1c62e6e8f323d7b64b7
2001-09-14 18:54:08 +00:00
drh
a1b351af54 Bug fixes and speed improvements. Delete is still slow. (CVS 244)
FossilOrigin-Name: 7da856cd94d2572070e40762e5bc477679e60042
2001-09-14 16:42:12 +00:00
drh
3fc190cc3f All tests now pass. But there are still issues. For example, inserts
are way too slow.  And additional tests are needed for new features. (CVS 243)

FossilOrigin-Name: e7b65e37fd88c4d69c89cfe73ab345b8b645ada6
2001-09-14 03:24:23 +00:00