drh
afc8b7f0c1
Enable the use of shared cache for an in-memory database, so that separate
...
database connections can share the same in-memory database.
FossilOrigin-Name: 4590e433f2a595bb80fb061024b0a3d2ca25b7b2
2012-05-26 18:06:38 +00:00
dan
1235bb1815
Modify the integrity-check code to reduce the size of the large allocation from 4 bytes to 1 bit for each page in the database file.
...
FossilOrigin-Name: fa3a498dfe9ed59c30da5eaa0d7cad167fd4e393
2012-04-03 17:43:28 +00:00
drh
d60f4f4c95
When an incremental blob cursor is invalidated (occurs when an SQL statement modifies or deletes the row the blob cursor points to) release all page references held by the cursor. Otherwise, the presence of these references may cause other code in btree.c to incorrectly infer that the database is corrupt.
...
FossilOrigin-Name: 341b703ce16361a64ed8bba64ff46792132c0b56
2012-03-23 14:23:52 +00:00
drh
0f198a7409
Change the ROLLBACK command so that pending statements to not block it. The
...
pending statements instead return SQLITE_ABORT upon next access. Note: This
causes separate shared-cache connections in read_uncommitted mode to abort as
well.
FossilOrigin-Name: 9b66c79e054c8a109d1ee8d35fed1c42814c330d
2012-02-13 16:43:16 +00:00
drh
2cbd78b70e
Reduce the size of the MemPage object by about 32 bytes. Other structure
...
size optimizations.
FossilOrigin-Name: 21695c3476804477cb378b5a643196380e7e2281
2012-02-02 19:37:18 +00:00
drh
33f111dc72
Remove the undocumented PRAGMA omit_readlock hack.
...
FossilOrigin-Name: 96900c47e4fc6ed55cefc10d55d3d8d16bcb1d31
2012-01-17 15:29:14 +00:00
dan
6c2688c8d4
Fix typos in a testcase() macro introduced by the previous commit.
...
FossilOrigin-Name: 0467742fd6ef33dfe4df66e5046f075fe8e0260d
2012-01-12 15:05:03 +00:00
dan
bb246c4da0
Remove some assert() statements that can fail with corrupt databases.
...
FossilOrigin-Name: 7654ae71bd26ae5d713935624d2b6cb8d2e4633f
2012-01-12 14:25:55 +00:00
mistachkin
0547e2ff7b
Fix harmless compiler warning seen with MSVC.
...
FossilOrigin-Name: 9612bcd648c7654050ddb2f955a28cbc527a8c2e
2012-01-08 00:54:02 +00:00
drh
c91663499e
Combine various boolean variables in the BtShared structure into a single
...
boolean vector. Also make performance improvement simplifications to
sqlite3BtreeMovetoUnpacked().
FossilOrigin-Name: 119493318e0ad4c2858fe1484b0d71669bd81531
2012-01-05 23:32:06 +00:00
drh
2f32fbae31
Remove an incorrect assert() in btree.c.
...
FossilOrigin-Name: c1691d998a03fee3bef137ccf2e8ca45acac2df4
2012-01-02 16:38:57 +00:00
dan
27d47fbe6e
Avoid 32-bit overflow when calculating the byte offset of an overflow page in SQLITE_DIRECT_OVERFLOW_READ code. Fix for [ac0ff496b7].
...
FossilOrigin-Name: c5256b59ad70104c1e181b9f49d1d712cf4cc9f6
2011-12-21 17:00:16 +00:00
drh
070ad6b6fe
Restore the test for sqlite3OsFullPathname() failure that was mistakenly
...
removed when [ceee03c79a] was backed out by [69ec53fc1c].
FossilOrigin-Name: 4d3cf9e1d8ac356db5a708913f614e42a6a56b94
2011-11-17 11:43:19 +00:00
drh
3def2357e6
Make sure a corrupt index does not cause a buffer overread in
...
sqlite3VdbeRecordCompare().
FossilOrigin-Name: 471cf0d8e7857110e525e029c2d535cb518dba6a
2011-11-11 00:27:15 +00:00
drh
30ddce6ff4
Added the tool/warnings-clang.sh script. Changes so that there are no
...
warnings with either gcc or clang even including FTS4 and RTREE and
both with and without SQLITE_THREADSAFE=0.
FossilOrigin-Name: 39408702a989f907261c298bf0947f3e68bd10fe
2011-10-15 00:16:30 +00:00
drh
b07028f71c
Add assert() statements and eliminate needless variable assignments in order
...
to get the clang scan-build utility to report zero problems against the
SQLite core. Clang's static analysis did find one real problem - but it was
in the command-line shell, not in the SQLite core.
FossilOrigin-Name: 60fee9574b0125705787e33c16f116cf188c8323
2011-10-14 21:49:18 +00:00
drh
8a575d9aa9
Clarify a comment and fix a code formatting issue in btree.c.
...
FossilOrigin-Name: 4f1a558d0013fbf3fe00bdf5883e61a1f3779831
2011-10-12 17:00:28 +00:00
dan
f4ba109356
Add the SQLITE_DIRECT_OVERFLOW_READ compile time option.
...
FossilOrigin-Name: 2ab14a846727857175eac7961b7338c4d3b417ca
2011-10-08 14:57:07 +00:00
mistachkin
0fe5f95c7f
Remove 'const' from a variable that might actually be written when an OOM error occurs. Also, fix a couple MSVC/Win32 compiler warnings.
...
FossilOrigin-Name: 3035dc1c7398791d550f4c02774ef7f961b4bb02
2011-09-14 18:19:08 +00:00
dan
42acb3e597
Fix a minor performance regression in btreeMoveto().
...
FossilOrigin-Name: d0712dfb24867a807c9cddcc12bd0aebe1d3e085
2011-09-05 20:16:38 +00:00
dan
03e9cfc223
Refactor the sqlite3VdbeRecordUnpack() interface to better accommodate the vdbesort.c module.
...
FossilOrigin-Name: f115b2303509c678dbe83b2fa3d9c40d82882813
2011-09-05 14:20:27 +00:00
drh
34163c6831
Remove some dead code. Fix a faulty assert(). Improve some variable names.
...
FossilOrigin-Name: a9a64592cf88580cb254fb0aac65a2f2085976ec
2011-09-02 21:42:33 +00:00
dan
7733a4db4b
Combine two malloc calls in vdbesort.c.
...
FossilOrigin-Name: cf48ad8353e28339d00f448bb729e10a7f2aad72
2011-09-02 18:03:16 +00:00
dan
5134d1357e
Instead of a temporary b-tree, use a linked-list and merge-sort to sort records in main memory in vdbesort.c.
...
FossilOrigin-Name: 7769fb988d9be0f2d8129aaac19620ac88f9b4a6
2011-09-02 10:31:11 +00:00
drh
e42a9b431b
Add checks to make sure cells in corrupt database files
...
do not overflow a page when doing autovacuum.
Problem detected by valgrind.
FossilOrigin-Name: d0b347b412376d22e9f0770ac083dafb5e480dd0
2011-08-31 13:27:19 +00:00
dan
a205a486d2
Experimental changes to improve the performance of OP_Next.
...
FossilOrigin-Name: 1a249845251199c00817893add300a1a654b4df9
2011-08-27 18:48:57 +00:00
drh
2a5d9908f9
Create a new pager type, PAGER_SORTER, for use in the external merge sort.
...
Such pagers are always held in memory but do report when they are under
memory pressure by calling pagerStress.
FossilOrigin-Name: c71d73201d950355862dd8d5de142c9673888755
2011-08-26 00:34:45 +00:00
dan
06199d84e8
When copying a rollback mode database over a WAL database using the backup API, leave the destination database in WAL mode (instead of switching it to rollback mode). Fix for [af95b8c609].
...
FossilOrigin-Name: 35e6ac18e3d030095da57fff87a288939e9be93f
2011-08-23 11:47:06 +00:00
dan
c6e734554f
Change to using packed-memory-arrays instead of b-trees when performing an offline merge-sort for CREATE INDEX. This makes it easier to control the number of disc seeks required when merging.
...
FossilOrigin-Name: a4770d079c1b236eb54751e75a44cccc997c6b93
2011-08-04 12:14:04 +00:00
drh
2ce71b4e7a
Add assert() statements to verify that u16 pointers associated with
...
the enhancement in [897f56a158] are always 2-byte aligned.
FossilOrigin-Name: 98ccfa930e8e5f10808a518e3e22e85e8a8a65c2
2011-06-06 13:38:11 +00:00
drh
afb9817f8c
Performance improvement to the btree search routine.
...
FossilOrigin-Name: 65db822f200bafe9abe59b33b17b2c643c17c5e8
2011-06-04 01:43:53 +00:00
drh
61d2fe955c
Performance improvements on memory copies inside of btree by moving 2 bytes
...
at a time instead of just 1 byte at a time.
FossilOrigin-Name: 897f56a158ebe62758c9998e4941ae046c75fb99
2011-06-03 23:28:33 +00:00
drh
68f2a57698
Factor an "if" out of a loop in balance_nonroot() for about a 1% performance
...
increase.
FossilOrigin-Name: 1bd72d0c616e20fdb395c72ecd96579090ae26cb
2011-06-03 17:50:49 +00:00
drh
c3f1d5f095
Minor performance improvements.
...
FossilOrigin-Name: f9950c6af1813f724dacd7455f472acec921b06a
2011-05-30 23:42:16 +00:00
drh
fc24373999
Avoid exceeding array bounds when reading a corrupt database file in
...
autovacuum mode. Fixes a problem discovered by John Regehr and Peng Li
using a customized clang compiler.
FossilOrigin-Name: f7c525f5fc31e909721df2b1e66fc62dfb105718
2011-05-17 15:21:56 +00:00
dan
3a6d8aec2a
Have the ATTACH command do URI interpretation in the same way as sqlite3_open() and sqlite3_open_v2() do.
...
FossilOrigin-Name: 68240e75e87a54cde93352b0ec364d34365a8170
2011-04-23 15:54:54 +00:00
drh
93b4fc78cf
When searching a list of freelist trunk pages looking for a specific page
...
to allocate, avoid unnecessary journalling of the unchanged trunk pages towards
the start of the list.
FossilOrigin-Name: d03d63d77ed144ac2c02a0245c4b4b070b79c88e
2011-04-07 14:47:01 +00:00
dan
bb2b441867
Changes to support building with various SQLITE_OMIT_XXX options defined.
...
FossilOrigin-Name: 2039ed952a02bdcd4fc6d2e20572c4632084dcdb
2011-04-06 17:54:31 +00:00
drh
fcd71b6010
Suppress many harmless compiler warnings, mostly signed/unsigned comparisons
...
within asserts or unused parameters in extensions.
FossilOrigin-Name: 3eeb0ff78d04891b5fd1a3d99a9fb8cfbed77a81
2011-04-05 22:08:24 +00:00
drh
4fa7d7c0df
Fix typos in comments. No changes to code.
...
FossilOrigin-Name: 28c5f12e98655d5c6167b13e8a15085eca43dd5b
2011-04-03 02:41:00 +00:00
dan
60939d0ade
Fix a problem whereby following an IO error in CommitPhaseTwo() of a multi-file transaction the b-tree layer could be left in TRANS_WRITE state, causing problems later on.
...
FossilOrigin-Name: dbe569a099c2855480e35c0cc4d9332821ad80da
2011-03-29 15:40:55 +00:00
drh
d50ffc416f
Fix additional cases of possible signed integer overflow, especially with
...
regard to negation.
FossilOrigin-Name: 2d5800bd8cfc7d7f5578a71b1aeaa74b2ec4b372
2011-03-08 02:38:28 +00:00
drh
c126e63e4f
Remove dead code identified by the clang static analyzer.
...
FossilOrigin-Name: 01a79d5a7af48fb7e50291c0c7c6283d3fb359d0
2011-03-06 21:28:32 +00:00
dan
ecac670a8b
Do not report corruption if the the db size header field is greater than the file size on disk unless the two change-counter header fields are identical. Fix for ticket [89b8c9ac54].
...
FossilOrigin-Name: 00c4596f0b270120848ab8d06dcdec7813a9a315
2011-02-09 18:19:20 +00:00
drh
87fa53ee8d
Merge in the blocking-checkpoint enhancement, including the new
...
sqlite3_wal_checkpoint_v2() interface and the
PRAGMA wal_checkpoint(full) statement.
FossilOrigin-Name: bac7342c368a7c4f5f2878e08d9581dcbf57dd58
2011-02-02 16:34:08 +00:00
drh
41692e9d7c
Shave a few cycles so that performance is better than 3.7.4 in speed tests.
...
FossilOrigin-Name: e14649301138b6840e24a4bbd2cf5205c0f72409
2011-01-25 04:34:51 +00:00
drh
efd95a7aca
Do not raise an SQLITE_CORRUPT error in Recoverymode
...
if the database size in the header is larger than the physical file
size. This facilitates recovery of a database in which the database size
field has been corrupted.
FossilOrigin-Name: 114640d920e16c85de90b19d53c485135875de5b
2011-01-12 17:56:26 +00:00
drh
b0a7c9cd2f
Fix the build so that it once again works with SQLITE_OMIT_SHARED_CACHE
...
and SQLITE_OMIT_AUTOVACUUM.
FossilOrigin-Name: fabcb6b95e1d4059d1e6c6183f65846f6cbd5749
2010-12-06 21:09:59 +00:00
drh
27f9aba18c
Merge the checkpoint_fullfsync pragma and the superlock demonstration into
...
the checkpoint-v2 experimental branch.
FossilOrigin-Name: ebf74015f09fe241c1c6902dc8954f2b59ab41ec
2010-11-19 18:51:31 +00:00
drh
c97d84638e
Add the checkpoint_fullfsync pragma which enables F_FULLFSYNC on checkpoint
...
operations only, not during ordinary commit fsyncs.
FossilOrigin-Name: a069867301de3ca2e1753bd4d2e426d27365be4c
2010-11-19 18:23:35 +00:00