Commit Graph

2616 Commits

Author SHA1 Message Date
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 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
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 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
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 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 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 59a33f98d6 Modifications to crash-test infrastructure. (CVS 3695)
FossilOrigin-Name: c4be8d9949fc7b5e1bed757423c5195f38069048
2007-03-17 10:26:59 +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
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
drh 7f906d63ff Clarify the use of loop variables in a expr.c. (CVS 3683)
FossilOrigin-Name: e20e76f6d8578f4faab0b101b6d4deb2a8987454
2007-03-12 23:48:52 +00:00
danielk1977 884c5b32c9 Catch an out-of-memory condition in vacuum code. (Bug in (3373)). (CVS 3675)
FossilOrigin-Name: 302ec768579e2f7c17a33749e685289a041aeb11
2007-03-06 16:03:55 +00:00
drh 7236583ba0 Fixes to the overflow-chain optization of (3672). (CVS 3674)
FossilOrigin-Name: d6986d1e7cba1d114fa06c5560ffc6bb1feb7389
2007-03-06 15:53:44 +00:00
danielk1977 8186df86ee Use heap instead of stack for large buffers in the pager. Fix for #2262. (CVS 3673)
FossilOrigin-Name: dfe1dffa4515ed6494055887d351863fe0cdb87f
2007-03-06 13:45:59 +00:00
drh 9444081a3b Do not read the last page of a overflow chain when deleting that chain.
Just add the page to the freelist.  This reduces I/O. (CVS 3672)

FossilOrigin-Name: 6db945f7a7587c8c7adada92f94ac7936b901cf1
2007-03-06 11:42:19 +00:00
drh 0787db6519 Changes to the btree and pager that reduce the amount of I/O when dealing
with the freelist.  (1) Avoid journaling pages of a table that is being
deleted.  (2) Do not read the original content of pages being pulled off
of the freelist. (CVS 3671)

FossilOrigin-Name: 2ba5be311945a4c15b6dce7c01efefb513b9a973
2007-03-04 13:15:27 +00:00
danielk1977 8efe541f24 Handle the case where the estimated cost of a virtual table scan is larger than SQLITE_BIG_DBL. Ticket #2253. (CVS 3670)
FossilOrigin-Name: 52885ed8b76a06588acf202a38b4feabfca1cfd1
2007-03-02 08:12:22 +00:00
danielk1977 a41c7497e8 Disable the "SELECT max(rowid) ..." optimization for virtual tables. Ticket #2250. (CVS 3669)
FossilOrigin-Name: ddb4d0af5770c7030fe6e92119972c9508724b9a
2007-03-02 07:27:00 +00:00
danielk1977 b4622b6075 Minor fixes so that testfixture builds without IO tracing enabled. (CVS 3668)
FossilOrigin-Name: 8d3829cdb35f41bc7a2e6f945e9aa83987513104
2007-03-02 06:24:19 +00:00
drh 602c237461 Additional I/O Tracing support. (CVS 3667)
FossilOrigin-Name: ed915f579a8e5b75681a9a6012b5041500cad36c
2007-03-01 00:29:13 +00:00
drh f075cd087b Work around incompatibilities in the windows printf() routine within the
new I/O tracing logic. (CVS 3666)

FossilOrigin-Name: ceb3a07f559b5160232c8bce5446f4d0e8aab92b
2007-02-28 06:14:25 +00:00
drh b0603416dc Add the undocumented and experimental I/O tracing interface. This
interface is likely to change and may be completely abandoned in the
near future. (CVS 3665)

FossilOrigin-Name: 007ca283892a66dd8b9e0dfece4f75d0d08a4300
2007-02-28 04:47:26 +00:00
drh 15d00c4e7b Improvements to OS layer tracing on the unix backend. (CVS 3664)
FossilOrigin-Name: 3ad96dbe09b99bd5f623de0de3072a25e9e2bc17
2007-02-27 02:01:14 +00:00
drh d40aab0ea8 Add comments to sqlite3ExprCompare() to clarify its operation. Ticket #2216. (CVS 3663)
FossilOrigin-Name: fba0a1e50820677081bc7cf01f97bf953065f7c4
2007-02-24 15:29:03 +00:00
drh fb658dedce Additional test cases added. Improvements to the INSERT transfer
optimization. (CVS 3662)

FossilOrigin-Name: 2bf5475bde763f73f7f4dd9cac7d13a631a7d2aa
2007-02-24 15:18:49 +00:00
drh dd73521bc2 Additional tests and some improvements to the INSERT transfer
optimization.  More testing is needed. (CVS 3661)

FossilOrigin-Name: 830985814345f71ba2def3c206e36aabe9e1ee7c
2007-02-24 13:53:05 +00:00
drh 8103b7d2b7 Make sure the INSERT xfer optimization does not trigger if the CHECK
constraints on the two tables are not identical.  Ticket #2252. (CVS 3660)

FossilOrigin-Name: 6fc18275230563437f2985eac3795e4dfe8eb9de
2007-02-24 13:23:51 +00:00
drh 945498f3f2 Make sure that integer values are converted to real when pulled from
a REAL table column by GROUP BY.  Ticket #2251.  Also make sure default
values are correctly expanded.  There may be other places in the code
where this issue comes up - we need to look further. (CVS 3659)

FossilOrigin-Name: e11bbf174c5a2fa75e3d1dd450c8b2a18f40e4da
2007-02-24 11:52:52 +00:00
drh 3e35580779 Disable the OR optimization if it would conflict with column
affinity coercions.  Ticket #2249.  Additional cleanup and testing
of the OR optimization. (CVS 3658)

FossilOrigin-Name: 908daaa9ab86e0bd1da6d0807d6aaba240c3cee0
2007-02-23 23:13:33 +00:00