]>
git.ipfire.org Git - thirdparty/sqlite.git/log
drh [Thu, 4 Oct 2018 18:17:11 +0000 (18:17 +0000)]
The 0x8000 optimization flag associated with SQLITE_TESTCTRL_OPTIMIZATIONS
causes a large penalty (200) to be added to all sorting costs, which
encourages the query planner avoid using the sorter. This flag can be
used in experiments to help come up with a more accurate estimate of the
true cost of sorting.
FossilOrigin-Name:
857a1b01df45e30991510e57b7b195406fffe9c9c4c82cfd54dbd97c38820fb3
drh [Wed, 3 Oct 2018 18:05:36 +0000 (18:05 +0000)]
Add an ALWAYS on an unreachable branch in the ALTER TABLE logic.
FossilOrigin-Name:
ebcd4523171f0988ff08e2bf36fb8a0caa40efe7ac7556b4eb206784969b03e4
dan [Wed, 3 Oct 2018 11:13:30 +0000 (11:13 +0000)]
Change a type in shell.c.in from "int" to "sqlite3_int64" in order to
avoid a compiler warning and possible integer overflow.
FossilOrigin-Name:
bf0a6634cd8f9457992b8da522a6775a304156815bf6f4f64f96016356baa870
drh [Tue, 2 Oct 2018 20:16:41 +0000 (20:16 +0000)]
Add an additional assert() verifying mutex invariants on the
unixShmSystemLock() routine in the unix VFS.
FossilOrigin-Name:
cb1511065d5348c5b3015dc9d690fc5d519a14ffdfa7164bb552a4fa686ad142
drh [Tue, 2 Oct 2018 19:58:08 +0000 (19:58 +0000)]
Additional field name changes and commit fixes associated with shared-memory
locking in the unix VFS, to improve maintainability. No logic changes.
FossilOrigin-Name:
9280774a4bbc665d70f346d258768cbcca3e0e77791473aecfd7d0e87810ab31
drh [Tue, 2 Oct 2018 19:36:40 +0000 (19:36 +0000)]
Fix comments and refactor some names associated with shared-memory locking
in the Unix VFS. No logical changes.
FossilOrigin-Name:
3e9f1635271c92dce5324728b4ee1cc1a1856ec3c60b1b512a652c21e010e63e
drh [Mon, 1 Oct 2018 21:41:15 +0000 (21:41 +0000)]
Add the "PRAGMA table_xinfo" command that works like table_info but also
shows hidden columns in virtual tables and adds the "hidden" boolean column.
FossilOrigin-Name:
defa0515b8fd50ed9be699542f8c6695dd4a60c02f310665db6657ec5b6b67d0
drh [Mon, 1 Oct 2018 21:36:38 +0000 (21:36 +0000)]
drh [Mon, 1 Oct 2018 21:26:30 +0000 (21:26 +0000)]
Change the name of the pragma to PRAGMA table_xinfo. Improve the
mkpragmatab.tcl script to reuse column names where appropriate.
FossilOrigin-Name:
2fdd068987e59b979045d71ae64e700600ef07e54ae340f30c2064e5dcccb8ea
drh [Mon, 1 Oct 2018 18:28:42 +0000 (18:28 +0000)]
Add the extra "hidden" column to the end of the PRAGMA table_vinfo output.
FossilOrigin-Name:
cf1b76135f511530dcc7b82f78c952bf97ebcddb40be06f713f9f2326915fabe
dan [Mon, 1 Oct 2018 17:33:35 +0000 (17:33 +0000)]
Speed up xAccess() calls made on an RBU VFS when there are lots of open
connections.
FossilOrigin-Name:
310b4b65b8c8ee080760c7efb4c7e20244c6063a5dba37a4f40490105aafd29f
drh [Mon, 1 Oct 2018 17:15:17 +0000 (17:15 +0000)]
Bring the PRAGMA table_vinfo statement up to date with trunk.
FossilOrigin-Name:
6f606f99231f88ae5ff719d0ce21afc4b844490102c27ac20aa606baaf78d8d6
drh [Mon, 1 Oct 2018 13:54:30 +0000 (13:54 +0000)]
Fix a potential crash that can occur while reading an index from a corrupt
database file. The corruption is a record-header-size that is larger than
0x7fffffff. Problem detected by OSSFuzz against GDAL and reported to us
(with a suggested fix) by Even Rouault. The test case is in TH3.
FossilOrigin-Name:
8ac2cdda68f92b0352bc7f0b4be5fca4bb58565ca65055fb34153cc284ed6922
dan [Mon, 1 Oct 2018 07:04:12 +0000 (07:04 +0000)]
Fix a problem with ALTER TABLE commands when the schema features an INSTEAD of
trigger that uses NEW.* or OLD.*.
FossilOrigin-Name:
c52f457e56eb9d573eb67093731eb231aaf6fd6dbdc397e6f948b82736fbe3ab
drh [Sat, 29 Sep 2018 19:38:42 +0000 (19:38 +0000)]
Add the PRAGMA table_vinfo command (with an extra "v" before "info") that
works like PRAGMA table_info (without the "v") except that it also shows
hidden columns on virtual tables.
FossilOrigin-Name:
8bcd1a59560aa7ea73e6529e5c14ece8ac09bf7e99efdcfd388fead39846b6bf
drh [Fri, 28 Sep 2018 23:53:24 +0000 (23:53 +0000)]
dan [Fri, 28 Sep 2018 20:46:41 +0000 (20:46 +0000)]
Have sqlite3changegroup_output_strm() call its output function more regularly.
FossilOrigin-Name:
8467c31aa0bf24e597f680748460a99f425c49f5ab741c3574c339aa56857146
drh [Fri, 28 Sep 2018 18:51:18 +0000 (18:51 +0000)]
Fix a bug in the sqlite_memstat virtual table that was causing it to report
the amount of memory used as zero bytes.
FossilOrigin-Name:
8a758a872175b0c74e631c231240c5c733fbec708d0cff23eb9c4025e4a800ec
drh [Fri, 28 Sep 2018 14:01:17 +0000 (14:01 +0000)]
Add the geopoly_regular(X,Y,R,N) function to the geopoly extension.
FossilOrigin-Name:
4505bbae58357eacab262b642b2a56d6dd380de72faceb5bbfd042eb94a12c06
drh [Fri, 28 Sep 2018 13:18:24 +0000 (13:18 +0000)]
drh [Fri, 28 Sep 2018 00:16:57 +0000 (00:16 +0000)]
Rig geopoly to use sqlite3AtoF() if it is available, as that routine is much
faster than atof().
FossilOrigin-Name:
470c6c07d0eb70806ac257c1c8ad877e041bbc14ff9a5c490edb51b2956ae726
drh [Thu, 27 Sep 2018 23:57:45 +0000 (23:57 +0000)]
Small performance optimization in the JSON parser of Geopoly.
FossilOrigin-Name:
fb520e71035258d5490be33ee28575df2caefa5d5a301c8bbdf1471551c96282
drh [Thu, 27 Sep 2018 20:37:52 +0000 (20:37 +0000)]
Enhance the GeoPOLY extension so that it always stores its polygons in the
binary format, which is faster and more compact.
FossilOrigin-Name:
dc35f7b1754a78fa0d70c92754de07bb3c28d0d31cb929ee8a3a47ac4f3d446e
drh [Thu, 27 Sep 2018 20:20:01 +0000 (20:20 +0000)]
Ensure that the OP_VColumn opcode does set sqlite3_vtab_nochange() unless
the OPFLAG_NOCHNG bit is set in P5. Fix for ticket
[
69d642332d25aa3b7315a6d385 ]
FossilOrigin-Name:
322ab1fc613f616e9f07dc94ef74a29572a21cc476d88e97b4ce865500a47b62
dan [Thu, 27 Sep 2018 17:33:06 +0000 (17:33 +0000)]
Another minor tweak to memstat.c so that it may be built against older versions
of SQLite.
FossilOrigin-Name:
4c1fed60b9b35ac2f5d2f2533b54db429d72bdbc0aad0dd5af52ff851789d4ae
drh [Thu, 27 Sep 2018 17:15:21 +0000 (17:15 +0000)]
Modify the memstat virtual table so that it works with SQLite version 3.9.2.
FossilOrigin-Name:
7171d8ae6b1e7c97b0cf06bcca2262674c9ce557c85666b4b77c16cbac508502
drh [Thu, 27 Sep 2018 17:03:03 +0000 (17:03 +0000)]
Add the sqlite_memstat extension - an eponymous virtual table that shows
memory usages statistics for SQLite.
FossilOrigin-Name:
954ef61f6a02532e72c815208ec839310f1e00d69e0003cc6f5426f0559229d1
drh [Thu, 27 Sep 2018 16:57:42 +0000 (16:57 +0000)]
Enhancements to sqlite_memstat:
(1) Add an extra "schema" column to show the schema name for ZIPVFS stats.
(2) Only show ZIPVFS stats to schema that use ZIPVFS
(3) Put a NULL in unused columns of the output.
FossilOrigin-Name:
9351135b4331107be2f2bda7b6adbd5436381f4f9a68340e8a172b6517ec3f12
drh [Thu, 27 Sep 2018 15:45:03 +0000 (15:45 +0000)]
Add initial ZIPVFS support for the "main" database to the sqlite_memstat
virtual table.
FossilOrigin-Name:
9cd27350b0f62debfe3238c57c3ab51079699142e82c05a7ec8460a8429f55f2
drh [Thu, 27 Sep 2018 15:21:13 +0000 (15:21 +0000)]
Initial prototype of a eponymous virtual table that accesses sqlite3_status64()
and sqlite3_db_status().
FossilOrigin-Name:
0b44e1f68e0c8349367e3f929d4734c3df96338ec8d6fb652565bf894e8b8343
dan [Thu, 27 Sep 2018 12:14:15 +0000 (12:14 +0000)]
Disallow the use of window functions in the recursive part of a recursive CTE.
FossilOrigin-Name:
7fc2994434c7d9ed29c96a69c07e8eb4e97be776473c170c63f9a1bbaa09fa68
mistachkin [Thu, 27 Sep 2018 00:04:31 +0000 (00:04 +0000)]
Minor simplification: In OP_ParseSchema, read the p1 register once.
FossilOrigin-Name:
bd250533a06e4a11c1f548c3de66b8562fc627383848570d7d030cf132fd336f
drh [Wed, 26 Sep 2018 18:02:32 +0000 (18:02 +0000)]
Further improvements to the ".help" command in the CLI.
FossilOrigin-Name:
edc3d18ecbda32d6a55de76ee7335342425c57d917e9b48814a7301a012263b2
drh [Wed, 26 Sep 2018 16:53:51 +0000 (16:53 +0000)]
Begin revamping the ".help" command in the command-line shell so that it
can accept an argument and will do a search for commands that match that
argument.
FossilOrigin-Name:
209afb8d06466536863b89a8acb9a1a18477a06331d8cce95fc6380e1666b6f5
dan [Wed, 26 Sep 2018 16:05:07 +0000 (16:05 +0000)]
Tweak spellfix.c so that if SQLITE_SPELLFIX_5BYTE_MAPPINGS is defined at
compile time the Transliteration structure has space for 5 byte (instead of 4
byte) mappings.
FossilOrigin-Name:
cbaf5b6c1b07b29b2c83fa01618de856d81cc1174769cb9770cb5c894cc87ace
drh [Wed, 26 Sep 2018 03:43:42 +0000 (03:43 +0000)]
Fix typos in the header comment for the sha1 and sha3 hash extensions
in the ext/misc folder.
FossilOrigin-Name:
4ed9d83a0b14a22b3ecf25785b03b5a824d260e01a608aea85231df9b816421d
dan [Tue, 25 Sep 2018 13:51:31 +0000 (13:51 +0000)]
Fix a problem in releasetest.tcl causing configuration "Fast-One" to fail.
FossilOrigin-Name:
42e04fefbc241dd33f12abd66344a87720ae4cda6d82f2882217b3cb71be8733
drh [Mon, 24 Sep 2018 15:39:30 +0000 (15:39 +0000)]
Slightly smaller and faster alternative to [
507d892c3a40a0bacbd47 ] that
fixes a problem with views that use window function as part of complex
expressions.
FossilOrigin-Name:
d7c816ae15f05f21b9b213161e1044aaefc56f17e7bc4b7b551a9e04efc05855
dan [Mon, 24 Sep 2018 14:51:59 +0000 (14:51 +0000)]
Fix a problem with views that use window functions as part of complex expressions.
FossilOrigin-Name:
507d892c3a40a0bacbd47ed3c4fe2d8925a82716ae08da8401750a42782ba454
drh [Mon, 24 Sep 2018 14:10:55 +0000 (14:10 +0000)]
Allow a writable virtual table to have a schema with an INTEGER PRIMARY KEY
and WITHOUT ROWID. This fixes ticket
[
f25d5ceebe1d710ff61a571e395356869d8272ef ].
FossilOrigin-Name:
5a38d9281b4ad63b853efa5cdd5ad4a64b19dfaf8250ef8e0e186684df1211ea
drh [Mon, 24 Sep 2018 12:37:01 +0000 (12:37 +0000)]
Use compile-time options SQLITE_QUERY_PLANNER_LIMIT and
SQLITE_QUERY_PLANNER_LIMIT_INCR to control the value for
WhereLoopBuilder.iPlanLimit, rather than embedding magic numbers in the
code.
FossilOrigin-Name:
903e501894b2a5dd7055b5154d74d4a47a619f76e66485a4d62b6259f10723d6
drh [Mon, 24 Sep 2018 10:47:33 +0000 (10:47 +0000)]
Increase the initial value of WhereLoopBuilder.iPlanLimit to 20K. Issue
a warning if the iPlanLimit reaches zero.
FossilOrigin-Name:
3dd35f51187574f47f860405309877cdbf9dc5710703dfd98cf98073b771140c
drh [Sun, 23 Sep 2018 02:01:42 +0000 (02:01 +0000)]
Fix a faulty assert() in the validation logic for the LEFT JOIN strength
reduction optimization. Problem found by OSSFuzz.
FossilOrigin-Name:
2fd62fccd13e326dbd7dd730112542c6faa56e466bf4f7b8e22ced543031280c
drh [Sat, 22 Sep 2018 15:05:32 +0000 (15:05 +0000)]
Enhance WhereLoopBuilder.iPlanLimit to handle a case involving the OR
optimization discovered overnight by OSSFuzz.
FossilOrigin-Name:
7b59930a1d7b664b54d5a2bc9fa385925b5f4c8f34bf401c798307e3e2dae2c6
mistachkin [Fri, 21 Sep 2018 23:41:18 +0000 (23:41 +0000)]
Fix harmless compiler warning when compiled with SQLITE_OMIT_AUTHORIZATION.
FossilOrigin-Name:
50f2fa19532e0f849d61d9e2a97427cfbf64cfb787ca481ef8c860d0f24f6cfe
drh [Fri, 21 Sep 2018 19:06:09 +0000 (19:06 +0000)]
drh [Fri, 21 Sep 2018 18:43:51 +0000 (18:43 +0000)]
Put a limit counter on the query planner that restricts the number of
index+constraint options that can be considered for each table in a join.
This prevents certain pathological queries from taking up too much time
in the query planner.
FossilOrigin-Name:
8690b5a0cc08eeb175230de45d4ca9b9f7b9b22aeebea70b8b7151f10b130969
drh [Fri, 21 Sep 2018 13:07:14 +0000 (13:07 +0000)]
Optimization to the OP_MakeRecord opcode makes speed-check.sh run about
1.1 million cycles faster, and results in a slightly smaller library.
FossilOrigin-Name:
d10e63629183f6daf0c263cd4dae052a3786c8c1480b3b6a73124b3315e41951
drh [Thu, 20 Sep 2018 20:43:28 +0000 (20:43 +0000)]
drh [Thu, 20 Sep 2018 20:15:02 +0000 (20:15 +0000)]
Add the "PRAGMA legacy_alter_table=ON" command to enable the pre-3.25.0
behavior of ALTER TABLE that does not modify the bodies of triggers or
views or the WHERE clause of a partial index. Enable the legacy behavior
by default when running the xRename method of virtual tables.
FossilOrigin-Name:
7edd26ed27ed1e7eab603058f7d55f2eac45e7bd1908bfa5f32293611883b157
drh [Thu, 20 Sep 2018 19:02:15 +0000 (19:02 +0000)]
Combine the Expr.pTab and Expr.pWin fields into a union named "y". Add a new
EP_WinFunc property that is only true if Expr.y.pWin is a valid pointer.
This reduces the size of the Expr object by 8 bytes, reduces the overall
amount of code, and shaves over 1 million cycles off of the speed test.
FossilOrigin-Name:
ad130bb86e74e6ce165fdbdce3a19699510f0e62071c1c7923b5a4538d888c7c
dan [Thu, 20 Sep 2018 17:21:21 +0000 (17:21 +0000)]
By default, make all "ALTER TABLE RENAME" statements executed within a virtual
table xRename() method exhibit the legacy behaviour.
FossilOrigin-Name:
71947337e98b90debb13b390119bc2a6b39dd41535151b836071ee327a31e45d
dan [Thu, 20 Sep 2018 08:28:01 +0000 (08:28 +0000)]
Add a PRAGMA that restores the legacy ALTER TABLE RENAME TO behaviour.
FossilOrigin-Name:
5acad2e92c11c209bedc6ac8a709595e8070eed028ffc82af61499e5ceaa5e2b
drh [Wed, 19 Sep 2018 18:17:46 +0000 (18:17 +0000)]
A minor code simplification, saved in a branch for future reference.
FossilOrigin-Name:
5e458f4a92743effb9a3d3249767424fed8b444a05ca136c4a55d60c4d70c2cc
dan [Wed, 19 Sep 2018 17:09:09 +0000 (17:09 +0000)]
Fix a compilation issue in the "userauth" extension. Also fix a few test
script errors that occur with SQLITE_USER_AUTHENTICATION=1 builds.
FossilOrigin-Name:
221f3f572ed49d7af69a2e7c88741fa5206ea33ca59ee791eac7698bdd11ca4d
drh [Wed, 19 Sep 2018 15:08:21 +0000 (15:08 +0000)]
Fix the "sqlite3" command in the TCL interface so that it correctly returns
an error if invoked with no arguments.
FossilOrigin-Name:
2034fa8089676132b5e2f71bdebf1af9ca141da2e173920c6e84fb974ab0f022
dan [Tue, 18 Sep 2018 19:40:18 +0000 (19:40 +0000)]
Fix a problem building on Android with SQLITE_ENABLE_BATCH_ATOMIC_WRITE set.
FossilOrigin-Name:
e41e50fe7430cb79f67369fe81ac9938665bfc5db59c4faaf429ceb8ca03f584
dan [Tue, 18 Sep 2018 17:50:34 +0000 (17:50 +0000)]
Avoid incrementing the SQLITE_LOOKASIDE_MISS_SIZE stat before sqlite3_open()
returns. Fix test script problem in lookaside.test.
FossilOrigin-Name:
e461cb281959d8517296e3e4e934eba8206770b1a592cd7655b6567268da1634
dan [Tue, 18 Sep 2018 17:00:06 +0000 (17:00 +0000)]
Enhance tester.tcl so that when "--malloctrace=1" is specified, the test
generates self-contained Tcl scripts that present GUIs instead of *.sql files
that require a separate program to interpret.
FossilOrigin-Name:
de2e3cbd08c00d235106c040fa472ec267ef8f1ec13c34ed7d16deac8d50b6cc
dan [Tue, 18 Sep 2018 16:06:42 +0000 (16:06 +0000)]
Minor improvements to the permutations.test script. Most notably, a command
like "permutations.test alter%" now runs all test scripts with names that
match the LIKE pattern "alter%". Or, say, "permutations wal alter%" to run all
alter% tests in wal mode.
FossilOrigin-Name:
3e1a2f6614eacb65e1dffe64c6292c809fc5808be2d9d7d103cfc57d7b32fcd9
drh [Mon, 17 Sep 2018 20:47:38 +0000 (20:47 +0000)]
Further optimizations to the UPDATE logic to avoid making changes to partial
indexes if none of the columns mentioned in the WHERE clause are modified by
the UPDATE.
FossilOrigin-Name:
d1365a5bf0ee2f145427b81d2a593f539c3ad4705d579478703c1f65ae5f80bf
drh [Mon, 17 Sep 2018 15:19:13 +0000 (15:19 +0000)]
Disable the ORDER BY LIMIT optimization in queries using window functions.
This fixes a problem that was introduced by check-in [
206720129ed2fa8875a286 ]
which attempted to fix ticket [
9936b2fa443fec03ff25f9 ]. This changes is
a fix for the follow-in tocket [
510cde277783b5fb5de628 ].
FossilOrigin-Name:
c6c9585f294710829ca24b64d70a36fd9f409261dd0661367c6c4198cdbc4c81
drh [Mon, 17 Sep 2018 14:13:48 +0000 (14:13 +0000)]
Fix a false-positive in the post-ALTER-TABLE schema verification logic that
prevents ALTER TABLE from working if the table being altered has a trigger
that references any column of a virtual table. Ticket [
b41031ea2b537237 ].
FossilOrigin-Name:
84105ea4af98bd8bddbdf9dc6674bdf73c110c0685afe868ce9681da110144d7
drh [Mon, 17 Sep 2018 13:55:18 +0000 (13:55 +0000)]
Restore an assert() that was present on trunk.
FossilOrigin-Name:
a7b572ca7867a95f49888dc95c0dc6d726afa9fea26283be147ba422639d1307
dan [Mon, 17 Sep 2018 13:38:45 +0000 (13:38 +0000)]
Minor modification to the fix on this branch to avoid adding extra conditional
compilation macros.
FossilOrigin-Name:
4d8be404dab265b51e5a6a95e83be85c22512e19a437191690c7d845c87ff259
mistachkin [Mon, 17 Sep 2018 12:49:21 +0000 (12:49 +0000)]
Fix missing space in 'configure.ac' reported on the mailing list.
FossilOrigin-Name:
96b00a3cd2273dd3baa8e5b7a441458b142d4d2daabc679e4fcb5ab706674e76
dan [Mon, 17 Sep 2018 08:27:23 +0000 (08:27 +0000)]
Add extra test for the fix on this branch. Also fix a
pointer-compare-after-free problem that occurs in similar cases.
FossilOrigin-Name:
1856ea63b3186c2c8fa716ffe01c731397bdbbc3fbb56dc72ad0686cb7f152ca
drh [Mon, 17 Sep 2018 00:15:21 +0000 (00:15 +0000)]
Add assert()s to the new code in the previous check-in.
FossilOrigin-Name:
b12f23a5c484cab3654721299ea0f05230eef6b14012b557f3bf2592fac0f00e
drh [Sun, 16 Sep 2018 23:27:37 +0000 (23:27 +0000)]
First proposed fix for the ALTER TABLE problem described by ticket
[
b41031ea2b5372378cb3d2d ]
FossilOrigin-Name:
05a9d129254e01a5f6b5e4033c105190eae386575a94b020ef3e0cbd30bbf056
drh [Sun, 16 Sep 2018 18:23:48 +0000 (18:23 +0000)]
Remove an unreachable branch from the index-on-expression optimization.
FossilOrigin-Name:
2df2cf4f179dd88fb2530dfd338f344ac48dd052ef954dc95a136884523f7aee
drh [Sun, 16 Sep 2018 16:34:31 +0000 (16:34 +0000)]
drh [Sun, 16 Sep 2018 16:18:01 +0000 (16:18 +0000)]
Add the new "explain" virtual table in ext/misc. Use this virtual table
for additional test cases for the optimization that avoids updating indexes
on expressions when none of the columns changed by the UPDATE are in the
expression.
FossilOrigin-Name:
2404304cc15eaeee2744cf3c8f9cac0a544631c4f1060c5a17a78b43ca86edf0
drh [Sun, 16 Sep 2018 15:01:25 +0000 (15:01 +0000)]
Improved presentation on the new code that prevents unnecessary writes to
expressions on indexes during an UPDATE when the expression does not reference
any of the columns that are changing.
FossilOrigin-Name:
c9f045295c4577752b0847ff2027b44661e6cb15bb08b942ccb3a0ef396f3dec
drh [Sat, 15 Sep 2018 21:43:14 +0000 (21:43 +0000)]
Increase the version number to 3.26.0 as we start the next development cycle.
FossilOrigin-Name:
885f0f8252aae776a86c64bcc7da582f0ed58f2caae8ebff810a83ca339da820
drh [Sat, 15 Sep 2018 21:38:48 +0000 (21:38 +0000)]
Optimization: when doing an UPDATE on a table with indexes on an expression,
do not update the expression indexes if they do not refer to any of the
columns of the table being updated.
FossilOrigin-Name:
a71b101635ed28a4c99734dabb20bd65ef1018c1d63ac143b7321cdb0fafa5d7
drh [Sat, 15 Sep 2018 04:01:47 +0000 (04:01 +0000)]
drh [Fri, 14 Sep 2018 17:42:47 +0000 (17:42 +0000)]
Fix minor typos in comments that get carried over into documentation.
No changes to code.
FossilOrigin-Name:
7921dd91a1745aa79ea157b91b22c380e9331800050861ee6ca1f0efa0a97628
dan [Thu, 13 Sep 2018 17:11:51 +0000 (17:11 +0000)]
Update releasetest.tcl to run "make test" as part of the "Fast-One"
configuration.
FossilOrigin-Name:
d5ebfe1c75d336dac374d9cfa257e45e77ab51f9c2f24d1af615cbbe9dd83d9b
drh [Thu, 13 Sep 2018 17:07:12 +0000 (17:07 +0000)]
Make sure the %z optimization for printf() is not invoked if there has been
a prior error (SQLITE_NOMEM or SQLITE_TOOBIG) associated with the same
printf() call.
FossilOrigin-Name:
a2304a3474b0ca35eee0af64286ce2f7cb24d181323e128d5f04f7fe6e1c0980
drh [Thu, 13 Sep 2018 13:17:14 +0000 (13:17 +0000)]
Fix a requirement mark on a test script. No changes to code.
FossilOrigin-Name:
628d5c0aa057c05c7cf84c330a51b8a44720c97250eadf0e5e8c750b7a2969c3
dan [Wed, 12 Sep 2018 20:32:19 +0000 (20:32 +0000)]
Fix an assert() in os_unix.c that is not true when using RBU.
FossilOrigin-Name:
028ed8618af012b51104a06cc155b45d98bc4ff833d4431b9c38fd6851a74e82
drh [Wed, 12 Sep 2018 15:51:56 +0000 (15:51 +0000)]
Restrict the scope of internal-use functions in alter.c.
FossilOrigin-Name:
4396914f8e1a847d86c22fb0b91e7431cf19aa260cbec520af3564248d6897ad
drh [Wed, 12 Sep 2018 14:28:45 +0000 (14:28 +0000)]
Improvements to the documentation for SQLITE_FCNTL_DATA_VERSION.
No changes to code.
FossilOrigin-Name:
27837624336d2883f721310bd4dceedb77085d1008af5e12557f634936d48b8c
dan [Wed, 12 Sep 2018 08:51:48 +0000 (08:51 +0000)]
Fix an invalid pointer comparison triggered by renaming a table column when
there are views with explicit column names in the schema.
FossilOrigin-Name:
572de7e4e33562c72cd90790b267ba389370f21ddcaebc4db609fd76ae9b7ada
mistachkin [Wed, 12 Sep 2018 01:05:26 +0000 (01:05 +0000)]
Fix some harmless compiler warnings seen with MSVC.
FossilOrigin-Name:
78862252da7f59d4737ed16f4ccf100cea27d8b421db31051afbaa8d96f24de3
mistachkin [Wed, 12 Sep 2018 00:48:17 +0000 (00:48 +0000)]
For MSVC, migrate some commonly used shell compilation options to the library.
FossilOrigin-Name:
68a71e5f4e9cbd15eb64d271008e29f40913480bac467b90fb64f0269ad75818
drh [Wed, 12 Sep 2018 00:21:11 +0000 (00:21 +0000)]
Fix a harmless compiler warning that arose from the ENABLE_CURSOR_HINTS
fix of check-in [
0af18674ca5b34e67e ]
FossilOrigin-Name:
f578e62ae6f6cc78d8281adab9fa93f3f58711879c2860bbe19f291d257dc0af
drh [Tue, 11 Sep 2018 19:05:32 +0000 (19:05 +0000)]
Do not do the byte-by-byte modifications in the resetdb.test script if the
reserved-byte flag in the DB header is non-zero, because in that case the
bytes will be in the wrong place and the test won't work.
FossilOrigin-Name:
0af18674ca5b34e67e1685be3adcdd99a7b8650589c6a7cde7ad9ef1852a8777
dan [Tue, 11 Sep 2018 13:38:35 +0000 (13:38 +0000)]
Fix a problem causing ENABLE_CURSOR_HINTS builds to segfault.
FossilOrigin-Name:
e7033104fa8bd974a9a3d173200aa07a3aa3daade86e7eb65cad5d00b086969e
dan [Mon, 10 Sep 2018 19:34:06 +0000 (19:34 +0000)]
dan [Mon, 10 Sep 2018 19:27:12 +0000 (19:27 +0000)]
Fix a minor problem causing an incorrect cursor-hint to be generated in some
cases.
FossilOrigin-Name:
d879c47d7d145cbe99602b2cf70294ddc946709e8d61040942085d29e2c5b6cd
drh [Mon, 10 Sep 2018 17:21:17 +0000 (17:21 +0000)]
Add the ability for loadable extensions to access the new
sqlite3_create_window_function() interface.
FossilOrigin-Name:
3def6d8ef11702eb03ad56aeb01763ec8e4ca8ed3b570ffb680164c5c3679e4f
dan [Mon, 10 Sep 2018 16:38:25 +0000 (16:38 +0000)]
drh [Mon, 10 Sep 2018 14:43:15 +0000 (14:43 +0000)]
New testcase() macros on virtual table xBestIndex logic.
FossilOrigin-Name:
3bbd9c5f2f1990f7d187951474a86996650dcede12c2608484d43250ae0b30d6
drh [Mon, 10 Sep 2018 12:40:57 +0000 (12:40 +0000)]
Fix the LIKE optimization so that it is disabled when the LHS of the
expression does not have TEXT affinity and the RHS is the pattern '/%'
or the RHS begins with the escape character. Fix for ticket
[
c94369cae9b561b1f996d0054b ].
FossilOrigin-Name:
f191431d63aba187000b5cbaf3e072ff5f1b1eef6a2a407fb4d1629bda4e4e8f
dan [Mon, 10 Sep 2018 12:17:16 +0000 (12:17 +0000)]
Fix a problem with processing a "vtab.col IS NULL" expression within
the WHERE clause of a query when "vtab" is a virtual table on the rhs of a
LEFT JOIN.
FossilOrigin-Name:
83da4d4104ee1870a2a95bb5fa15ee6584c655d8b314b6b8ab97592dad4ee811
drh [Sat, 8 Sep 2018 20:29:04 +0000 (20:29 +0000)]
Fix an unreachable branch in the new sqlite3WhereOrderByLimitOptLabel()
function of the query planner.
FossilOrigin-Name:
5a954533edbde58aa7158572ece7ceeb1c6e610b71f3ae45d0b8371d74f9fea5
drh [Sat, 8 Sep 2018 20:09:46 +0000 (20:09 +0000)]
Fix multiple issues with the ORDER BY LIMIT optimization. This is the
proposed resolution to ticket [
9936b2fa443fec03ff25 ].
FossilOrigin-Name:
206720129ed2fa8875a286266d05b99fb2caf8671e4b74b26a6286a2073fcd8b
mistachkin [Sat, 8 Sep 2018 16:55:18 +0000 (16:55 +0000)]
mistachkin [Sat, 8 Sep 2018 16:53:47 +0000 (16:53 +0000)]
Fix typo in the Win32-specific code for the fileio extension.
FossilOrigin-Name:
e812e5d59a699e8b82c51d465d9c0f09df6a1e6996b5499814dca99c5f8020d5