Commit Graph

8378 Commits

Author SHA1 Message Date
dan
ab4f076e7a Fix a problem in pagerfault.test uncovered by the previous change.
FossilOrigin-Name: b6719ce32892a38b9b3dff07decdd6e94c01b3e2
2010-08-30 16:15:54 +00:00
dan
7bddb7550b Add tests (and associated fixes) to restore coverage of rtree.c.
FossilOrigin-Name: b06f4695bdab244d9c764c082cd434a764dc5c29
2010-08-30 15:43:45 +00:00
drh
75c014c321 Remove the sqlite3BtreeFactor() wrapper routine. All modules now call
sqlite3BtreeOpen() directly.

FossilOrigin-Name: 0900e35348f4b9bf327d6ae2884c4ddbb6345d8d
2010-08-30 15:02:28 +00:00
dan
3b5a7a377c Add file sqlite3rtree.h.
FossilOrigin-Name: e1d9ffce0f84469eeb926f50030cb772de98a652
2010-08-30 11:34:39 +00:00
drh
710c4841b0 Updates to comments on the VDBE opcodes.
FossilOrigin-Name: 49c05b4e08920797f3a5dd14c292e2275db61acb
2010-08-30 01:17:20 +00:00
dan
635a606160 Fix problem with func3.test.
FossilOrigin-Name: aec52959d047d7c7b280319a8c84dc009d2cbf91
2010-08-28 19:09:29 +00:00
dan
9508daa929 Add code to allow user-defined searches of r-tree tables. Still largely untested.
FossilOrigin-Name: 782ca3b716ee1ecb0dfb5ab6f21dfd73d41758e4
2010-08-28 18:58:00 +00:00
drh
7b19facf56 Make sqlite3_create_function() a special case of sqlite3_create_function_v2()
in order reduce the number of code paths and simplify testing.

FossilOrigin-Name: 4758d86d57aaafc058c98c8b485eae24e6547588
2010-08-27 18:44:54 +00:00
dan
d2199f0f8d Add the sqlite3_create_function_v2() API, a version of create_function that allows a destructor to be specified.
FossilOrigin-Name: 9a724dfbe822c77e76721abe3443c9cb018bb2e2
2010-08-27 17:48:52 +00:00
drh
badc980afa Refactor the implementation of the scratch memory allocator. Add the
SQLITE_TESTCTRL_SCRATCHMALLOC interface to facilitate testing.

FossilOrigin-Name: a3475ddfbe4526e6e0b334fd1376ee7c31508b80
2010-08-27 17:16:44 +00:00
drh
50d1b5f363 Remove unnecessary code from malloc.c. Enhance pcache1.c so that is tries
to reuse existing pages, rather than create new pages, when SQLite is under
memory pressure.  "Memory pressure" means that SQLITE_CONFIG_PAGECACHE memory
is nearly exhausted or sqlite3_soft_heap_limit() has been reached.

FossilOrigin-Name: 51049479a8577e03cc353f71f6e13a10c8323d91
2010-08-27 12:21:06 +00:00
dan
48d9e01e36 Further tests for CAST in e_expr.test.
FossilOrigin-Name: 9616df8c47ababc2d148f0ab6286efa84bd990fb
2010-08-27 11:19:55 +00:00
dan
51f3a50556 Add tests for CAST expressions to e_expr.test. More to come.
FossilOrigin-Name: ba6119d1e9300de9ce7448cfa0acd579e8e69e41
2010-08-26 19:05:23 +00:00
drh
b652f43205 Add EXTERN macros before entry points in tclsqlite.c. This undoes the
change [b4d3e0d528c7d17fa3d05] on [2006-03-06 23:30:52].

FossilOrigin-Name: 8b2cf9d492901a65942d0e0b87c568d1539deece
2010-08-26 16:46:57 +00:00
dan
897230eb7a Fix a couple of memory leaks in r-tree that can occur following an OOM condition.
FossilOrigin-Name: 1975a27cdec09e1dad4ca8281a87dd7754c02c3e
2010-08-26 14:15:37 +00:00
dan
c23454023e Remove unreachable condition from rtree.c.
FossilOrigin-Name: 90f40cd36860d3af13ec24575dff7cc1f57ac493
2010-08-26 11:27:22 +00:00
dan
2bf19178f7 Improve coverage of rtree.c some more.
FossilOrigin-Name: bee1959dde19ebec20a7ffcb732aee0c8bb2e67d
2010-08-26 07:59:10 +00:00
shaneh
71fe25428e Simplification of changes for SQLITE_OMIT_WAL support in pager.c.
FossilOrigin-Name: afb2484c64bf0cdec8240b9ecd0a794c44a63066
2010-08-26 05:23:37 +00:00
drh
1cca0d221d Reinstate the "sqlite" alias for backwards compatibility (but leave
it undocumented) but remove the PackageProvide for "sqlite".

FossilOrigin-Name: 699cc6b48774be111f2e076cc1920ae79497dcea
2010-08-25 20:35:51 +00:00
drh
4c0f1649ac Disable the legacy "sqlite" command in the TCL interface. Provide only
the "sqlite3" command.

FossilOrigin-Name: 909b3d8862aeae04611969f5fc27d32a82026767
2010-08-25 19:39:19 +00:00
dan
f836afd44a Further test coverage improvements for rtree.c.
FossilOrigin-Name: 05f6c1aebbe757dd3b54fd027057b9db7ae3a990
2010-08-25 19:04:38 +00:00
dan
92e01aafe1 Test cases to improve coverage of rtree module. Fixes associated with the same.
FossilOrigin-Name: 865cec04e4d814f63fb71feb67de7f06f8d54035
2010-08-25 17:53:17 +00:00
shaneh
f7b5f855d7 Replicate asserts on unixOpen() to winOpen() in os_win.c.
FossilOrigin-Name: 40526d8390896ccb883c45afa70e7adb568d174f
2010-08-24 20:46:53 +00:00
shaneh
9091f775a8 Changes to support building with SQLITE_OMIT_WAL.
FossilOrigin-Name: d1ed743b6ed07ad0ee7d466932c5a83caa9489ee
2010-08-24 18:35:12 +00:00
drh
357b5f97be Change sqlite3_open_v2() to return SQLITE_MISUSE if the combination of bits
in the flags parameter is invalid.  The documentation says the behavior in 
this situation is undefined - the documentation is unaltered by this code 
change.

FossilOrigin-Name: 5e8101c5122336844ea920e6fbdace23e35b931f
2010-08-24 18:07:57 +00:00
drh
9d13f116af Comment enhancements and typo fixes in pcache1.c.
FossilOrigin-Name: c2dc39c0c4673a39f5fe6e643acb3bcf4ca22265
2010-08-24 18:06:35 +00:00
dan
a235d0ca63 Fixes to allow fts3 tables to be renamed mid-transaction.
FossilOrigin-Name: d1c875320a045c3938c765ceb543dfba1a0ecf0b
2010-08-24 16:59:47 +00:00
dan
eb385b4093 Add tests to e_expr.test.
FossilOrigin-Name: 5c1c694ee1b3b71e20089412f6cba1847dc7f958
2010-08-24 13:11:52 +00:00
drh
ee2c813b72 The R-tree module should not assume that its shadow tables are consistent.
If a problem is found in a shadow table, return SQLITE_CORRUPT.

FossilOrigin-Name: 7f2f71cc9e3c39093f09231f448576cff6afb5fe
2010-08-24 01:49:47 +00:00
drh
507f94d763 Version 3.7.2 release candidate 1
FossilOrigin-Name: 42537b60566f288167f1b5864a5435986838e3a3
2010-08-23 18:52:01 +00:00
dan
5f848c3a48 Fixes for the SQLITE_CHECK_PAGES debugging feature.
FossilOrigin-Name: 21a1e5961bba148fda50cc0b7d472ca74f90808a
2010-08-23 18:19:31 +00:00
drh
b8077be491 Update the version number in preparation for the 3.7.2 release.
FossilOrigin-Name: 77889510fa67268043c604826047af81c8bd1ca7
2010-08-23 17:09:23 +00:00
dan
f48c355b33 Fix for ticket [5e10420e8d].
FossilOrigin-Name: 255f1eefa373153942c67b18b22177933657911d
2010-08-23 15:41:24 +00:00
drh
7d105f87fc Update the "showdb" debug utility to handle 64K page database and with
extra options to decode the freelist structure.

FossilOrigin-Name: 1070918e3b68c0ba5bfab11a97214b87c601f93c
2010-08-23 15:26:49 +00:00
drh
4396fb8d48 Version 3.7.1 release candidate
FossilOrigin-Name: 3613b0695a5e990905ab146fadcab34dd04d5874
2010-08-21 16:01:46 +00:00
dan
f5d3df405c Add some tests to e_expr.test and pagerfault.test. No code changes.
FossilOrigin-Name: 44de3cab9c89eb28485c0dc36d791b1c61d56b34
2010-08-21 15:51:05 +00:00
drh
5f77b2e0ea Fix the ptrmapPageno() routine so that it works correctly for an input of 1.
FossilOrigin-Name: 699a9bf28377f43f58c509878cce60cb906dbf48
2010-08-21 15:09:37 +00:00
drh
871919b493 Do not allow a backup to change the page size if a codec is in use.
FossilOrigin-Name: 5523ecd32295c188e3bf5dbd57d92d2879461e32
2010-08-20 15:32:21 +00:00
dan
4f05e38f09 Fix typo in backcompat.test.
FossilOrigin-Name: 6a0cbb272c3f0c1dfdeed381ba92f2f2f16ae824
2010-08-20 12:43:01 +00:00
dan
a3e63c4a74 Merge leaf created by accident.
FossilOrigin-Name: 1f680cb37584baa106cee0544d5be63049d55858
2010-08-20 12:33:59 +00:00
dan
3d5790596e Avoid assuming that the user has "." in their path when running multi-process tests.
FossilOrigin-Name: daa5d461b98fc068cbba52d338ca8690edd27bc9
2010-08-20 12:31:30 +00:00
drh
a6c4196604 Do not attempt run backwards compatibility tests if no historical
"testfixture" binaries are available.

FossilOrigin-Name: 40e11aabc7668e1c9db43d9183edb445996254bd
2010-08-20 10:28:28 +00:00
drh
96dd6a16af Disable the MEMSYS2 auxiliary routines if MEMSYS2 is changed to an alternative
memory allocator using SQLITE_CONFIG_MALLOC.

FossilOrigin-Name: 541dd3b870f123a5fddf0b710474693566a1d659
2010-08-20 09:53:19 +00:00
drh
c8f503a8d3 Fix the sqlite3_release_memory() interface so that it does not attempt
to free SQLITE_CONFIG_PAGECACHE memory.

FossilOrigin-Name: 0426cd62d5ef2bd09570835c78f8fc3bcb7cdd49
2010-08-20 09:14:13 +00:00
shaneh
5ad723f412 Adjust filename globbing in backcompat.test for Windows.
FossilOrigin-Name: b0f4796306a2cb11d6897d5c33f5da05c7473e07
2010-08-19 18:05:46 +00:00
dan
9ab7fe87e5 Fix backcompat.test so that it works with windows mandatory locking.
FossilOrigin-Name: 8d05f66db7d6e8b8916fcf22fa92159d863d2610
2010-08-19 17:16:11 +00:00
dan
fc5026d3c2 Add tests for WAL mode to test/backcompat.test.
FossilOrigin-Name: 7999910e85b1f24c5860425ba47e7ab10c22e887
2010-08-19 15:48:47 +00:00
dan
a1f8da1848 Merge two leaves.
FossilOrigin-Name: b03091fc3592896fcf1ec563ae9682a8e0a05baa
2010-08-19 15:12:54 +00:00
dan
a35dafcdea Modify the code for reading hot-journal files so that it can handle journals generated by versions 3.5.7 and earlier.
FossilOrigin-Name: b9170f2903c480bca2bdc986e98aaeadfdb9ad2b
2010-08-19 15:11:34 +00:00
shaneh
8128bb2910 Fix typo in TCL stubs support for configure in Makefile.in
FossilOrigin-Name: 4c7ad73d22b7e8c90955730c2dbb79ed53cd750b
2010-08-19 14:41:58 +00:00
drh
6b47fcacb4 Remove a NEVER from balance_quick() that can occur in WAL mode on
a corrupt database file.

FossilOrigin-Name: b273891ab05a18b68a76c870ea3be9f1a56c40a9
2010-08-19 14:22:42 +00:00
dan
8311c47d83 Add new test script backcompat.test, for testing database/journal/wal file compatibility against previous versions.
FossilOrigin-Name: 8804f4989d157707911488781109ce0641c0ad0b
2010-08-19 11:05:53 +00:00
drh
e22e03e210 Fix two asserts in the btree logic so that they work correctly even for
maximum-size index entries for 32K and 64K pages.

FossilOrigin-Name: e127192d106bd7e036caacf01bf7725eeaa85dbe
2010-08-18 21:19:03 +00:00
shaneh
1b8f78ca57 Updated tests for CLI. Added some basic tests for the .import command.
FossilOrigin-Name: d46567e5d75a2b9fe96d2a7a30708b2827a0d490
2010-08-18 17:16:26 +00:00
dan
5a9e07eb40 Disable the SQLITE_MAX_PAGE_SIZE compile time option (it is now always set to 65536). Fix some other problems in test files.
FossilOrigin-Name: 56cc883d3af5574c9dafecef8aa96d1d05c01b83
2010-08-18 15:25:17 +00:00
shaneh
35cf908a86 Fix issue with wal.test on Windows.
FossilOrigin-Name: 3497f54ac2f85746c50fe6f94380a22033f2464b
2010-08-18 14:54:03 +00:00
shaneh
1df2db7fd1 Fix some compiler warnings in the MSVC build.
FossilOrigin-Name: 1f5662b7db5d623c8d99c45a8d97a0aa4427593f
2010-08-18 02:28:48 +00:00
drh
89bd82ae9d Remove a NEVER() that is actually reachable.
FossilOrigin-Name: acb171d4cfef2fec8833f761019f5c81f0d138a0
2010-08-17 19:49:14 +00:00
drh
43b18e1e55 Suppress harmless compiler warning.
FossilOrigin-Name: 3f8c068a41b01f59d7f5d56f3bced78587f4d26c
2010-08-17 19:40:08 +00:00
dan
c8d735aed3 Return an error when parsing "?NNN" if NNN is so large it cannot be stored as a 32-bit int.
FossilOrigin-Name: fc9014be0f00d046e7ba830a644f9ce93eca5db8
2010-08-17 19:34:13 +00:00
drh
0028486b73 It is no longer possible to reach pagerStress() while in the error state,
so put a NEVER() around the error state test of that routine.

FossilOrigin-Name: d7ed463496c4474cc435d032874a4e55d780e74a
2010-08-17 18:37:12 +00:00
dan
a81a2207a3 If an SQLITE_FULL error occurs during rollback or journal finalization, treat it in the same way as SQLITE_IOERR (i.e. require that the pager internals be completely reset before it is next read from or written to).
FossilOrigin-Name: 8ac185236e766becdac7248c1ba3dfa42a9464b1
2010-08-17 18:15:48 +00:00
drh
719e3a7a57 Changes to pager for improved testability.
FossilOrigin-Name: 61c64b3aeb027fcc9c25591d6b9048ac7850ad3d
2010-08-17 17:25:15 +00:00
dan
73625ec3a5 Add tests for the BETWEEN operator to e_expr.test.
FossilOrigin-Name: ced6a3480fe4a8e2b93160a8419bdc3ab30935e8
2010-08-17 16:06:08 +00:00
dan
eb8763d7b3 Invoke sqlite3_log() whenever one or more frames are recovered from a WAL file.
FossilOrigin-Name: e05089aaefe02ec59a1923812349471a78075d29
2010-08-17 14:52:22 +00:00
dan
fc6a621a96 Fix some non-ANSI C code in test_demovfs.c. Also change the same file so that attempting to delete a file that does not exist does not return an error.
FossilOrigin-Name: 07570ce38051a05d6e8a71e39766850f6719ac07
2010-08-17 05:55:35 +00:00
drh
919fc66ea7 Remove an superfluous branch from pager.c.
FossilOrigin-Name: 4271a95c8236bda4a4f8c02bf3a3560de1d00402
2010-08-16 20:02:09 +00:00
dan
4bcc4988f1 Add tests for different page sizes to wal.test. Including 64K pages.
FossilOrigin-Name: d95bcc052910cfd4848afe0d32f717506ad5a789
2010-08-16 19:23:02 +00:00
dan
994e940323 Add test cases designed to exercise all syntax diagram paths in lang_expr.html
FossilOrigin-Name: d4a26bb629bc739a4bca16b5a876199aa9ecda43
2010-08-16 18:26:30 +00:00
drh
6cef0cf7a9 Fix a typo in a comment in wal.c. No code changes.
FossilOrigin-Name: d854a3d41c68f785c909c159cd9ca2154c64001a
2010-08-16 16:31:43 +00:00
drh
7e9e70b170 Add ALWAYS() macros in wal.c to cover branches that are no longer reachable
following the pager refactoring.

FossilOrigin-Name: 24f24c927c77bb3bb4d26a23dd5d94f964db8033
2010-08-16 14:17:59 +00:00
drh
9b78f79183 Adjustments for better 64K page size handling.
FossilOrigin-Name: faf1974e2de321bfefb68b81d702ae69771933ef
2010-08-14 21:21:24 +00:00
dan
1afca9b74a Add test case to e_expr.test.
FossilOrigin-Name: db9539f2ceabd3c5a3eb5d4701f80f4e7da9344d
2010-08-14 18:32:23 +00:00
drh
8fb8b53728 Change sqlite3PagerPagecount() to return void, since the return value was
always SQLITE_OK and was never used.

FossilOrigin-Name: 7dd78eb7974ec7c40af3fcf2b125ca5bc0766b5c
2010-08-14 17:12:04 +00:00
drh
5d433ce2ab Minor simplifications to btree.c in support of full-coverage testing.
FossilOrigin-Name: 364df6c7735447cc2187923918a35bf62d82decc
2010-08-14 16:02:52 +00:00
drh
e5918c62e9 Tweaks to comments in pager.c. Fix two compiler warnings.
FossilOrigin-Name: 68a49f7fe382e4d36e1259cdeec956c942906ddb
2010-08-14 12:42:45 +00:00
dan
c7d6156d8e Add test cases to e_expr.test.
FossilOrigin-Name: d8bbab78fa56b076dfafb36daa7d6ef0b07f9a44
2010-08-14 12:25:18 +00:00
dan
98530cac13 Test that it is possible to drop a trigger while there are active statements belonging to the same connection.
FossilOrigin-Name: d4ec61e2547200aa92a26c1f270682ed67edc241
2010-08-14 05:04:47 +00:00
dan
c29486a2c5 Add tests to test file e_expr.test.
FossilOrigin-Name: 3fd1059e25a8d0cccbb30fc55b03d172bd9eb9b7
2010-08-13 18:41:09 +00:00
dan
49ad330d67 Do not apply the flattening optimization if the sub-query is DISTINCT. Fix for [e4b8a2ba6e].
FossilOrigin-Name: 497aafd8ed6a636a8bd5fa2cad265a20593ee34f
2010-08-13 16:38:48 +00:00
dan
1879b088bd If an error occurs in PagerSetPagesize(), set the output variable to the unmodified page-size before returning.
FossilOrigin-Name: 02def8f92588b8a45dff3976d1e7f9e3f0359b3b
2010-08-12 16:36:34 +00:00
dan
5653e4da36 Add coverage tests for pager.c.
FossilOrigin-Name: 228c5b16af80c22e97d9d4deb351e0d3f4523f89
2010-08-12 11:25:47 +00:00
drh
b2eced5de2 Increase the maximum page size from 32k to 64k.
FossilOrigin-Name: 45362437d491fbe0f033a67b398f8ba68cbf1b3b
2010-08-12 02:41:12 +00:00
dan
22b328b23c Improve coverage of pager.c.
FossilOrigin-Name: 2fa05d01b6b11788a5b73d203fcac9d4a4ba9fd8
2010-08-11 18:56:45 +00:00
dan
036391f7f8 Update an r-tree extension test case to account for recent changes to the query planner. Also fix a comment in rtree.c.
FossilOrigin-Name: eaaca669a4afc83906806b22365b010c83bc3db8
2010-08-11 12:26:46 +00:00
dan
78f9b73189 Use sqlite3DbFree() instead of sqlite3_free() to free any error message reported by the parser layer while attempting to parse a CREATE TABLE statement passed to sqlite3_declare_vtab().
FossilOrigin-Name: 7c674aaba52b00a78babc1e1ece7e5b652b65039
2010-08-11 11:59:37 +00:00
dan
d47f0d78b9 Fixes to tcl test files so that they work in auto-vacuum mode.
FossilOrigin-Name: ea9eaf7480f6fbe2a37813508d1b730d45155966
2010-08-11 11:35:50 +00:00
drh
d56b121d10 Fix memory allocation in proxy locking so that it works with SQLITE_MEMDEBUG.
FossilOrigin-Name: f854cbe06355dd3455b8af4ad6366949c412434e
2010-08-11 06:14:15 +00:00
dan
216eaab282 Merge experimental changes into trunk.
FossilOrigin-Name: aa092ac928dc19bd356d25a1dfd3f432dc145ce6
2010-08-11 06:04:19 +00:00
dan
7e68423894 Fix a bug in pager.c causing it to omit the xSync() call required following a hot-journal rollback.
FossilOrigin-Name: 42ba43ac690dc800fb8b969ae257a79942918342
2010-08-10 15:46:06 +00:00
dan
c864912ad1 Add variable pager.dbHintSize, used to limit the number of calls made to the xFileControl(FCNTL_SIZE_HINT) method.
FossilOrigin-Name: eb3ac895bd92c880ac6acca58de8cf9643c2b5e4
2010-08-10 09:58:57 +00:00
dan
84612fec1c Changes to debugging code in mutex_unix.c and mutex_w32.c to make an assert() statement threadsafe.
FossilOrigin-Name: e82e32bd431ccacd276df8241592eb5519d87122
2010-08-10 07:12:26 +00:00
dan
de5fd22f3d Modify some comments in pager.c.
FossilOrigin-Name: 5662da6d4f648e5d07d7cbea6bbd92fa684c02c9
2010-08-09 19:17:29 +00:00
dan
5a26383ab7 Merge latest trunk changes with experimental branch.
FossilOrigin-Name: aecbd890327dc676d6c2366b07f3d2e636a4983e
2010-08-09 16:52:12 +00:00
dan
5198bead7a Fix a memory leak in test_journal.c causing tests to fail.
FossilOrigin-Name: f229487cccc7514b2663e8e6e04798702c9cfb10
2010-08-09 16:12:51 +00:00
drh
9b8d02727a Fix typos in comments. No functional changes to the code.
FossilOrigin-Name: 9cebaf2dca6dc35e489537fe7c55474e1029a98e
2010-08-09 15:44:21 +00:00
dan
ec561a351a Change to tcl test infrastructure so that --malloctrace=1 works when sizeof(int)!=sizeof(void*).
FossilOrigin-Name: c3e771b3cf685f4237a2516ee7111849bf0ffb3f
2010-08-09 14:47:50 +00:00
drh
f053d5b6c7 Fix two comment typos that were reported on the mailing list.
FossilOrigin-Name: 88bf9016277c133dfbf4f4b2be0c35c9fe9fabd6
2010-08-09 14:26:32 +00:00
dan
007820d65d Fix a problem causing the return code of an xSync call to be ignored in wal.c.
FossilOrigin-Name: f1b2b5f9c3a5561ea6108283ae08404106c3f8bc
2010-08-09 07:51:40 +00:00
dan
7a76197f40 In WAL mode, ignore any error returned by an xFileControl(FCNTL_SIZE_HINT) call. This matches the behaviour in rollback mode.
FossilOrigin-Name: 158a309737bd4cdc033cd504a6d0cc43c15b6e17
2010-08-09 07:07:37 +00:00