1
0
mirror of https://github.com/sqlite/sqlite.git synced 2026-10-26 21:59:27 +03:00
Commit Graph

7475 Commits

Author SHA1 Message Date
drh
1f5b467f13 Restore the size information in the BtShared structure when a transaction
rolls back.

FossilOrigin-Name: 802aeb30c9baf4059fa84f4693f290f80d3a4085
2010-04-01 02:22:19 +00:00
drh
a792dc5c4a Make sure an OOM error on sqlite3PagerPagecount() is detected and reported
out to the interface.

FossilOrigin-Name: 8aecf302a5aac66e43a8cc6c4e0d917f74e9e0de
2010-03-31 23:20:04 +00:00
drh
8d8626fe2b Report corruption if a database contains a reference that is out of range
according to the filesize-in-header database size.

FossilOrigin-Name: a91db0b1cd0b0fbadc5c8fe2eb8863629b411d87
2010-03-31 20:29:06 +00:00
drh
afc266a76a Clarification of the implementation of SQLITE_STMTSTATUS_FULLSCAN_STEP.
No logical code changes - just commenting and layout changes to improve
readability.

FossilOrigin-Name: 06b9ca32255572a699dc51f46f848d0bf01255e1
2010-03-31 17:47:44 +00:00
dan
67a6a40cf9 Clear the column cache before populating aggregate accumulator registers. Fix fo
r [883034dcb5].

FossilOrigin-Name: ffc23409c7fb45dc5a8722fad26e26d207bb3213
2010-03-31 15:02:56 +00:00
drh
d3d986d329 Documentation enhancements for the sqlite3_log() interface. No functional
changes to code.

FossilOrigin-Name: ba13a11108d7852c61f959cc8a5fc39c25202cae
2010-03-31 13:57:56 +00:00
drh
97b59a56d2 Increase test coverage following the introduction of the new
filesize-in-header logic.

FossilOrigin-Name: dbc2c3c0144d2c76aec04f80892302c532947dc8
2010-03-31 02:31:33 +00:00
drh
b1299158c7 Continuing refinements to the filesize-in-header enhancement.
FossilOrigin-Name: 79e22b95038c50b9b7f35e09262805ff6338b59b
2010-03-30 22:58:33 +00:00
drh
bf59283ba2 Add a NEVER macro around a test in btree.c that can not longer be true.
FossilOrigin-Name: c117f99236a009778bb7878da464918554391f0a
2010-03-30 15:51:12 +00:00
dan
7ba4597135 Do not crash when compiling an "INSERT INTO tbl DEFAULT VALUES" when tbl has either BEFORE or INSTEAD OF triggers attached to it. Ticket [f3162063fd].
FossilOrigin-Name: ca359a3e8048bd11605c41c4b48134c0343e543b
2010-03-30 12:40:32 +00:00
drh
d454214ddd Change an #if into an #ifdef.
FossilOrigin-Name: 371bab5d6534860ce908e52129c64a49946be33a
2010-03-30 11:57:01 +00:00
drh
25a80ad0b1 The btree layer now tracks when a database is empty at the start of a
transaction and rolls back to that state.

FossilOrigin-Name: 01ef6c1944507c188a83a434ff00e98ad767f744
2010-03-29 21:13:12 +00:00
drh
5e0ccc216d Fix issues with the io.test script. There is still a problem with a
ROLLBACK TO not working on an initially empty database files.  And much
more testing is needed.

FossilOrigin-Name: 09786e2a51817d572a01ae7f3621f03fd27fc363
2010-03-29 19:36:52 +00:00
drh
dd3cd977cc Experimental changes that cause SQLite to use bytes 28..31 of the database
header to determine the database size, rather than using the actual database
size.  This allows database space to be preallocated.

FossilOrigin-Name: b844ac6fcb72595a71e5c5283ec461309a87ba79
2010-03-27 17:12:36 +00:00
dan
c26c00495f Increase the estimated cost of using a virtual table as the outer loop of a join when there exists an ORDER BY clause that is not satisfied by the virtual table. Fix for [775b39dd3c].
FossilOrigin-Name: 9e075e70f0e2a1ad302d17150cd58f91669a97a6
2010-03-27 09:44:42 +00:00
shaneh
1141ae2463 Fix OOM error on ANALYZE with STAT2 enabled with zero-length data. Ticket [cbd054fa6b].
FossilOrigin-Name: c33b38b59f733494ca0bce3f59a669fe7ed76b9f
2010-03-26 01:54:33 +00:00
drh
280799b4ff Attempt to suppress a warning from Borland Code Guard.
FossilOrigin-Name: be278979917336e7186d7830876180154b5280ba
2010-03-24 11:55:08 +00:00
dan
bb23e7f91b After a rollback that writes or truncates the database file, sync the database file before invalidating the journal contents.
FossilOrigin-Name: b21b911f233842357af9ccc14525bbd48a38edb1
2010-03-22 17:13:53 +00:00
dan
98f0c3619f Change the formatting of the preprocessor macros surrounding the compileoption interface in sqlite.h.in. This is so the documentation produced by parsing this part of sqlite.h.in is formatted similarly to the docs for the deprecated interfaces (with the #ifndef visible on the webpage).
FossilOrigin-Name: 161958d11f2ef6ce4d7ba69afea03e0a6764cc1b
2010-03-22 04:32:13 +00:00
drh
f3609eeba7 Put an ALWAYS() around a condition in pcache.c that must always be true in
the current implementation.

FossilOrigin-Name: 88810cd091b33f2c56f842e32cafbac5d34d7412
2010-03-19 19:23:51 +00:00
drh
f92a4e35c5 Store the SQLite version number of the last writer in bits 96..99 of the header.
FossilOrigin-Name: 146d4f5d3459235d8b2d27a5d77beb7645f75185
2010-03-19 16:55:47 +00:00
drh
e9c2d34c5b Make sure the in-journal boolean vector is cleared and released when ending
a transaction.  This fixes an obscure problem with the previous check-in.

FossilOrigin-Name: 69d749d93d6565b848ce5c07f2738d144c6564bf
2010-03-19 16:52:53 +00:00
drh
ba726f4939 Do create, open, or initialize the rollback journal until something actually
needs to be written into the journal.  That way, expensive filesystem
operations are avoided if the transaction ends up being a no-op.

FossilOrigin-Name: b78e58ae1570ab4d66a69db445a752c6456038a0
2010-03-19 15:48:13 +00:00
drh
9396a41e6e Fix FTS3 so that it does not run illegal SQL and cause a spurious log
message.  Ticket [42d45a693e6].

FossilOrigin-Name: f186b6a61909be1d65b76a6fbaa42f57bbd0d1e5
2010-03-15 19:27:55 +00:00
drh
ed37690afd Store the database size in pages in bytes 28..31 of the header. Currently
this is for forensic use only, but it might be used in the future.

FossilOrigin-Name: 59f75bba028e1107ed41d447c27aef31a6656b68
2010-03-13 02:15:49 +00:00
drh
107b56e86d Add assert()s to mem2.c (activated by SQLITE_MEMDEBUG) which verify that
memory alloctions that might have come from lookaside are always freed
using a lookaside-aware free routine.

FossilOrigin-Name: c2af2164cf7b279ebb3e08201561348be6e765df
2010-03-12 16:32:53 +00:00
drh
63da089314 Add the SQLITE_DBSTATUS_CACHE_SIZE verb for sqlite3_db_status(). The
highwater mark does not yet work on this verb.

FossilOrigin-Name: 418c6d8113bc337556b0d47acfd6a7d865d1121f
2010-03-10 21:42:07 +00:00
drh
9f8da32662 Remove the "experimental" markings on most interfaces that have been around
for multiple releases.

FossilOrigin-Name: d670e8bd51c794e2d7ea365ca553c2b74cf5a3a3
2010-03-10 20:06:37 +00:00
drh
c92271c549 Fix typo in a comment in the sqliteInt.h. No changes to code.
FossilOrigin-Name: 1716821ddb992fd6d1330604d4f59586bf056b00
2010-03-10 14:06:35 +00:00
shaneh
1da207e676 Minor changes to silence compiler warnings on various MSVC builds.
FossilOrigin-Name: 115c978b6bbc110119a1b2f178cc30b33aaa27ef
2010-03-09 14:41:12 +00:00
drh
0b2f8ba965 Check-in [87a6a9970b] did not completely disable FTS4. This check-in aims
to finish the job.

FossilOrigin-Name: 0259b6299e435b3c3a7ca33df8c38c8a5dc84a61
2010-03-09 13:02:09 +00:00
drh
3517324ddc Add NEVER and assert macros and explanatory comments for unreachable
conditions.

FossilOrigin-Name: ffb6596e6c80e284c1542b03f2c7bbfce0bd87d9
2010-03-08 21:40:13 +00:00
dan
3b4aae569a Correct an assert() in mem2.c (test code only).
FossilOrigin-Name: 1a88e31b03e090732243a70bec082b32ecf77c43
2010-03-08 15:17:53 +00:00
drh
29391c5b49 Make sure the dbFileVers field in the Pager object is properly initialized
even if there is an I/O error while reading its content off of disk.

FossilOrigin-Name: 81ff698f62c8133818a3db1997ae7427705da23f
2010-03-05 20:17:45 +00:00
dan
5fea90762a Change a condition in sqlite3VdbeMemShallowCopy() to avoid accessing an unitialized variable (doing so was not dangerous, but caused a valgrind error).
FossilOrigin-Name: 4793c381c6ff4e4d25433298be30028721a9cb67
2010-03-05 18:46:12 +00:00
dan
b7dca7d733 Modify the vdbe so that the comparison operator opcodes do not modify the data type of operands. Fix for [aa92c76cd4].
FossilOrigin-Name: 8858042fa1449516a2c7dbb991dca3eb6c5794cb
2010-03-05 16:32:12 +00:00
drh
f8b4d8c682 Adjustments to #ifdefs so that the #include of <sys/mount.h> is not included
twice, because that confuses the amalgamation builder.

FossilOrigin-Name: 27413fc8dd52b754b4be9344a66bb9e0d752d48e
2010-03-05 13:53:22 +00:00
drh
84a2bf67d8 Adjust some #ifdefs so that the build works on Mac both with and without
SQLITE_ENABLE_LOCKING_STYLE.

FossilOrigin-Name: 0cc981f1ccc2c99b87eb968590ad18b2d3ebf37b
2010-03-05 13:41:06 +00:00
dan
60d4a30453 Fix for [9abd6aa831]. Do not overread a buffer used for an %q or %w conversion with a precision specifier.
FossilOrigin-Name: 5e472896e02eed05c6c0886a48acd0bdc7a38731
2010-03-04 17:58:45 +00:00
drh
69ef70362a Fix an uninitialized variable in printf when compiling with
SQLITE_OMIT_FLOATING_POINT.

FossilOrigin-Name: 14ad62b9a54dba5c5a2d4a994bcd4be6ab6e711f
2010-03-04 17:11:31 +00:00
drh
c05a9a8a57 Suppress harmless compiler warnings.
FossilOrigin-Name: fc2c63ac78ba7d48fe3232f88093e980ea34eaa9
2010-03-04 16:12:34 +00:00
drh
a64fa9123e Increase the maximum length of an sqlite3_log() result string. Provide more
details on the statement abort log message.

FossilOrigin-Name: 5322d1df5ba981001d248b7fb2ee02281e4f9723
2010-03-04 00:53:32 +00:00
drh
7c0c460fff Modify the sqlite3_log() interface and implementation so that it never
uses dynamic memory allocation - to avoid deadlocking when called while
holding the memory allocator mutex.

FossilOrigin-Name: 28d1bc98d60319b10af427072037a0121bc76259
2010-03-03 22:25:18 +00:00
dan
3bbe761c9b Fix some extra instances of the constants addressed by [83e47ca006].
FossilOrigin-Name: 0354ab279f0ea9915a14d1ed972b4aa6b5a27fd1
2010-03-03 16:02:05 +00:00
drh
0b2864cb34 Factor out constant expressions in sqlite3GetVarint() to work around
nuisance warning messages from the RVT compiler.

FossilOrigin-Name: 83e47ca0069de259e98798d84d88301a5b4b6d2e
2010-03-03 15:18:38 +00:00
dan
0f831771c3 Modify the command line tool to disable all mutexes. The command line tool is single-threaded.
FossilOrigin-Name: 00e5679047a0a96dc4396aae5e061909faf3b81d
2010-03-03 07:23:12 +00:00
drh
2ec050c5b1 When TEMP files are in memory, also put the massive TEMP file used by
the VACUUM command in memory.

FossilOrigin-Name: 9daf4e7d07769f25b3a579d80e7fada4e52344b1
2010-03-02 23:34:54 +00:00
drh
8bb76d39a0 Rename the sqlite_compile_option_*() SQL functions to sqlite_compileoption_*()
for consistency with the C/C++ interface.

FossilOrigin-Name: dd4962aa34c4dd118d2cb15465384636eacc64d5
2010-02-26 16:37:47 +00:00
drh
71caabf0cc Remove the compile_option pragma (retaining compile_options - with an "s").
Updates to documentation.

FossilOrigin-Name: 733778df996a2dda7c31ff7b544cb6f9a6ed4c97
2010-02-26 15:39:24 +00:00
dan
2ed11e7b18 Avoid a buffer overwrite that can occur with a corrupt database if secure-delete is enabled.
FossilOrigin-Name: 7bdb1e05faceddbb0b8e3efee7d070ad8c4611a3
2010-02-26 15:09:19 +00:00