]>
git.ipfire.org Git - thirdparty/sqlite.git/log
dan [Fri, 10 Nov 2017 20:13:14 +0000 (20:13 +0000)]
Omit some extra code from non-SQLITE_ENABLE_UPDATE_DELETE_LIMIT builds.
FossilOrigin-Name:
72be33f9c84de3ec4afc40549482417456ca82c1d16b473dc034b144055271e5
dan [Fri, 10 Nov 2017 17:47:54 +0000 (17:47 +0000)]
Add further tests for the code on this branch.
FossilOrigin-Name:
f8c4e33f4813e0c909064406b5cc17e2d465d8a48a50ede1d356b39479d3d669
dan [Fri, 10 Nov 2017 16:14:26 +0000 (16:14 +0000)]
Fix a problem involving "DELETE/UPDATE...LIMIT" statements that use an INDEXED
BY clause.
FossilOrigin-Name:
09f94c2c8199b0d23a45cc062ca9561f9e5ddfcba117100e41889ce199d21bdb
dan [Fri, 10 Nov 2017 15:42:21 +0000 (15:42 +0000)]
Fix a problem with (DELETE...LIMIT) statements against WITHOUT ROWID tables
with a single column PK.
FossilOrigin-Name:
35477a3dcceadf5dade8e036d5a2ce91b9ca83c4b85d309db233bdbcf538b1cc
dan [Thu, 9 Nov 2017 19:53:06 +0000 (19:53 +0000)]
Add SQLITE_ENABLE_UPDATE_DELETE_LIMIT for views and WITHOUT ROWID tables.
FossilOrigin-Name:
584b88aaf89ab30cb51185396b7b50c6ecba286add023a26ab41d865b9c605ce
drh [Thu, 9 Nov 2017 03:55:09 +0000 (03:55 +0000)]
Disallow ORDER BY and LIMIT on UPDATE and DELETE of views and WITHOUT ROWID
tables. This is a temporary fix for ticket [
d4beea1633f1b88f ] until a better
solution can be found.
FossilOrigin-Name:
62fe56b59270d9d7372b1bb8a53788a40d20d0f111fe38c61dd6269848592c70
dan [Wed, 8 Nov 2017 11:14:53 +0000 (11:14 +0000)]
Fix a problem causing LSM to add unnecessary padding to empty segments in
compressed databases.
FossilOrigin-Name:
1bc2d04645c5239ba9a30a13f6fb3c8cc46461c864e7927012bc0ad305eb705e
drh [Wed, 8 Nov 2017 02:50:09 +0000 (02:50 +0000)]
Improved comments used for documentation of sqlite3_vfs. No changes
to code.
FossilOrigin-Name:
db8f22d069b1725f16b208c96c0c47b6ab0e30236feeac43cca4217ef80316b8
dan [Tue, 7 Nov 2017 19:02:00 +0000 (19:02 +0000)]
Fix handling of partial indexes in checkindex.c (sqlite3_checker).
FossilOrigin-Name:
31932a9eb8dbb33d5535715ae8bbfdc55ce66b1a1a0abd57cefe720eeb31e231
dan [Tue, 7 Nov 2017 18:20:15 +0000 (18:20 +0000)]
Fix a problem causing an INDEXED BY specifying an unusable partial index to be
mishandled.
FossilOrigin-Name:
292a04086a902634fc514b379a2b245eb2681c1b84d9bb950b6ecb9aab28b468
drh [Tue, 7 Nov 2017 16:54:20 +0000 (16:54 +0000)]
Add the --trace option to the sqlite3_checker utility program.
FossilOrigin-Name:
dc217b7cfe680044d8742e317701abd0269162da8f5cb097361ae7f47fd9ba2d
drh [Tue, 7 Nov 2017 16:23:24 +0000 (16:23 +0000)]
Enhance the checkindex.c virtual table so that it will output the
index_name and after_key parameters. Also add a new diagnostic output
column named scanner_sql which shows the SQL statement used to implement
the current index scan.
FossilOrigin-Name:
32e2520ce91351acceda845d81c9567f7a634257dc2b5b90fe6fb6583d8c0f87
drh [Mon, 6 Nov 2017 09:34:45 +0000 (09:34 +0000)]
Fix a harmless compiler warning from Xcode 9.1.
FossilOrigin-Name:
66d98310b91c69fd01c6a9a958ef1eabda14ec6cd0e4b6612f877f2dfe486c54
dan [Sat, 4 Nov 2017 08:53:37 +0000 (08:53 +0000)]
Fix an LSM problem with read-only connections and compression (not
compression-factory) callbacks.
FossilOrigin-Name:
51ee5188b03c4b9508e94afaee4bf1f224aef28875efabda8ce09a5ab641d99e
drh [Fri, 3 Nov 2017 08:46:48 +0000 (08:46 +0000)]
The extensions functions in spellfix are all deterministic.
FossilOrigin-Name:
29ec855e13e0dcd675dcf12948b42f9e669d0a31c5d9efb95857888aba0beeee
mistachkin [Fri, 3 Nov 2017 06:45:37 +0000 (06:45 +0000)]
drh [Wed, 1 Nov 2017 19:58:25 +0000 (19:58 +0000)]
Fix harmless compiler warnings in sqlite3_checker.exe
FossilOrigin-Name:
491f867b377b3b9e00bd713fb07df00207673f9eca0e7d5b7af7974082c8e3f0
drh [Wed, 1 Nov 2017 19:50:11 +0000 (19:50 +0000)]
Make sure the JSON1 extension is available to sqlite3_checker.exe
FossilOrigin-Name:
a946a8ed46ba76b9a09bcbac58000d3d92db1f08a98f6cc12365be696d8921de
drh [Wed, 1 Nov 2017 19:44:19 +0000 (19:44 +0000)]
Add the checkindex.c extension and the sqlite3_checker utility program used
for doing live validation of large databases.
FossilOrigin-Name:
0c5d18a01ec77f784d5434c5465ab8da9a0c365a58d4bd8551872ca90aaf42d6
drh [Wed, 1 Nov 2017 19:22:08 +0000 (19:22 +0000)]
Adjust page numbers in the ext/repair/test/checkfreelist01.test module due to
the fact that the pending-byte page is no longer shifted down to a low-numbered
page but is in its rightful place.
FossilOrigin-Name:
c1641affae31a4350727ce940c92499263880e672dc2c3f47e78e1c23ae99b78
drh [Wed, 1 Nov 2017 18:31:34 +0000 (18:31 +0000)]
Add the "sqlite3_imposter DB SCHEMA ROOT SQL" command to sqlite3_checker.
Use it to fix the checkindex01.test module. There are still errors reported
by the checkfreelist01.test module.
FossilOrigin-Name:
0593a2ba74c886afe8a65cea1310025bb9777c320d093278044719210c9f6ba2
drh [Wed, 1 Nov 2017 18:05:32 +0000 (18:05 +0000)]
Move the test scripts for checkfreelist and checkindex over into the
ext/repair/test directory. Run them now using the sqlite3_checker utility
with the --test option. Some tests are currently failing due to an
incomplete port. This is an incremental check-in.
FossilOrigin-Name:
17f8d5e111a9fe5b074f946e23936ae5a2a7a8d8018bad4212660d8eb81c04b7
drh [Wed, 1 Nov 2017 13:09:02 +0000 (13:09 +0000)]
Minor cleanup in checkindex.c. Add progress displays when checking a
single index in the top-level TCL script for sqlite3_checker.
FossilOrigin-Name:
3ca31cc3ffe1cce4a9961d29801eebd47f0093d1b53d0ea63386338a1d434fd3
drh [Wed, 1 Nov 2017 01:05:41 +0000 (01:05 +0000)]
When sqlite3_checker finds a problem, show the row key as part of the error
message, not the row index number.
FossilOrigin-Name:
6ffe917d10e298cd80cd3a8c8c5116a2819145a176fb8cfccd5dbd88b10f39df
drh [Wed, 1 Nov 2017 01:01:20 +0000 (01:01 +0000)]
Actually perform index checks when running sqlite3_checker
FossilOrigin-Name:
54530020260ea9e4cfd021f5ffccb74d78c469b717dce377d3df6eaf84b63719
drh [Wed, 1 Nov 2017 00:10:34 +0000 (00:10 +0000)]
Begin putting functionality into the sqlite3_checker binary.
FossilOrigin-Name:
e82e883b93128e4d1105a82abe8d1860c0a15505b6ca421e187b9bbbc2fdc659
drh [Tue, 31 Oct 2017 18:15:36 +0000 (18:15 +0000)]
drh [Tue, 31 Oct 2017 18:09:40 +0000 (18:09 +0000)]
Add the checkfreelist extension to the sqlite3_checker binary.
FossilOrigin-Name:
0c22f0d6d19e595c0577b0bad416522e71647f54d2eb5cda587e2ccc5f63dd6a
drh [Tue, 31 Oct 2017 15:55:48 +0000 (15:55 +0000)]
Fix an error in the Makefile.msc for the sqlite3_checker.exe target.
FossilOrigin-Name:
49d0c6f1f62dccc3c4609760950f7b28bf94a9520996a80d10ff45096b0dd9a0
drh [Tue, 31 Oct 2017 15:49:19 +0000 (15:49 +0000)]
Add build infrastructure for the sqlite3_checker command-line utility.
FossilOrigin-Name:
429e3c3c85d6b677038be93567f93e69eb756442bb421bb02ee5d5d69290fa09
drh [Tue, 31 Oct 2017 14:56:44 +0000 (14:56 +0000)]
Update the built procedures for the sqlite3_analyzer utility to allow it
to be linked with an external sqlite3.o library. Automatically detect a
missing dbstat extension and report the compile-time error.
FossilOrigin-Name:
bb39744f4b2b25c10d293e85db7579e2a99c639fdab45e93d1de75952b68b2de
drh [Tue, 31 Oct 2017 12:20:43 +0000 (12:20 +0000)]
Fix redundancies in the makefiles that resulted from moving shell.c over
to shell.c.in.
FossilOrigin-Name:
bf09fa683ea42b7552bd2f29ab5371bd175f0055cf9a453e6f8c6f4408cd168f
drh [Tue, 31 Oct 2017 12:06:29 +0000 (12:06 +0000)]
Fix a minor comment typo. No changes to code.
FossilOrigin-Name:
5f79e6d9c3d44b0cc7cf805429006f7b29a69e8d863b58472172a56b29a7bb4e
dan [Tue, 31 Oct 2017 12:01:01 +0000 (12:01 +0000)]
Fix a couple of issues in incremental_index_check to do with CREATE INDEX
statements that contain embedded SQL comments.
FossilOrigin-Name:
2aef41815a9f1786ebdf09d8f6cfa59a8e7d733253eafeae24fa6e2a093bb1d8
drh [Tue, 31 Oct 2017 03:40:15 +0000 (03:40 +0000)]
Remove unnecessary NEVER() and ALWAYS() conditionals.
FossilOrigin-Name:
1c80c75d4be2f3d44fb18bb4c07eccac2aba79b688215a741317dfc47dc7c2ce
drh [Mon, 30 Oct 2017 23:25:06 +0000 (23:25 +0000)]
Add the showshm utility program for printing out the shm header in a
human-readable format.
FossilOrigin-Name:
f6304fd142c998aba44f02c6018223af2630671b4791d750b70a59ab1adb8d6d
drh [Mon, 30 Oct 2017 20:44:36 +0000 (20:44 +0000)]
Clarify some comments describing the WAL index file. No changes to code.
FossilOrigin-Name:
3be3aad9ecbe33060cfa9c6059b9206ed221d1fd72a69c355a9387f9f4e075e7
dan [Mon, 30 Oct 2017 19:38:41 +0000 (19:38 +0000)]
Add support for indexes on expressions to incremental_index_check.
FossilOrigin-Name:
8c1c701fdbe0d56ee7f6f7d7b583aafde9fa14acc93ee8ecaddc8bb311e2bf52
drh [Mon, 30 Oct 2017 18:49:11 +0000 (18:49 +0000)]
Improve the performance of the LIKE operator by using strcspn() to aid
wildcard matching.
FossilOrigin-Name:
37284d4e8f501a37c582aa899419a3dfe0932e2a8e2ef2fdf59addd1d3cdacb4
dan [Mon, 30 Oct 2017 17:05:18 +0000 (17:05 +0000)]
In checkindex.c, use C code instead of SQL/group_concat() to compose various
SQL clauses. This is to make it easier to support indexes on expressions.
FossilOrigin-Name:
940606b3af059eb3f79d71fec871ea88df8bce0349f5b33b79c147a85610e269
dan [Mon, 30 Oct 2017 08:04:38 +0000 (08:04 +0000)]
Fix an issue in incremental_index_check with indexes that use non-default
collation sequences.
FossilOrigin-Name:
3ebb2351e2650d263029d2c0042683cba3529c9d3f76b5f994f2e737b84d3f67
drh [Sat, 28 Oct 2017 20:54:51 +0000 (20:54 +0000)]
Increase the version number for the next release - which is still months
away but there have been significant query planner enhancements since the
previous release.
FossilOrigin-Name:
457eedfac0ff652912c4cfb89682acb3d2e372ef00745139adf8492a0b61fa09
drh [Sat, 28 Oct 2017 20:51:54 +0000 (20:51 +0000)]
Reactivate query flattening when the result set of the outer query has
no function calls or subqueries. This is a partial reversal of
check-in [
c9104b59 ]. Co-routines are still preferred if the outer
query has a complex result set, but for simple results sets, query flattening
is used. Check-in [
4464f40ccd7 ] is completely backed
out due to this change.
FossilOrigin-Name:
d17ef7d153058f7332b3fec421ade42c67e26b06f36fc1629e6799537a5afc5f
dan [Sat, 28 Oct 2017 20:31:25 +0000 (20:31 +0000)]
Fix "after" parameter handling in the incremental_index_check code.
FossilOrigin-Name:
c40c3c62e996044f31ca49ffc2edb2cc0320e69956f7ee6fe3e9012200e0d9a0
drh [Sat, 28 Oct 2017 12:20:09 +0000 (12:20 +0000)]
Add test cases from OSSFuzz to prevent a regression in co-routine
processing.
FossilOrigin-Name:
689743d8e3fa81e65dcb067bbf61bab09210b3b39586c865c00d9f1d6692daf2
dan [Fri, 27 Oct 2017 20:53:16 +0000 (20:53 +0000)]
Add the start of the "incremental_index_check" virtual table in
ext/repair/checkindex.c. For incremental verification of index contents.
FossilOrigin-Name:
d5b9dada471358a2864727759648b763bf6890fc2521fac53c0d8216017d39b7
drh [Fri, 27 Oct 2017 18:24:11 +0000 (18:24 +0000)]
Fix a Pager ref-count leak in the sqlite_dbpage virtual table.
FossilOrigin-Name:
c063bb04da77d6847e4e254b6bb939c860e781382e34ddff8e0454d9db7552e2
mistachkin [Fri, 27 Oct 2017 17:09:44 +0000 (17:09 +0000)]
Handle the Ctrl-C event for the shell on Win32.
FossilOrigin-Name:
c8aaf37117ed4a23bbd15dc481788735efcb77bff98be423eca3521c0a9270de
drh [Fri, 27 Oct 2017 12:27:25 +0000 (12:27 +0000)]
Additional test case demonstrating the ability to access structure elements
using quoted names in the JSON1 extension.
FossilOrigin-Name:
8d3cc928a8f0c7b2616c5c75af9d3a50bd4f0fe8e4ccab545ab8648cbfbb4b7f
drh [Thu, 26 Oct 2017 20:04:28 +0000 (20:04 +0000)]
Enhance the min/max optimization so that it works with indexes on
expressions.
FossilOrigin-Name:
6caec9082b3ad6d3f89f6291084a8f5c80f296630e2e94bc764389ac1a47a833
drh [Thu, 26 Oct 2017 18:43:19 +0000 (18:43 +0000)]
Extra ".selecttrace" output following aggregate analysis. No changes to
production builds.
FossilOrigin-Name:
6fbf74ab3189b9cb20cf7cc8db0226eb935a8eab477cc83b8390492fcf2f1f76
dan [Thu, 26 Oct 2017 15:21:56 +0000 (15:21 +0000)]
Fix a bug causing "make amalgmation-autoconf" to create an invalid package if
either the current or parent directory contains a file named install.sh or
install-sh.
FossilOrigin-Name:
e1faa7859451ee969f0ce02d2d4e4c54d0e2e018b37b8faf690e6b87593cce7d
drh [Wed, 25 Oct 2017 19:18:33 +0000 (19:18 +0000)]
Fix the sqlite3_dbpage virtual table so that it can read and write from
any attached database.
FossilOrigin-Name:
d4f893e1ae53a0445939ea2920af87d21dd36270494381028b2eaebe5c188f18
dan [Wed, 25 Oct 2017 18:17:24 +0000 (18:17 +0000)]
Add tests cases and fix minor issues in the rtreecheck() function.
FossilOrigin-Name:
d6130cd226c0ca95e02f0cbabfdc27071acdcf83e0d0cb0eaa47d992479ed9a1
mistachkin [Wed, 25 Oct 2017 18:01:58 +0000 (18:01 +0000)]
Add SQL scalar function rtreecheck() to the rtree module. For running checks to ensure the shadow tables used by an rtree virtual table are internally consistent.
FossilOrigin-Name:
7d26498063bbc4525976ace698fafcf161d939908f4ffb36d7a4df8fb1bce1fb
mistachkin [Wed, 25 Oct 2017 18:00:58 +0000 (18:00 +0000)]
Fix compilation issue (C99-ism) seen with MSVC.
FossilOrigin-Name:
61870b42b033189509b244c76d28932f7a447b887ffe04a3c81461148e54cfb5
dan [Wed, 25 Oct 2017 16:38:34 +0000 (16:38 +0000)]
Add SQL scalar function rtreecheck() to the rtree module. For running checks
to ensure the shadow tables used by an rtree virtual table are internally
consistent.
FossilOrigin-Name:
dde0bb3eab1316c3247b1755594527ca70955aab4ad4907190731f7ec092b327
drh [Wed, 25 Oct 2017 16:14:12 +0000 (16:14 +0000)]
Do not reference the ioctl() system call in the unix backend unless it
is actually needed by the Batch Atomic Write extension. This should allow
the build to work on VxWorks.
FossilOrigin-Name:
adfa7ed2de3e833fff65935455e71236a59602aaf7b97ece667ab300dca9f673
drh [Wed, 25 Oct 2017 01:34:24 +0000 (01:34 +0000)]
Add the sqlite_btreeinfo eponymous-only table for introspecting the schema
and estimating the sizes of various btrees.
FossilOrigin-Name:
1e30f4772db1e1086096f72d32e87c552923be8b264aa13cf822fae754eb083d
mistachkin [Tue, 24 Oct 2017 21:17:12 +0000 (21:17 +0000)]
Force the autoconf makefile for MSVC to always use the 'find.exe' included with Windows.
FossilOrigin-Name:
b76bffd332585e8412a0a994ae6dee79a83213d8b709d7f858c5c05678ab0887
drh [Tue, 24 Oct 2017 19:05:26 +0000 (19:05 +0000)]
Merge all of the fixes from the 3.21.0 release.
FossilOrigin-Name:
5ab662b443df17c5ebdadc0bdac2f447c5c7e86f7a32a6943bb4ac8605879441
drh [Tue, 24 Oct 2017 18:55:49 +0000 (18:55 +0000)]
dan [Tue, 24 Oct 2017 17:28:25 +0000 (17:28 +0000)]
Fix a problem in the incr-blob code causing a new cursor to be opened for
every sqlite3_blob_reopen() call.
FossilOrigin-Name:
41ef34a1f0650c50cacb203665cd9d57db53a49c979bf0d5a78937517f763a2c
drh [Mon, 23 Oct 2017 21:24:38 +0000 (21:24 +0000)]
On the amalgamation package, enable the sqlite_dbpage virtual table so that
the .dbinfo command works in the CLI.
FossilOrigin-Name:
54b90b4f27f6f213825e881929fa04a6282e5b909a12e881366f9aef6872dcb6
dan [Mon, 23 Oct 2017 20:20:42 +0000 (20:20 +0000)]
Merge trunk fixes to swarmvtabfault.test and the lsm extension into this
branch. No changes to core SQLite code.
FossilOrigin-Name:
f632b87002a7ee9be569aacb5ce85bb7e9c86b7d77bb8d1bf8b55eb5be4ecc77
mistachkin [Mon, 23 Oct 2017 20:17:19 +0000 (20:17 +0000)]
In the 'swarmvtabfault' test module, make sure to close the database handle prior to raising an error from the 'not found' callback script.
FossilOrigin-Name:
f317037b31b19007e30bb41c54506d9d241a6d590c2b31e2ddda10d4f6e7605b
mistachkin [Mon, 23 Oct 2017 17:36:52 +0000 (17:36 +0000)]
Cleanup a test database file prior to using it.
FossilOrigin-Name:
e1bf5e1d06dbe573671c6b5472b45f5bfa3cf82374f70a76b4c80815bf15a29b
drh [Mon, 23 Oct 2017 16:34:07 +0000 (16:34 +0000)]
Updates to test procedures so that they all work with encryption. No changes
to the core SQLite code.
FossilOrigin-Name:
0481330756e861de8e1eb7136e7dca2f333b2a82377949d2e0eba401af7d73dd
dan [Mon, 23 Oct 2017 16:03:54 +0000 (16:03 +0000)]
Avoid passing a NULL value as the second argument to memcpy().
FossilOrigin-Name:
58e5bb491bc0e28412ca188ba8fbe94adc67b5b1e9d7c112c36011400528d577
dan [Mon, 23 Oct 2017 11:48:00 +0000 (11:48 +0000)]
In lsm (not SQLite), avoid opening the *-shm file before the database file is
locked. Otherwise, there is a race condition whereby a connection in another
process process may unlink() it while it is still in use.
FossilOrigin-Name:
c8b8b9b573665c2b4d278bb679a48ac407374b8d860f0c3f4d50a303043464ad
dan [Mon, 23 Oct 2017 07:53:00 +0000 (07:53 +0000)]
Fix minor test script problems revealed by releasetest.tcl.
FossilOrigin-Name:
c333ee7e9677bda1dad8e80cf94755350bfe20bc0754577442727b6f807ad831
dan [Mon, 23 Oct 2017 07:52:07 +0000 (07:52 +0000)]
Fix minor test script problems revealed by releasetest.tcl.
FossilOrigin-Name:
15e87d9bc81812fb9de86f9870389217dddb9f9c4d48e42acefce2d35ba293f1
dan [Sun, 22 Oct 2017 08:03:39 +0000 (08:03 +0000)]
Fix test cases in dbpage.test so that they work with
SQLITE_DEFAULT_AUTOVACUUM=1 builds.
FossilOrigin-Name:
9474f061d634721ca462bbad375270b8b39dea44011df3e1aac72021e8bf70fc
dan [Sun, 22 Oct 2017 08:02:56 +0000 (08:02 +0000)]
Fix test cases in dbpage.test so that they work with
SQLITE_DEFAULT_AUTOVACUUM=1 builds.
FossilOrigin-Name:
0fcf1e61ef2b6c1fb8f4846f973d2d427598ffbc80dbc49e56e71513b194bae7
dan [Sun, 22 Oct 2017 07:58:09 +0000 (07:58 +0000)]
Avoid running tests that use sqlite_dbpage with SQLITE_OMIT_VIRTUAL_TABLE
builds.
FossilOrigin-Name:
6dde8d6154c5b4d36c7aad17d6eaafdb13c66a09d17d4c79f52b2417846ea0b5
dan [Sun, 22 Oct 2017 07:57:29 +0000 (07:57 +0000)]
Avoid running tests that use sqlite_dbpage with SQLITE_OMIT_VIRTUAL_TABLE
builds.
FossilOrigin-Name:
7bd20a20a0f422765a6e469d1a1b67b95c4a441931688e04a2b1b491a5238528
drh [Sat, 21 Oct 2017 17:17:17 +0000 (17:17 +0000)]
Merge all the enhancements and bug fixes from trunk, since none are
destablizing. Call this the second beta.
FossilOrigin-Name:
fb3ee1b7cac09e4950e4f48b44c277e4f391cb6c8f069644732d2389ca653da4
drh [Sat, 21 Oct 2017 14:17:31 +0000 (14:17 +0000)]
Catch and avoid a 16-bit integer overflow on the number of columns in a
common table expression. This fixes a problem found by OSS-Fuzz. The
test case is in TH3.
FossilOrigin-Name:
6ee8cb6ae5fd076ec226bb184b5690ba29f9df8cfaef47aaf13336873b4c1f6c
drh [Sat, 21 Oct 2017 13:29:26 +0000 (13:29 +0000)]
Remove unnecessary "#if SQLITE_MAX_COLUMN". SQLITE_MAX_COLUMN is always
defined.
FossilOrigin-Name:
6ec82acde81a46a75ed5931fc7dd813f2523753106ad7b8f0b544b9da9824d5a
dan [Thu, 19 Oct 2017 15:17:38 +0000 (15:17 +0000)]
Take extra care to avoid an OOB read caused by a corrupt b-tree page.
FossilOrigin-Name:
04925dee41a21ffca9a9f9df27d8165431668c42c2b33d08b077fdb28011170b
dan [Wed, 18 Oct 2017 15:02:01 +0000 (15:02 +0000)]
Avoid using snprintf as a member variable of a struct in sqlite3ext.h. This
causes problems on OSX. Similar to fix [
a1fd3aa8 ].
FossilOrigin-Name:
cd0471ca9f75e7c8be74536ff4ec85b5d70f0d7994b680ed5f45b9f12a46cf46
dan [Wed, 18 Oct 2017 14:29:36 +0000 (14:29 +0000)]
Avoid using snprintf as a member variable of a struct in sqlite3ext.h. This
causes problems on OSX.
FossilOrigin-Name:
b066d5a69f5391b2cef04b4e288f7d33e63a4ff54325b7e9fbd6aa42529c2f3c
mistachkin [Tue, 17 Oct 2017 18:33:22 +0000 (18:33 +0000)]
The source code files generated for the 'sqlite3-all.c' target should not have Windows line-endings.
FossilOrigin-Name:
6a08c43431be18a08bdcbf33d327513f72fff72dac5d02103dab8399d8c3d668
drh [Tue, 17 Oct 2017 13:44:46 +0000 (13:44 +0000)]
Fix the ".check" command of the command-line shell to return 1 (error)
rather than 2 (exit) on a test failure.
FossilOrigin-Name:
e2af0cc6ef5fafc785b8b73f51995901f50822972dcfb632494e22402596186d
drh [Mon, 16 Oct 2017 11:50:12 +0000 (11:50 +0000)]
Improved comments, including a typo fix, on the whereLoopCheaperProperSubset()
function.
FossilOrigin-Name:
700a3c694438ca6cca185d0097f24799e82717ef38cb47bd83666c80f0e3cb2f
drh [Sun, 15 Oct 2017 22:16:25 +0000 (22:16 +0000)]
In the query planner, do not consider index X to be a proper subset of
index Y if X is a covering index but Y is not.
FossilOrigin-Name:
ee31c04353cd75ea4bbadee2994c30d3808b696a4f680187502d104902988a5d
mistachkin [Sat, 14 Oct 2017 19:58:37 +0000 (19:58 +0000)]
mistachkin [Sat, 14 Oct 2017 19:54:06 +0000 (19:54 +0000)]
drh [Fri, 13 Oct 2017 20:14:06 +0000 (20:14 +0000)]
Improved ability to generate stand-alone program using TCL and SQLite by
compiling with -DTCLSH_INIT_PROC=name to cause the TCL interpreter to be
initialized using procedure name(). Both sqlite3_analyzer and testfixture
are now built this way.
FossilOrigin-Name:
d65d1f297ddb07b799ff5b2e560575fc59a6fa74c752269cc85ab84348fb7da4
drh [Fri, 13 Oct 2017 18:58:55 +0000 (18:58 +0000)]
Add the tcl/mkccode.tcl script used to construct a single C-language source
fiel for programs that combine C-code, SQLite, and TCL. Use this script to
construct the sqlite3_analyzer program.
FossilOrigin-Name:
298a3fddec459c4fd2b840bd363239dc627f1dda90e2d5e478846cb895a8ad82
drh [Fri, 13 Oct 2017 16:19:48 +0000 (16:19 +0000)]
Move a bunch of unrelated test code out of tclsqlite.c and into
test_*.c files. There is still some test code in tclsqlite.c, but the amount
is greatly reduced.
FossilOrigin-Name:
a9c4bc88fcf985a0bea14ed5381239cfb697886287998da04a10230b6858ab5d
drh [Fri, 13 Oct 2017 16:01:36 +0000 (16:01 +0000)]
The db_use_legacy_prepare command no longer exists. Use the undocumented
-use-legacy-prepare option to DB version instead.
FossilOrigin-Name:
ea2fa9ab9b3c97e001c1a2f3e24f3554b544070d5f915b9827eb07eb5ea8f00b
drh [Fri, 13 Oct 2017 15:56:26 +0000 (15:56 +0000)]
When compiling with SQLITE_TEST, extra options are available on the
"DB version" command for controlling the internal state of the SqliteDb
object, for testing purposes.
FossilOrigin-Name:
bf86478d9c6b899d6441e80cf9d17b58731e5d354e31b11f0d58a798f6fab896
drh [Fri, 13 Oct 2017 15:06:06 +0000 (15:06 +0000)]
Move some test logic out of tclsqlite.c and into auxiliary test_*.c files.
This is a work in progress.
FossilOrigin-Name:
95b7687fed75b32a62a0c62d397f4f543bf40095e13c22e15938d5dcfd71fcdf
drh [Thu, 12 Oct 2017 20:37:20 +0000 (20:37 +0000)]
Add the sqlite_dbpage virtual table (enabled using SQLITE_ENABLE_DBPAGE_VTAB).
Make that virtual table and dbstat available to the command-line shell.
FossilOrigin-Name:
eaeeb09d4aa1dbccdd2488af8461e2a8c8a53d92c63fd56330be041ad72a9e4a
drh [Thu, 12 Oct 2017 19:50:28 +0000 (19:50 +0000)]
Create the new ext/repair folder and move checkfreelist.c there. Remove
checkfreelist.c from the command-line shell (undoing check-in [
48418f2e ]).
FossilOrigin-Name:
dfdebd12bfc80b91d234ab328cb6106d5d37ccb79b58e36e556c1a8af640a4ab
drh [Thu, 12 Oct 2017 14:18:38 +0000 (14:18 +0000)]
Fix a harmless compiler warning about an unused parameter.
FossilOrigin-Name:
de20133d44773f0b3b8869db5c1cb2a90f0426a54c7f40d12a930003343ad8e0
drh [Thu, 12 Oct 2017 14:13:20 +0000 (14:13 +0000)]
Fix the "snapshot-tarball" makefile target, which was broken by the shell.c
change of check-in [
36acc0a9 ].
FossilOrigin-Name:
c643ace24c1936f9d2b16bd6d1d13cf08070dfe5b094208b638924e904915339
drh [Thu, 12 Oct 2017 14:03:09 +0000 (14:03 +0000)]
Merge fixes from trunk. All changes are on makefiles and test scripts.
There are no core code changes.
FossilOrigin-Name:
1fb87a0c6e4db1f8bf51d552d9af1252544b7d7bd2dd80f78870f3b4fd347bad
drh [Thu, 12 Oct 2017 13:47:48 +0000 (13:47 +0000)]
The src/shell.c file is now generated from src/shell.c.in, so remove shell.c
from version control and update the makefiles to build it automatically.
FossilOrigin-Name:
36acc0a97fdcc6f54f29c68c4e131702f69c3e59e58237ff4e5c647928699956