Commit Graph

3691 Commits

Author SHA1 Message Date
dan f9556a1a3d Allocate the correct size for the output buffer in fts3DoclistOrMerge(). Fix for [56be976859].
FossilOrigin-Name: 07788c0f7f3740c1c280f6ce4dc68401c30bae6e
2011-09-13 19:08:43 +00:00
drh d40807ddef Performance improvements to the external merge-sorter. Keep content on an
in-memory linked lists rather than an ephemeral table prior to spilling to
disk.  Use the external merge-sorter to implement ORDER BY and GROUP BY
in addition to CREATE INDEX.

FossilOrigin-Name: 4c43e8b2d2c1d8dcba3cd1c3f2ec4e19ab419430
2011-09-03 17:07:26 +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 1c9d835d49 Use OP_SorterOpen instead of OP_OpenEphemeral to implement GROUP BY.
FossilOrigin-Name: ebf819aaa555bd79fddfc0a6f9827a2539095d6c
2011-09-01 16:01:27 +00:00
drh 1b1e8a8be6 The server1.test script should only run if mutexes are functional.
Fix to the #ifdef change of check-in [9e6a4c1473].

FossilOrigin-Name: 6489848590db7088d965b7fa7feabc8c66e2e2b1
2011-08-31 19:40:58 +00:00
drh 0ee469c9a8 Enable the thread test logic to work with the SQLITE_HAS_CODEC compile-time
option.

FossilOrigin-Name: 20ddfb4780b87953718f3a8e67b777dcff0e3b5e
2011-08-30 19:52:32 +00:00
mistachkin d589a5444b Make sure SQLITE_FCNTL_SIZE_HINT a no-op if the chunk size is not greater than zero.
FossilOrigin-Name: 88b763e8d73fafa1538b08af28b1c8b723b39c61
2011-08-30 01:23:34 +00:00
drh 2f7820d8b5 Back out [05c9832e5f6eb] since it was causing a performance regression with
no obvious benefit.

FossilOrigin-Name: 639cc85a911454bffdcccb33f2976c683953ae64
2011-08-29 11:56:14 +00:00
mistachkin d2f496aab5 Merge Win32 native heap support into trunk.
FossilOrigin-Name: 5238a74987507f27af4080e2842f53e049b5b111
2011-08-26 11:18:44 +00:00
mistachkin 4d60be5e30 In the MSVC makefile, allow symbols to be enabled without NDEBUG defined. Also, for the win32lock test, make sure the database is closed prior to shutdown.
FossilOrigin-Name: 5ed7633d41b99929309a7e13d37375a4fdae43b3
2011-08-26 05:40:31 +00:00
mistachkin f2d25f2005 Add comments for the various debug levels. When debugging, disable optimizations. Prevent the win32lock tests from spinning forever.
FossilOrigin-Name: 401859236b0d97bde82b11f32efce6eb9d490941
2011-08-25 04:09:12 +00:00
drh 26541c9a00 Fix an file separator character issue with test_quota.c that was causing
it to fail on windows.

FossilOrigin-Name: ddb8d3e80df868bda0704feed31171fa055432b5
2011-08-25 03:38:31 +00:00
drh 31e8097658 Cherrypick the [d4f6437f8d] change so that SQLITE_FCNTL_SIZE_HINT is always
honored and never undone by memory pressure on windows.

FossilOrigin-Name: 67ff8d27f6aa6e0beff1f6b72a997b30a9647879
2011-08-25 01:58:17 +00:00
drh b6020c4eef Add the sqlite3_quota_file() interface to test_quota.c.
FossilOrigin-Name: 2b7fe8e5b74c3504edd0e3ff78096e357ee1b47c
2011-08-25 01:42:12 +00:00
mistachkin 4458bc8e3e Make sure that SQLITE_FCNTL_SIZE_HINT on Windows does not shrink the file.
FossilOrigin-Name: d4f6437f8de82482dfaa4c084f4221e89e21eb00
2011-08-25 01:16:42 +00:00
drh 796af156c7 Changes to test_quota.c to make quota groups persistent even after files
are closed.  Files remain a part of the quota group until they are
deleted.

FossilOrigin-Name: 04111ce980df9692b7fe65a36105e7de9627a3bb
2011-08-24 01:25:55 +00:00
drh 2dd9b60c35 Merge the PAGECACHE_BLOCKALLOC changes into trunk.
FossilOrigin-Name: 768c1846d48a555054f07edeabdae8817a2c0a8e
2011-08-23 12:50:09 +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 041a0513aa Modify test cases so that veryquick.test passes with PAGECACHE_BLOCKALLOC defined.
FossilOrigin-Name: c61000705b61dc448a838846826d1a5ab5eaca2b
2011-08-22 14:55:54 +00:00
dan 3098dc5c8a Fix for [b1d3a2e531].
FossilOrigin-Name: 3f3acee465a6e390301f9dc588dd1d8e0bd646bd
2011-08-22 09:54:26 +00:00
dan d5f12cd54d Ensure that the Tcl "db onecolumn" command returns an empty string if the SELECT statement returns zero rows.
FossilOrigin-Name: 928bcaf0f00a408e2f6c1d85dfab214457f52ad5
2011-08-18 17:47:57 +00:00
drh 9da058bb5c Use OP_Sort rather than OP_Rewind in order to sort the content of a new
index on the CREATE INDEX statement.  Add an ALWAYS() to the merge sort
logic to document an unreachable branch.

FossilOrigin-Name: f01766f42342f043bf0cbe1e07224963011f01b7
2011-08-17 00:40:58 +00:00
dan 15bf39034a Merge latest trunk changes into experimental branch.
FossilOrigin-Name: 7e515055f219b01dd72df4e27bdcabfa2f9be5c2
2011-08-12 16:30:30 +00:00
dan 689ab89781 Add the SQLITE_OMIT_MERGE_SORT pre-processor directive. To omit the code in vdbesort.c.
FossilOrigin-Name: 4ced2394b10d0a4f86422ff893bcdf3cf32591e3
2011-08-12 15:02:00 +00:00
dan 262765a74e Add tests to improve coverage of vdbesort.c.
FossilOrigin-Name: 87a15917d7d88285054e2a319506dd4a0cac9722
2011-08-12 11:59:57 +00:00
drh 90315a2417 Make the openDirectory routine in os_unix.c overrideable so that it can
be turned into a harmless no-op for the chromium sandbox.

FossilOrigin-Name: 6b236069e1ea3c99ff0a007a790d4baebda70b13
2011-08-10 01:52:12 +00:00
drh 036ac7fa90 Allow the unlink() system call to be overridden in os_unix.c.
FossilOrigin-Name: 8d1b5c3ac027ac00d57a250aad45230a09645617
2011-08-08 23:18:05 +00:00
dan 5279112ea3 Add fault-injection and other tests (and fixes) to improve coverage of vdbesort.c.
FossilOrigin-Name: 0e6defa6aa540b413ea3f4bb6dcd86364d547067
2011-08-08 16:44:25 +00:00
drh a5ae4c330b Remove relevant elements from the sqlite_stat2 table when doing a DROP
INDEX or DROP TABLE.

FossilOrigin-Name: 3c8f97ae527e380bf2583c7cf8ceac9509f29bfe
2011-08-07 01:31:52 +00:00
drh f9042e9682 Merge the winopen-retry-logic branch into trunk. The biggest change here
is to test scripts, which should now use such as copy_file and
delete_file from tester.tcl rather than the raw file commands of TCL.

FossilOrigin-Name: b90c28be3840169651022ef36cd7cf416bc22305
2011-08-03 22:06:39 +00:00
drh 52043d7d45 Update the OP_Move opcode to shift the pScopyFrom pointer of aliases when
compiled with SQLITE_DEBUG.  Ticket [d63523637517386191].

FossilOrigin-Name: a2135ad13049c170b33315a949b1544e6a136183
2011-08-03 16:40:15 +00:00
mistachkin 85e444cab4 Add explanatory comment to the win32lock-2.2 test case.
FossilOrigin-Name: 4cb17881d9676fa3359394391b9ba53f08e5809a
2011-08-02 23:45:53 +00:00
mistachkin 176f1b47e5 Correct subtle timing issues in the win32lock test cases and in the lock_win32_file Tcl command. Also, eliminate superfluous MSVC compiler warnings.
FossilOrigin-Name: 7baf02946e14eb889d864984ff3b3822aad8a3c9
2011-08-02 23:34:00 +00:00
mistachkin 1b466a605d Fix missing info exists check for win32lock-2.2 (the one previously applied to win32lock-1.2).
FossilOrigin-Name: 8a52698e642f40a32d09a6a00b63f25ac38f3fda
2011-08-02 20:19:48 +00:00
drh 8b0228f1a6 Exclude the 8_3_names.test script from the inmemory_journal permutation.
FossilOrigin-Name: 78fc94c8d1229a8bdc9390e98b53c57aeef7fc46
2011-08-02 20:14:55 +00:00
mistachkin 5ea4298c81 Replace the missed 'file copy' in malloc_common.tcl with copy_file.
FossilOrigin-Name: cd20b4ef6020c0cffe918362afc2b491fb95eb92
2011-08-02 20:03:36 +00:00
drh 6c486cbce2 Merge in the permutation changes from trunk.
FossilOrigin-Name: b30a5e307fd5485d23e4c4f8ed1c47525a0fe6d3
2011-08-02 20:01:06 +00:00
drh 82be3b03a8 Also exclude backcompat.test from inmemory_journal since inmemory_journal
is not compatible with WAL mode.

FossilOrigin-Name: 861a5b62430d0ada07a46d0e394fcf0b0faab1cd
2011-08-02 19:59:39 +00:00
drh ba2019ffae Merge the latest trunk changes into the winopen-retry-logic branch.
FossilOrigin-Name: 8bef97a0eb2f56d0ac374d97e97e0a44c7f99aee
2011-08-02 19:42:38 +00:00
drh d88d10566c Omit backcompat.test from the journaltest permutation because it uses WAL
mode which is incompatible with journaltest.

FossilOrigin-Name: 2bbf3150a4b7108e88ed81c1d40af6f06089e148
2011-08-02 19:30:20 +00:00
drh b4256996c4 Make sure IS NOT NULL constraints work on virtual tables.
Fix for ticket [6c14288a473ceff].

FossilOrigin-Name: a55f4ab99952a731e4cd8f6ef17389062e5ed4c5
2011-08-02 01:57:39 +00:00
mistachkin fda06befd5 Add retry logic for AV defense to winOpen. Also, refactor test suite to allow the key Tcl file operations (e.g. copy and delete) to be retried.
FossilOrigin-Name: 9007586fdabed8dbcc78581ea9821cfd1f9a4c8c
2011-08-02 00:57:34 +00:00
mistachkin 5b7f786e7e Merge changes for the new sqlite3_file_control() that will cause the -wal and -shm files to persist after the last database connection closes.
FossilOrigin-Name: 1b56677bdfb102d070a2057a65ba424fec81131d
2011-07-28 20:48:38 +00:00
mistachkin 4e6b49b409 Remove redundant sub-expression from retry loop invariant in winAccess. Also, make check for SQLITE_ACCESS_READWRITE formally correct.
FossilOrigin-Name: 93079a92c49edf72eb289f352cd5ed7ab2faaff3
2011-07-28 19:16:41 +00:00
drh 253cea5c6f Test cases added. Fix the query mode.
FossilOrigin-Name: a9d8794ae949df570466a84836882bc8bed95c7c
2011-07-26 16:23:25 +00:00
drh 7d2dc7156c Enable the SQLITE_FCNTL_SIZE_HINT on unix even if SQLITE_FCNTL_CHUNK_SIZE
has not been set.

FossilOrigin-Name: 05c9832e5f6eb705f1dce4e65cf4e2d56512ff6b
2011-07-25 23:25:47 +00:00
drh fe34996549 Adjust the maximum number of open database connections in wal3.test down
for OpenBSD.

FossilOrigin-Name: b38e52f67574997de9f4b4318f2eb68ff0133f35
2011-07-22 10:53:05 +00:00
drh e6deb20458 All multiplexor chunk sizes up to 4GiB. Disable the multiplexor if the
chunk size is set to 0.

FossilOrigin-Name: 83191ad6f31536b0c1929938e1fbeb4cf6121ab0
2011-07-21 20:59:58 +00:00
drh f3717af48d When the multiplexor opens an auxiliary file, it now persists the name of that
file until it is closed, as it should.  Remove the limit on the number of
auxiliary files used by the multiplexor.

FossilOrigin-Name: 1ffa542bf913200a18ef77447aec4fc3ca1ed618
2011-07-20 16:35:31 +00:00
drh d0cdf012a2 Added the SQLITE_FCNTL_WIN32_AV_RETRY file control for configuring the
retry counts and delays in the windows VFS.

FossilOrigin-Name: 7aaf0a6ae1238129e07eb191ca3f043df445e27a
2011-07-13 16:03:46 +00:00