Commit Graph

5609 Commits

Author SHA1 Message Date
dan
e88ec187cd Fix issues on unix with opening database files via symlinks that are not in the current working directory. And with nested symlinks.
FossilOrigin-Name: 80398fd44fb232193450103808e1854e0eba5652
2016-01-25 17:04:48 +00:00
dan
b5c557b87e Have the dbstat module dequote any argument passed to the CREATE VIRTUAL TABLE statement before attempting to match it against the names of attached databases.
FossilOrigin-Name: e60461e984b8df09256bb0d733dbfae52568a145
2016-01-22 15:44:07 +00:00
drh
fb3972602c Case folding in the LIKE operator should look at all bits of the character,
not just the lower 8 bits.  Fix for ticket [80369eddd5c94].  This is a
back-out of check-in [0a99a8c4facf] with a testcase added.

FossilOrigin-Name: 204432ee72fda8e82d244c4aa18de7ec4811b8e1
2016-01-20 14:22:41 +00:00
drh
e40cf40c1a Fix an incorrect VFS version number check in the threadtest3.c test program.
FossilOrigin-Name: 5bf6442bec83977006bc5049adcdbd4dd39369fe
2016-01-19 21:36:26 +00:00
drh
a04a8be2c2 When the [https://www.sqlite.org/queryplanner.html#partialsort|block sorting optimization]
is used in a scalar subquery, be sure to exit the loop as soon as the first
valid output row is received.  Fix for ticket [cb3aa0641d9a4].

FossilOrigin-Name: cdbb0947f9ce18d6d7e29ffab5ea6a2ee5365fbb
2016-01-13 17:50:10 +00:00
mistachkin
46414c29ba Fix duplicate test number in 'waloverwrite'.
FossilOrigin-Name: f5fb82686697e5fa1937323b1c1b35cf90ad0302
2016-01-11 22:43:04 +00:00
dan
c3bd870f09 Add a test case to waloverwrite.test to check that savepoint rollback does not cause a problem.
FossilOrigin-Name: 87dae56c322454094d445e474ae36a4f464272a4
2016-01-11 08:12:40 +00:00
drh
b7c2f86b85 All WAL frame overwrites even if there are active savepoints. This is safe
because a ROLLBACK TO will cause all reverted pages to be rewritten to the
WAL file prior to COMMIT.

FossilOrigin-Name: 99b31a6b491c1c51227f478d3713b020d37a17cf
2016-01-09 23:55:47 +00:00
dan
d6f7c97952 If a single page is written to the wal file more than once, have each subsequent copy overwrite the original frame.
FossilOrigin-Name: 5d113aef2c7d746e8eda88d4e36c04a39b0a11be
2016-01-09 16:39:29 +00:00
dan
33d09da1f8 Fix test file vtabH.test so that it works with SQLITE_ENABLE_ICU builds.
FossilOrigin-Name: 19c1f4483e3df7fa1e9ac7c8a510fa1c906ac7c7
2016-01-08 08:35:14 +00:00
drh
72bf6a3e9c Add the "sqlite3 -sourceid" command in the TCL interface. Use that command and
others to output additional information about the test configuration at the 
conclusion of a TCL test.

FossilOrigin-Name: 4f80440bf566959306f6ca8cbb1fd29d138ee38b
2016-01-07 02:06:55 +00:00
drh
8d52c3b767 Disable the --limit-mem option on fuzzcheck unless the SQLITE_ENABLE_MEMSYS5 or
SQLITE_ENABLE_MEMSYS3 compile-time options are used.

FossilOrigin-Name: 55a11fd627eaf046b3783622b2925399a50a65b4
2016-01-06 15:54:53 +00:00
mistachkin
98486c046f Permit the 'test_fs' test module to be compiled and used on MinGW.
FossilOrigin-Name: ac27f38eef7a241d56124c263d9f8c91f372a77f
2016-01-05 01:48:29 +00:00
drh
4b4da16344 Fix the conflict2.test module which was broken by check-in [e30062e9f6c].
FossilOrigin-Name: b779ca8a7580e2a0bb1176316c4540867b635229
2016-01-04 13:06:53 +00:00
drh
fa385edff3 A new approach to very large sqlite3_mprintf() strings: Back out the
[d655a665] check-in and instead make the size fields in StrAccum unsigned.
Strings generated by sqlite3_mprintf() can now be as large as 2^31-1 bytes.

FossilOrigin-Name: 7adb789f45698e5569b840d23f3f9488db3ed109
2016-01-04 12:07:27 +00:00
drh
cc54f43442 Improved comment on the vtabH-3.1 test.
FossilOrigin-Name: 22abe08038cc7b66cbc25e733246d210197c9215
2016-01-04 04:44:31 +00:00
drh
5a60c7d142 Adjust the vtabH.test module to ignore files in the root directory of Windows
machines that contain the "$" character.

FossilOrigin-Name: 73e3355004b8b7ce2e1bb937725f429795528a4f
2016-01-04 04:41:13 +00:00
drh
7f10579a82 Add releasetest.tcl cases for SQLITE_LIKE_DOESNT_MATCH_BLOB and
for SQLITE_ENABLE_CURSOR_HINTS.

FossilOrigin-Name: f300c35efa5f7383b2a74b1c9466c243c17815e4
2016-01-04 01:08:50 +00:00
drh
dc0b1f1c29 Bug fix: the conflict resolution behavior for the implied NOT NULL constraint
on the PRIMARY KEY of a WITHOUT ROWID table should be ABORT.

FossilOrigin-Name: e30062e9f6cae980150dda7df440b36dfdcb7bbe
2016-01-03 18:07:57 +00:00
drh
573d88e8ed Add the number of cores used and the name of the host computer to the
summary at the end of releasetest.tcl.

FossilOrigin-Name: cd3ae0f14c6b28b328b208431d0effcb7b062ec6
2016-01-03 11:17:04 +00:00
drh
bdfa1b94e9 Fix the ieee754.test module so that it works both on systems that report
infinity as "inf" and as "Inf".

FossilOrigin-Name: d41d4d7396fba60895535f21c438f8c75e7b2097
2015-12-31 22:29:36 +00:00
drh
ff135ae4c3 Add the json_group_array() and json_group_object() aggregate functions to
the JSON1 extension.

FossilOrigin-Name: 7f386a9332237100a345035ca213327e21d95855
2015-12-30 01:07:02 +00:00
drh
caeca516a7 Enhance the 'utc' modifier on date/time functions so that if the LHS is
already known to be in UTC, the modifier becomes a no-op.  This is not an
incompatibility because the behavior is documented as "undefined" in that
scenario.

FossilOrigin-Name: b910a3d53769689d9212a06f974ccce54844bbe4
2015-12-23 10:54:48 +00:00
drh
1c75c9d7f1 Ensure that the Expr objects that describe indexed expressions are not modified
by code generation.  Fix for an assert() problem found by Jon Metzman using AFL.

FossilOrigin-Name: 34073ce87d88a02313217023ae92e15939192cd9
2015-12-21 15:22:13 +00:00
drh
1db0a72be2 Fix the spellfix1_scriptcode() function to ignore whitespace and punctuation,
and to recognize hebrew and arabic scripts.

FossilOrigin-Name: 7adfa4a5794e47f97491c08abeaaac90e826b331
2015-12-17 14:18:21 +00:00
dan
b1d6b53694 Add a missing memAboutToChange() macro to vdbe.c, the lack of which was causing an assert() to fail incorrectly. Problem found by libfuzzer.
FossilOrigin-Name: 1a24791109da607d502ac41f179fe6c1dc46c774
2015-12-14 19:42:19 +00:00
drh
68d28ea4f0 Disable the snapshot test scripts if not compiled with SQLITE_ENABLE_SNAPSHOT.
FossilOrigin-Name: 5fd008f0433833e4341d526dcc2387570ffe1fea
2015-12-11 03:20:39 +00:00
dan
7116dc60dc Update the sqlite3_snapshot_get() API so that if the caller does not have an open read transaction on the named database, one is automatically opened.
FossilOrigin-Name: b9c90f10297d8516a661449e8af898e682c930aa
2015-12-10 20:03:08 +00:00
dan
745c14eb15 Add tests to snapshot.test.
FossilOrigin-Name: f3b743623a4501833478c8a86c0922931955aeb6
2015-12-10 19:44:34 +00:00
dan
a7aeb39836 Return SQLITE_BUSY (not SQLITE_BUSY_SNAPSHOT) if sqlite3_snapshot_open() fails to obtain the shared checkpointer lock.
FossilOrigin-Name: 5343060bcc6c99029f731f8020d2cba3f405f207
2015-12-10 19:11:34 +00:00
dan
7d15979420 Add tests to ensure that an sqlite3_snapshot_open() client cannot be tricked into reading a corrupt snapshot even if another process fails mid-checkpoint.
FossilOrigin-Name: b908048b6cfa1ee2fe1f7a17bae475ddd9d0376c
2015-12-10 18:06:21 +00:00
dan
3bf83ccd70 Have sqlite3_snapshot_open() avoid a race condition by taking a shared CHECKPOINTER lock while checking pInfo->nBackfillAttempted.
FossilOrigin-Name: 8084eae0bc4f6513b1147fb890a6b2813f1c0a09
2015-12-10 15:45:15 +00:00
dan
65127cd57d Update sqlite3_snapshot_open() to reduce the chances of reading a corrupt snapshot created by a checkpointer process exiting unexpectedly.
FossilOrigin-Name: 7315f7cbf4179aadda0f1a0baa1526a9b9f9729f
2015-12-09 20:05:27 +00:00
drh
ee3b7a2767 Merge unrelated fixes from trunk.
FossilOrigin-Name: 362615b4df94358d0264b0991c3090a0878f054c
2015-12-09 16:04:06 +00:00
drh
92a8277149 Add a test case of the form "WHERE a<2 OR a<3" using PRAGMA count_changes.
This test case was failing before the 3.9.0 release.

FossilOrigin-Name: 177862c1d50ba899d890fbc35f35e7423bc6aed5
2015-12-08 04:18:33 +00:00
dan
818b11aebb Add tests for snapshot_get(), _open() and _free().
FossilOrigin-Name: 502cc6f353358946080d9bcd335aed526825b88a
2015-12-07 14:33:07 +00:00
drh
28a6a1168b Remove the dependence on "exec ls -U" from the vtabH.test module, as the -U
option to "ls" is not universally available.

FossilOrigin-Name: 4ecbc75b465533cf80e166a9d0879b9afd3fe2be
2015-12-04 13:44:07 +00:00
drh
15427279c8 Fix typos in requirements text and update requirements marks. No changes
to code.

FossilOrigin-Name: 8534a46c06601ad35b97caee442371f24c718d0f
2015-12-03 22:33:55 +00:00
dan
5fcc1ba4e7 Fix threadtest3 so that it builds using the autoconf build system.
FossilOrigin-Name: d96de532cc4a192cfebae900701dcee0a7d29273
2015-12-03 12:01:54 +00:00
dan
48c06f32ca Improve concurrency in test_multiplex.c. Add a switch to "threadtest3" allowing it to run using the multiplexor VFS.
FossilOrigin-Name: 9d2c62b04e3a9ac5d9adea2aac7ec3f3bc3e88bd
2015-12-03 11:51:18 +00:00
drh
c18ed977e8 A unix VFS change replaces fsync() with fstat() when using SQLITE_NO_SYNC, so
set PRAGMA synchronous=OFF in the sysfault-3 test to avoid erroneously causing
errors in xSync.

FossilOrigin-Name: 4f7f355021f9eb048fffc84e559bfb3fdb1e1e69
2015-12-03 01:48:32 +00:00
dan
9a8941fc83 Have the sqlite3_column_decltype() API report the declared types for the left-most SELECT statement in a compound SELECT.
FossilOrigin-Name: 3e1d71fcaf57c0223ab9a7366c8607f8f66bb21c
2015-12-02 18:59:44 +00:00
drh
41d2e66ef3 Add the SQLITE_LIKE_DOESNT_MATCH_BLOBS compile-time option.
FossilOrigin-Name: 9e1d6d4c391ff90077f0d1cdeb567969fee9f747
2015-12-01 21:23:07 +00:00
mistachkin
92af1ebc75 Add experimental support for the 'test_fs' test module on Win32.
FossilOrigin-Name: f3ffb3aeea95712e92919fd5071741327add9643
2015-11-30 23:29:07 +00:00
drh
025d2f7ad8 Fix a problem in xFullPathname for the unix VFS. The problem was found by
Kostya Serebryany using libFuzzer.

FossilOrigin-Name: bb1e2c4df0b81327923f121dd6c002845486a314
2015-11-30 22:22:23 +00:00
drh
f8b0be48d1 Fix the threadtest3 test program so that it works with VFSes that omit the
xCurrentTime() method and supply only xCurrentTimeInt64().

FossilOrigin-Name: 3b155855f3d5918f1df7dbd19783215b3da0ca3e
2015-11-30 19:15:25 +00:00
dan
d6b459c996 Add the "colUsed" field to the sqlite3_index_info structure passed to virtual table xBestIndex methods. To indicate the subset of the virtual table columns that may be required by the current scan.
FossilOrigin-Name: 47f10b7e5d8c1d965df891990090623444933cc9
2015-11-30 12:01:37 +00:00
drh
ecf0c275bb Disable testing with SQLITE_USER_AUTHENTICATION as the makefiles are not set
up to do that.

FossilOrigin-Name: 14bbcdc64ecc21f47aed8935858788928ca63107
2015-11-28 17:38:22 +00:00
dan
1acb539f4c Add the "colUsed" field to the sqlite3_index_info structure passed to virtual table xBestIndex methods. To indicate the subset of the virtual table columns that may be required by the current scan.
FossilOrigin-Name: 116b206494eb8ba963c7c5acfbf9e7b6db11c79c
2015-11-26 19:33:41 +00:00
dan
fab1d401f8 Fix a problem with the userauth extension and no-authentication databases. Run the tests for this extension as part of the Debug-One module in releasetest.tcl.
FossilOrigin-Name: 8b15621952889b4ba53b2ea3171fef7ef0479ddb
2015-11-26 15:51:55 +00:00