1
0
mirror of https://github.com/sqlite/sqlite.git synced 2026-01-06 08:01:16 +03:00
Commit Graph

3867 Commits

Author SHA1 Message Date
drh
4ef9dfff97 An attempt at automatic incremental merging for FTS4.
FossilOrigin-Name: ed69434cd89084f4b57bd2cc4f5cc558904af565
2012-03-24 02:20:43 +00:00
dan
ba512b0b3d Add a test to verify that sqlite3_total_changes() works with incr-merge operations.
FossilOrigin-Name: 1c72cecc6bf5be2a5c04ad6214a6bac22a29f860
2012-03-23 15:38:43 +00:00
dan
3501a91677 Remove an incorrect assert() statement. Fix a const-related warning.
FossilOrigin-Name: 96ed47493b3d46344fd2105642f31690aee06674
2012-03-23 14:38:49 +00:00
dan
865e26afa2 Fix another test case issue in trace2.test.
FossilOrigin-Name: 02a8e4236cf2c1c74b3c6537be1b5f197175a32e
2012-03-23 13:40:59 +00:00
dan
dbd4f5cfb6 When an incremental blob cursor is invalidated (occurs when an SQL statement modifies or deletes the row the blob cursor points to) release all page references held by the cursor. Otherwise, the presence of these references may cause other code in btree.c to incorrectly infer that the database is corrupt.
FossilOrigin-Name: 82c3f2ba42f2c75ba6951cc2743148886a4dc0bc
2012-03-23 11:09:59 +00:00
dan
40c21432b7 Update a couple of existing test cases.
FossilOrigin-Name: dcb8fa0f77a44250df0e8c4f6cfb9f6e181982d7
2012-03-23 11:07:22 +00:00
dan
185c1fb02e Add test cases to fts4merge.test.
FossilOrigin-Name: ecab2083334dcdde24a3c56864114979b7a6f25a
2012-03-22 17:48:00 +00:00
dan
e81eaec754 Following an incr-merge operation that does not completely consume its input segments, store context in the rowid==1 row of the %_stat table that allows the next incr-merge to pick up where the previous left off.
FossilOrigin-Name: ab0a4f44fb67e9f0cb82297b80e728ca58cdb0fb
2012-03-22 16:48:12 +00:00
dan
74f47e1d31 Add fts4merge3.test, for testing that older versions of FTS4 may interoperate with incr-merge capable versions.
FossilOrigin-Name: 903ec5126dd981da6d7bab45c568f34b99446159
2012-03-21 14:34:23 +00:00
drh
e239233982 Merge trunk changes into the fts4-incr-merge branch.
FossilOrigin-Name: f61d5fb0281381228eb1a12a233bacaeb26b12a3
2012-03-20 17:04:17 +00:00
drh
0299b40f0f Add additional test cases to e_insert.test. Update evidence marks.
no changes to core code.

FossilOrigin-Name: 036395c0a8e08883b11df025e3da9e2461e4b1eb
2012-03-19 17:42:46 +00:00
dan
db0ad5f204 In pager1.test, use "file attr test.db -readonly 0" before "file attr test.db -perm rw-rw-rw-", not after.
FossilOrigin-Name: 4f5283f18f570a09b95c26e5aa14885ada518dd2
2012-03-17 15:12:16 +00:00
dan
a2e85abaa2 Modify a test in ioerr2.test to account for the new SQLITE_ABORT_ROLLBACK extended error code.
FossilOrigin-Name: affaebde109e8dd851474ffe7b7d48b1aae8c7ed
2012-03-17 09:43:09 +00:00
drh
1a342a4a73 Update the trace2.test script for languageid.
FossilOrigin-Name: a11528ac575fa20fd8022756d042a32fe1272e12
2012-03-16 17:00:49 +00:00
drh
c8d7b24e93 Cherrypick the [3475092cff] fix for 32-bit overflow with large language-ids
into trunk.

FossilOrigin-Name: 2755edc7f1186ba8955f2c3550a90f40a55ddae2
2012-03-16 16:52:54 +00:00
dan
81b35dc66c Fix some integer overflow problems that can occur when using large langauge id values.
FossilOrigin-Name: 3475092cff862080a020d386076d739f0d22c9b2
2012-03-16 15:54:19 +00:00
drh
421377e67a Add the sqlite3_db_readonly() interface. This is still tentative, pending
a closer look at other ideas to accomplish the same thing.

FossilOrigin-Name: 254f99ea9ff1534948bdb179e69ab0c940c87ec1
2012-03-15 21:28:54 +00:00
dan
4ab6f2b9c1 Modify incremental merge code to merge nMin segments at a time.
FossilOrigin-Name: cd34bc1af4ba608ea3b52bab55bcfe0086711900
2012-03-15 17:45:50 +00:00
dan
5730ef599c Add tests for incremental merge code.
FossilOrigin-Name: 570473729d6561d81e6e5f8884fd18487008636e
2012-03-14 20:01:52 +00:00
drh
331b67c151 Candidate fix for the optimizer problem described in ticket
[b7c8682cc17f3] which can causes a LEFT JOIN to be changed
into a INNER JOIN if there are OR terms in the WHERE clause.

FossilOrigin-Name: 0dc4cb935514131c99172175d57feec3a1743aa9
2012-03-09 22:02:08 +00:00
mistachkin
533b8f6d47 On Windows, make sure the returned test current directory value does not contain any backslashes.
FossilOrigin-Name: efee39e64bd95c284220fdb0ae8ee6c1847fadab
2012-03-08 20:28:31 +00:00
mistachkin
f8a784645c On Windows, make sure the current directory value used by the test suite is 'normalized' to what the parent command shell sees. Also, clean the test directories used by the quota2.test file.
FossilOrigin-Name: 82bcd7ec1531f6d71c079578434c58d3ce46a1de
2012-03-08 20:00:36 +00:00
dan
593c9824bc Add the 'merge=?,?' command to fts4. This still needs some work.
FossilOrigin-Name: 741b8f897750eac3c9774fd65de7e40bb89781b1
2012-03-08 18:39:03 +00:00
dan
3a1abde7c8 Merge the fts4-languageid branch with the trunk.
FossilOrigin-Name: 99a9073b5e411ce94f38ce49608baaa15de8b850
2012-03-05 15:33:32 +00:00
dan
996073b3ae Add the xLanguageid method to sqlite3_fts3_tokenizer versions 1 and greater.
FossilOrigin-Name: f8e9c445dd358c40e5a7bf3756b9f291909dbea7
2012-03-03 18:46:41 +00:00
drh
c724008b26 Add a test case for ticket [3557ad65a076c].
FossilOrigin-Name: 4f34d7077b9acf7926c5e7375ca870d4ed3c60b9
2012-03-03 01:44:12 +00:00
mistachkin
5b044545d7 Fix test pragma-19.5 so that it works on file names that may contain spaces and/or backslashes.
FossilOrigin-Name: 9aaa1ab7c63c9045fecf5e965b333cc5f28b0791
2012-03-02 22:41:06 +00:00
dan
7395599031 Fix problems with combining content= and languageid= in a single fts4 table.
FossilOrigin-Name: 22491e7bc38aee43819b888e04241cb6a6ef73a3
2012-03-02 19:53:02 +00:00
dan
c0db214b10 Add test for FTS 'rebuild' command.
FossilOrigin-Name: 181bc35731f19c3e4497ba3338c209918d34ea69
2012-03-02 16:18:21 +00:00
dan
8fb662b0be Fix the FTS 'optimize' command on multi-lingual databases.
FossilOrigin-Name: 65fa693729a336e4d905ce72e6b9ccf4faa772bd
2012-03-02 12:26:19 +00:00
dan
e3ddd1ac42 Fix a bug in merging FTS language tables for languages other than language 0.
FossilOrigin-Name: d281cb8984c911a4c0cce2ec299e1351d8e580e4
2012-03-02 11:48:50 +00:00
dan
7fcb214b93 Add the "languageid=" option to fts4. This code is still largely untested and alsmost certainly buggy.
FossilOrigin-Name: bea257f70f10dd1111d79cabd1e1462dc651704d
2012-03-01 19:44:20 +00:00
dan
f602963dbc Fix spurious errors that may occur if an empty database is opened and then initialized as a WAL database by a second connection.
FossilOrigin-Name: 16330a2f7262173a32ae48a72c0ee2522b6dc554
2012-02-28 17:57:34 +00:00
dan
4aced72a59 Fix a case where an error code was being overwritten in multiplexDelete().
FossilOrigin-Name: c267893a0813beb1764071409025e178318e1ca3
2012-02-28 11:52:12 +00:00
drh
63296052a1 Fix an obscure bug that causes a crash when parsing certain invalid SQL
statements.

FossilOrigin-Name: c8c7846fb990199dcc0774a69e8257510bc36f2d
2012-02-23 17:35:28 +00:00
drh
49dc66df0f Expose the sqlite3_stricmp() interface. Add the SQLITE_FCNTL_PRAGMA file
control.

FossilOrigin-Name: c539cf21ef8f4eb4782790aa97a67d10ae9ffd64
2012-02-23 14:28:46 +00:00
drh
c8517f614d Move test logic for SQLITE_FCNTL_PRAGMA out of os_unix.c and into test_vfs.c.
FossilOrigin-Name: c81fc40b2b584820ac7d1c3848ebeb7225d4eeeb
2012-02-22 20:08:49 +00:00
drh
92c700dbb7 If the SQLITE_FCNTL_PRAGMA file-control returns anything other than
SQLTIE_NOTFOUND and SQLITE_OK, then treat the result as an error.

FossilOrigin-Name: 5643618108a8aafba67ed4004039b862bb5e5da8
2012-02-22 19:56:17 +00:00
drh
e4d25e9cfb Make benign any malloc failures inside the sqlite3_file_control() call within
PRAGMA parsing.  Add a couple simple tests for SQLITE_FCNTL_PRAGMA.

FossilOrigin-Name: a1f29fa653b788f563967f55c3d20e64cbe3f549
2012-02-22 18:21:20 +00:00
drh
3fa9730273 Change the SQLITE_FCNTL_PRAGMA file-control so that it can return a string
value.

FossilOrigin-Name: fd8d7440277b17f57a6dc0a210f42adf1fa2dcd2
2012-02-22 16:58:36 +00:00
dan
99c7d468a7 Prevent the fuzzer from ever returning a string longer than 100 bytes.
FossilOrigin-Name: 969095ca3067d60f4d3a0a4ad419541cb8b146db
2012-02-21 18:00:20 +00:00
dan
4965ebceb7 Further fuzzer test cases. Fix a case in the fuzzer where an error code was being dropped.
FossilOrigin-Name: 8b77d3953f082e6fa42e42fe903ea9eddf99dd91
2012-02-21 14:11:12 +00:00
dan
766348febe Add further test cases and minor fixes for the fuzzer.
FossilOrigin-Name: 583dde93a9176ba4fff85241bafbbe4e5a6cc95f
2012-02-21 10:36:27 +00:00
drh
5577671da3 Updates to the instructions in the header comment of the fuzzer implementation.
New test cases for the fuzzer.

FossilOrigin-Name: bf1dc7907cf1a5c7e19b04fa1278b2089316c30a
2012-02-20 22:44:12 +00:00
dan
a8ab692fa2 Change the way the fuzzer (test_fuzzer.c) works so that it loads its configuration from a database table.
FossilOrigin-Name: 90b7b957f8933047fd2878048dfa3ec4891988b8
2012-02-20 20:03:48 +00:00
dan
75f8f75f1e Fix a case in test_fuzzer.c causing transformations from the wrong ruleset to be applied in some cases.
FossilOrigin-Name: cb5f5ebc563b8d3e47bc30b6dbb374bb91efd3ef
2012-02-20 19:36:09 +00:00
drh
5beafd6ab7 Enhance the fuzzer virtual table to support multiple rule sets.
FossilOrigin-Name: a82938731b21d6166d7d482994cb065c8b725083
2012-02-14 15:34:50 +00:00
drh
99b18401ab Merge the non-blocking ROLLBACK changes into trunk.
FossilOrigin-Name: 9c572d424a20b0585bfac358a5d1ee5276dd05ba
2012-02-13 21:24:03 +00:00
drh
8c815d14f8 On unix, ignore the umask when creating journal files. That way, journal files
will have exactly the same permissions as the original database and any
process that has permission to write to the database can also recover
hot journals.

FossilOrigin-Name: 84b324606adc8437338c086404eb157f30f04130
2012-02-13 20:16:37 +00:00
drh
21021a5cbf Add the new SQLITE_ABORT_ROLLBACK extended error code to be returned for
statements that are cancelled due to a rollback.

FossilOrigin-Name: 549f4fd00d8325c10099b100e5202b77ee1d83ad
2012-02-13 17:01:51 +00:00