3866 Commits

Author SHA1 Message Date
drh
600e46a021 Fix an memory allocation error revealed by malloc3.test. (CVS 3733)
FossilOrigin-Name: 0f7fdb022ca7c94f7d264192e18b6e2bd1e8cff4
2007-03-28 01:59:33 +00:00
drh
56424db419 The SQLITE_ENABLE_LOAD_EXTENSION macro enables the load_extension() SQL
function by default without having to invoke sqlite3_enable_load_extension()
first. (CVS 3732)

FossilOrigin-Name: 113aab2cdf4480683cd5e844b5a48dcc093792ff
2007-03-27 22:24:11 +00:00
drh
3262cb24ff Fix the prototype of the CodecAttach function in attach.c. (CVS 3731)
FossilOrigin-Name: 902413e81b1ae8bee09987c798622a55ab2a1504
2007-03-27 21:47:06 +00:00
danielk1977
3dedc1985e Remove a c++ comment in pager.c. (CVS 3730)
FossilOrigin-Name: e4452e8aede9282feaeeac19d0cdf82b01c3cc19
2007-03-27 17:37:31 +00:00
danielk1977
979f38e5ee Test handling of IO errors that occur in OsDelete() or OsTruncate() operations. Also use an anonymous file for temporary storage during a VACUUM. (CVS 3729)
FossilOrigin-Name: b24a6e7b024c8b9a0b6fd15bd8f247e458781ca2
2007-03-27 16:19:51 +00:00
drh
8ef6eff4a5 Updates to the VACUUM documentation. Ticket #2257. (CVS 3728)
FossilOrigin-Name: c61c97c978dab7535c94033631f5ad2355c55057
2007-03-27 15:00:30 +00:00
drh
fdbcdee5ff The -DSQLITE_OMIT_ATTACH=1 option now omits both the ATTACH and VACUUM
commands. Ticket #2268.
 The regression test suite depends on both of these commands
and will not run if compiled with this option. (CVS 3727)

FossilOrigin-Name: cbebfb89603044e48b3a87b79d1eefbbc5b4c8a5
2007-03-27 14:44:50 +00:00
drh
a4124a06cc Fix off-by-one errors in the header comments of btree.c. Ticket #2272. (CVS 3726)
FossilOrigin-Name: a70ea7202d8ffb0321ff8f2e5036731bb1742eb8
2007-03-27 14:05:22 +00:00
drh
cf64372910 More strict aliasing fixes. The single source file library now runs
successfully with -fstrict-alias. (CVS 3725)

FossilOrigin-Name: c8a8a189a82500aab501e9949f5b197c0b80b3a9
2007-03-27 13:36:37 +00:00
drh
e2330c8608 Get the -DSQLITE_OMIT_XFER_OPT option working. Run speed tests on a full
regression.  Add the script for generating sqlite3.c. (CVS 3724)

FossilOrigin-Name: 1dd9d0775a8199047de30218af71a31c731fedb1
2007-03-27 12:04:05 +00:00
drh
91c58e23b2 Get the -DSQLITE_OMIT_XFER_OPT option working. Run speed tests on a full
regression.  Add the script for generating sqlite3.c. (CVS 3723)

FossilOrigin-Name: 42c038518c4ba0ef827a5717d450f95165b3c729
2007-03-27 12:04:04 +00:00
drh
4f0c587819 Modify sources to that they can be combined into a single sqlite3.c source
file.  Eliminate all type-pruned pointer warnings. (CVS 3722)

FossilOrigin-Name: 0b832e218ec12b0eb559e407d80aba6709e2ea85
2007-03-26 22:05:01 +00:00
drh
45068f4b5c Set the same random seed for the speed tests. (CVS 3721)
FossilOrigin-Name: 8fe317054982969ad539cdbf1b996b97d86ec4f2
2007-03-26 16:30:15 +00:00
danielk1977
341a91c672 Run some malloc() tests with exclusive-access mode. (CVS 3720)
FossilOrigin-Name: 9ebba469023723652c4dbba3d9982a64a1fb144f
2007-03-26 16:13:58 +00:00
danielk1977
c7c7e623a9 Discard the pager-cache when the page-size is changed. (CVS 3719)
FossilOrigin-Name: e4209f7193d160709b0d8b5cd358df5649a97dc0
2007-03-26 15:46:00 +00:00
drh
e4dd73b4fa Avoid unnecessary calls to pager_unwritelock() when in exclusive-access mode.
Add the speed2.test script to the test suite. (CVS 3718)

FossilOrigin-Name: ab53f5086334ea2f6c20c8f9d043baff39fae8d7
2007-03-26 13:48:12 +00:00
danielk1977
c5859718af Run some malloc() tests with exclusive-access mode. (CVS 3717)
FossilOrigin-Name: 127454903764daff17390941a002f527ee2ffc87
2007-03-26 12:26:27 +00:00
danielk1977
ded6f4b2fe Add some tests and fixes surrounding exclusive-access mode and the pager change-counter. (CVS 3716)
FossilOrigin-Name: 72cb2e1a73cd09d32900bb473377f66ff55058fb
2007-03-26 10:27:18 +00:00
danielk1977
29e4aa0194 Add some documentation for pragma locking_mode. (CVS 3715)
FossilOrigin-Name: 394b174e59262a84c530ea73c367d8c389a681b5
2007-03-26 08:41:12 +00:00
danielk1977
334cdb63b0 Some fixes and test cases for exclusive access mode. (CVS 3714)
FossilOrigin-Name: 899e60707bea0fabab2ff3ac8a3fbb676a539120
2007-03-26 08:05:12 +00:00
drh
6d54da05ec Add the sqlite3_prepare_v2 and sqlite3_prepare16_v2 APIs to the loadable
extension interface. (CVS 3713)

FossilOrigin-Name: f02ba56d5c6bbd57682a6bb57e9f92021dfb066e
2007-03-25 19:08:46 +00:00
danielk1977
414834686c Changes for exclusive access mode. There are still some bugs. (CVS 3712)
FossilOrigin-Name: b6c700370be29db2b974f9abd719c3e56abf8058
2007-03-24 16:45:04 +00:00
danielk1977
e277be0545 Discard the contents of the pager-cache only when the change-counter indicates that it is stale. (CVS 3711)
FossilOrigin-Name: 07b56965f3227c9f78680728b955395295c4aa49
2007-03-23 18:12:06 +00:00
danielk1977
a3d4c887e0 Add a comment to the OsSectorSize() function. (CVS 3710)
FossilOrigin-Name: 0fd9983a98d8d61654f252f1708a4d7232a96b53
2007-03-23 10:08:38 +00:00
drh
8350a2187a In os_unix.c, make a distinction between pread() and pread64(). Add a new
compile-time macro USE_PREAD64 to select the latter. (CVS 3709)

FossilOrigin-Name: 177cd92910d01c97eb3133a59fad417edbb1aa92
2007-03-22 15:22:06 +00:00
danielk1977
73375822d4 Call sqlite3_free() instead of free() to release a buffer allocated by sqlite3_vmprintf() in test_async.c (test suite bug only). (CVS 3708)
FossilOrigin-Name: b078f09bffee5863d595d281f2ecd14e1c9ec727
2007-03-22 15:20:00 +00:00
shess
13ee81fe96 Refactor PLWriter to remove owned buffer. DLCollector (Document List
Collector) now handles the case where PLWriter (Position List Writer)
needed a local buffer.  Change to using the associated DLWriter
(Document List Writer) buffer, which reduces the number of memory
copies needed in doclist processing, and brings PLWriter operation in
line with DLWriter operation. (CVS 3707)

FossilOrigin-Name: d04fa3a13a84f49074c673b8ee2fb6541da061b5
2007-03-22 00:14:28 +00:00
shess
4607fc06f6 Refactor PLWriter in preparation for buffered-document change.
Currently, PLWriter (Position List Writer) creates a locally-owned
DataBuffer to write into.  This is necessary to support doclist
collection during tokenization, where there is no obvious buffer to
write output to, but is not necessary for the other users of PLWriter.
 This change adds a DLCollector (Doc List Collector) structure to
handle the tokenization case.

Also fix a potential memory leak in writeZeroSegment().  In case of
error from leafWriterStep(), the DataBuffer dl was being leaked. (CVS 3706)

FossilOrigin-Name: 1b9918e20767aebc9c1e7523027139e5fbc12688
2007-03-20 23:52:37 +00:00
danielk1977
3b8a05f681 Modify the interface to the pager sub-system in preparation for performing IO in blocks based on sector-size, not database page-size. (CVS 3705)
FossilOrigin-Name: 7dc7658887046f066b564a5994578074a99756ba
2007-03-19 17:44:26 +00:00
danielk1977
a8553141c9 Add some test cases simulating crashes with various storage medium sector sizes. (CVS 3704)
FossilOrigin-Name: c3c5f658cf9c69b6e81e63fbde5dd0a854be9fc7
2007-03-19 15:04:54 +00:00
danielk1977
b94bf855b2 Fix some problems with test cases in shared_err.test. Also a real bug causing a segfault after an IO error in pager.c. (CVS 3703)
FossilOrigin-Name: 9f62ef1ec385d9f1a1913439dc4c2d710373f12a
2007-03-19 13:53:37 +00:00
drh
fe5d71dd7f Fix a comment in btree.c (CVS 3702)
FossilOrigin-Name: 05700c11a9e5177a437d2240e72fb61ea47b973b
2007-03-19 11:54:10 +00:00
danielk1977
4099f6e129 Changes to support medium sector sizes larger than the database page size. (CVS 3701)
FossilOrigin-Name: 3a3e8eb25d8e04cfccc5c0513ed04efcc25d3dbf
2007-03-19 11:25:20 +00:00
danielk1977
b472117c11 Add new OS file method to return the sector-size of the underlying storage: sqlite3OsSectorSize() (CVS 3700)
FossilOrigin-Name: 5752d84d374205e011d49b0221d6237967fe0743
2007-03-19 05:54:48 +00:00
drh
8d3921772f Add documentation of the REPLACE, TRIM, LTRIM, and RTRIM functions. (CVS 3699)
FossilOrigin-Name: d42c9636205a1a649cffcaeabff2b9b32016db31
2007-03-17 18:22:58 +00:00
drh
309b338673 Added TRIM, LTRIM, and RTRIM functions. (CVS 3698)
FossilOrigin-Name: 6fe13eeade4fc7099fbda1e6520640927c08debc
2007-03-17 17:52:42 +00:00
drh
26b6d90d74 First cut at an implementation of the REPLACE() function. We might yet
make this a compile-time option or move it into a separate source file. (CVS 3697)

FossilOrigin-Name: c2fe746ea782f84e850aaf3af7f5536b027a19a1
2007-03-17 13:27:54 +00:00
danielk1977
06f52cb936 Add crash2.test, for robustness testing with variable disk block size. (CVS 3696)
FossilOrigin-Name: b0f8203dbbf1036418a2dcc480f352f761826194
2007-03-17 10:28:04 +00:00
danielk1977
59a33f98d6 Modifications to crash-test infrastructure. (CVS 3695)
FossilOrigin-Name: c4be8d9949fc7b5e1bed757423c5195f38069048
2007-03-17 10:26:59 +00:00
danielk1977
933bbd6c8d Combine the two very similar definitions of (crashsql) in the test scripts. (CVS 3694)
FossilOrigin-Name: eaf434d5887bf75330e1cea12be810dfe667b62a
2007-03-17 07:22:42 +00:00
shess
0d9f55a177 Out-of-memory cleanup in tokenizers. Handle NULL return from
malloc/calloc/realloc appropriately, and use sizeof(var) instead of
sizeof(type) to make certain that we don't get a mismatch between
them as the code rots. (CVS 3693)

FossilOrigin-Name: fbc53da8c645935c74e49af2ab2cf447dc72ba4e
2007-03-16 18:30:54 +00:00
danielk1977
fe39319ec8 Save an if(...) clause made redundant by (3691). (CVS 3692)
FossilOrigin-Name: 8153edf8bea51b9344de1b700482879190f86fb4
2007-03-15 15:35:28 +00:00
danielk1977
8d848d1da3 Check for multiple calls to sqlite3FailedMalloc(). Ignore the second and subsequent calls. (CVS 3691)
FossilOrigin-Name: 7180874592ffcaf8e2fe3c3b6b37449654da709b
2007-03-15 15:33:31 +00:00
drh
a7aea3dd52 Fix the pager so that it handles persistent I/O errors correctly.
Update the testing infrastructure so that it tests for persistent
I/O errors instead of just transient errors. (CVS 3690)

FossilOrigin-Name: ea8507a796c65041f7e720edea89f919fca1a028
2007-03-15 12:51:16 +00:00
drh
d5eb79eb40 Infrastructure to make simulated I/O errors persistent instead of
transient. (CVS 3689)

FossilOrigin-Name: 1a53f531ecd51938fab37a59b7088d89d8f8569d
2007-03-15 12:17:42 +00:00
danielk1977
b69d96d22c Catch an IO error code that was being ignored in OP_RowData. (CVS 3688)
FossilOrigin-Name: 760ebf8076b9cedb614bdc88c72d871c30cc7b94
2007-03-15 12:05:35 +00:00
drh
3f56e6ebac Enhanced temp-file security under unix. There are no known attacks against
prior versions - this check-in is just an added precaution. (CVS 3687)

FossilOrigin-Name: 5af61402f65bddc4040a20470f267c9404cba631
2007-03-15 01:16:47 +00:00
danielk1977
34c68fbab6 Modify the behaviour of writable_schema to ignore schema parsing errors. (CVS 3686)
FossilOrigin-Name: a8d6d935fbe32a759a55c1ef90adda7fe534acc1
2007-03-14 15:37:04 +00:00
drh
a26cdf9a61 Add hyperlink anchors to the lockingv3.html document. (CVS 3685)
FossilOrigin-Name: 3e66ea6f61abc0f95af3bb46ebc0e10b4dcd069b
2007-03-13 16:33:42 +00:00
danielk1977
d45a0315cb Do not crash when a corrupt database contains two indices with the same name. (CVS 3684)
FossilOrigin-Name: 48b2a40008a09881ed9da3548095495a3d4a6647
2007-03-13 16:32:25 +00:00