]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
4 years agoFix a memory leak in the new code on this branch. distinct-agg-opt
dan [Sat, 13 Mar 2021 18:23:30 +0000 (18:23 +0000)] 
Fix a memory leak in the new code on this branch.

FossilOrigin-Name: 0817cf2ec08fdefd3c1d41790df7b5d6d490767757b44bb0229694023c8e40fc

4 years agoFix typos in comments and add test cases.
dan [Sat, 13 Mar 2021 17:21:24 +0000 (17:21 +0000)] 
Fix typos in comments and add test cases.

FossilOrigin-Name: 01312a3dbd92823af535dc618c68d95a2aa1cbee2501b0a9826eae3f09bec760

4 years agoFix a crash in new code on this branch.
dan [Fri, 12 Mar 2021 21:09:20 +0000 (21:09 +0000)] 
Fix a crash in new code on this branch.

FossilOrigin-Name: c05ed2a8a9c4975c69bdfa733598ed90c1509d52b3c39dedbd829ab148777e1d

4 years agoMerge latest trunk changes into this branch.
dan [Fri, 12 Mar 2021 18:33:55 +0000 (18:33 +0000)] 
Merge latest trunk changes into this branch.

FossilOrigin-Name: 198bc510d64b5794559584ad5c9de41dc966dce4eb78be15b12adba43dfcb639

4 years agoAttempt to use an index for DISTINCT aggregate queries that have GROUP BY clauses.
dan [Fri, 12 Mar 2021 18:24:31 +0000 (18:24 +0000)] 
Attempt to use an index for DISTINCT aggregate queries that have GROUP BY clauses.

FossilOrigin-Name: 3bca003cd2b2cb38d4a4e2e5f673ee0ac05bfe31247ec09e7bd379b77a31b44c

4 years agoVersion 3.35.0 version-3.35.0
drh [Fri, 12 Mar 2021 15:10:09 +0000 (15:10 +0000)] 
Version 3.35.0

FossilOrigin-Name: acd63062eb06748bfe9e4886639e4f2b54ea6a496a83f10716abbaba4115500b

4 years agoFix broken requirement marks.
drh [Fri, 12 Mar 2021 13:49:09 +0000 (13:49 +0000)] 
Fix broken requirement marks.

FossilOrigin-Name: 98d67152849e062c6de45b0e526daffc3d6cb29d563d40664a8d7140119a30b2

4 years agoFix the ".read" command in the CLI so that SQLITE_OMIT_POPEN disables
drh [Fri, 12 Mar 2021 01:49:08 +0000 (01:49 +0000)] 
Fix the ".read" command in the CLI so that SQLITE_OMIT_POPEN disables
reading from a pipeline.

FossilOrigin-Name: cea34f3cc35ad6dc67691799a219a30739f2296945d624d232bf76150c598ec0

4 years agoConform description of sqlite3changeset_op() arguments to implemented behavior, some...
larrybr [Fri, 12 Mar 2021 00:44:10 +0000 (00:44 +0000)] 
Conform description of sqlite3changeset_op() arguments to implemented behavior, some reformatting.
This is a comment-only change; no code is affected.

FossilOrigin-Name: 9d6e544c47b9a5d97bd02a658db5cd202bd1952f8ba3bc50e8cf47d7206041c0

4 years agoFix a Tcl object leak in test_session.c.
dan [Thu, 11 Mar 2021 15:57:25 +0000 (15:57 +0000)] 
Fix a Tcl object leak in test_session.c.

FossilOrigin-Name: 07150cf15ad36c7fc681a911f66db23d610ddf110a7be7f1fcefbd8750cd135a

4 years agoBug fix in appendvfs.c: Adjust the size parameter for
drh [Thu, 11 Mar 2021 13:43:29 +0000 (13:43 +0000)] 
Bug fix in appendvfs.c:  Adjust the size parameter for
SQLITE_FCNTL_SIZE_HINT to account for the prefix.

FossilOrigin-Name: 41df3bbefd63151f2ddb920066777eab8e07ecfc0edb0f71f9493debe0a4a2c4

4 years agoHave the Tcl tests support environment variable SQLITE_TEST_PATTERN_LIST, so that...
dan [Thu, 11 Mar 2021 08:49:52 +0000 (08:49 +0000)] 
Have the Tcl tests support environment variable SQLITE_TEST_PATTERN_LIST, so that if it is set it is interpreted as a list of patterns that are matched against tests file names. Only test files that match at least one pattern are run.

FossilOrigin-Name: b7c92e1d08f213865f026d8dbdc4e805fb5c119b7f206506ed06e83a878de657

4 years agoFix sanitizer complaint in fts3 code.
dan [Wed, 10 Mar 2021 20:04:21 +0000 (20:04 +0000)] 
Fix sanitizer complaint in fts3 code.

FossilOrigin-Name: 424b39eaeb578f85e58214af4b467e6e363431308ab7a327774e62fa70d3c2db

4 years agoFix further sanitizer complaints in the fts5 code.
dan [Wed, 10 Mar 2021 19:32:47 +0000 (19:32 +0000)] 
Fix further sanitizer complaints in the fts5 code.

FossilOrigin-Name: 4cb00b9d4020a51f690720c6f51009c5be8c22ef8c70807ead1d953d19784f26

4 years agoImproved testcase() related the SQLITE_MAX_ATTACHED vs. SQLITE_MAX_DB problem.
drh [Wed, 10 Mar 2021 18:21:18 +0000 (18:21 +0000)] 
Improved testcase() related the SQLITE_MAX_ATTACHED vs. SQLITE_MAX_DB problem.

FossilOrigin-Name: 27d3c00efef66ad48ed94228474dbea3ad81ea5c19425028c42cf4220920a645

4 years agoImprovement to the ATTACH-abuse authorizer logic in fuzzcheck.
drh [Wed, 10 Mar 2021 17:52:59 +0000 (17:52 +0000)] 
Improvement to the ATTACH-abuse authorizer logic in fuzzcheck.

FossilOrigin-Name: 88132f698a7a9b7d41dd1dd393592cbda130d2bf1a9fd18c509503e1891b9655

4 years agoDo not run avfs.test when testing SQLITE_OMIT_VIRTUALTABLE builds.
dan [Wed, 10 Mar 2021 17:43:18 +0000 (17:43 +0000)] 
Do not run avfs.test when testing SQLITE_OMIT_VIRTUALTABLE builds.

FossilOrigin-Name: 2ab6957a2238a2ab713a50d21dbd9921c944e8141197275bbfe7dae303fee7d0

4 years agoDo not confuse the constant SQLITE_MAX_ATTACHED with the maximum number of
drh [Wed, 10 Mar 2021 16:35:37 +0000 (16:35 +0000)] 
Do not confuse the constant SQLITE_MAX_ATTACHED with the maximum number of
schemas.  Add the new SQLITE_MAX_DB constant for the maximum number of
schemas.  [forum:/forumpost/a006d86f72|Forum post a006d86f72].

FossilOrigin-Name: 7b65fb9f7bd616f834633afd64b3448bf9ca2b6e4cc6d6c01e75d1d877c88a79

4 years agoFix test file avfs.test so that it works with SQLITE_DEFAULT_AUTOVACUUM builds. Do...
dan [Wed, 10 Mar 2021 15:10:20 +0000 (15:10 +0000)] 
Fix test file avfs.test so that it works with SQLITE_DEFAULT_AUTOVACUUM builds. Do not run avfs.test under test permutation "journaltest".

FossilOrigin-Name: 2c6078ebe797dd2cb6045b5f13e6d92a6b49393ecf96f9fd7222412f5a3eefd5

4 years agoFix a few sanitizer complaints in fts5.
dan [Wed, 10 Mar 2021 14:57:10 +0000 (14:57 +0000)] 
Fix a few sanitizer complaints in fts5.

FossilOrigin-Name: 4fe4fee00e9294fa384bd073ed8e9a2a4ad10dcf653b6ad4851e44a64443ede9

4 years agoFix a problem preventing wapptest from setting SQLITE_ENABLE_LOCKING_STYLE for OSX...
dan [Wed, 10 Mar 2021 10:43:17 +0000 (10:43 +0000)] 
Fix a problem preventing wapptest from setting SQLITE_ENABLE_LOCKING_STYLE for OSX tests. Also modify the "Sanitize" configuration in releasetest_data.tcl to subsume test item 6g.

FossilOrigin-Name: f762d7df2a41a88560a4251d744e0887f42812f8160af4f0129d22a71c0fa48b

4 years agoWhen shell has no .ar, fake its effect w.r.t. page_size and table creation/filling.
larrybr [Wed, 10 Mar 2021 06:06:16 +0000 (06:06 +0000)] 
When shell has no .ar, fake its effect w.r.t. page_size and table creation/filling.

FossilOrigin-Name: 959f5c65ea14f4716df61e250e9d5a0d69d602a2a973ad22a364e640162c2983

4 years agoAdd appendvfs.c to the MSVC makefile.
drh [Tue, 9 Mar 2021 23:38:27 +0000 (23:38 +0000)] 
Add appendvfs.c to the MSVC makefile.

FossilOrigin-Name: a6681fbb2e0c8d5a7c968f6fd458f61658fad6ac4c7eb8663762b6ac386cdae5

4 years agoUpdate a comment in btree.h.
dan [Tue, 9 Mar 2021 21:20:12 +0000 (21:20 +0000)] 
Update a comment in btree.h.

FossilOrigin-Name: 9645fe1a050e8b61aea1fba2f142819c387ecb043741392c5719bf7ad303bf8b

4 years agoFix a bad comment (copy-paste error) in the byte code engine. No code changes.
drh [Tue, 9 Mar 2021 20:58:21 +0000 (20:58 +0000)] 
Fix a bad comment (copy-paste error) in the byte code engine.  No code changes.

FossilOrigin-Name: 1c01745734c7b62a8c792f743aae08dfbb9e047dc92fef8da067fec152b20fd5

4 years agoImproved comments on the NOT NULL strength reduction optimization.
drh [Tue, 9 Mar 2021 19:52:15 +0000 (19:52 +0000)] 
Improved comments on the NOT NULL strength reduction optimization.

FossilOrigin-Name: a85d72293914b48edbb39171fd591d37ffb09570d8103140a052203ec71d49ee

4 years agoExtra comments and testcase() macros associated with the new
drh [Tue, 9 Mar 2021 19:32:37 +0000 (19:32 +0000)] 
Extra comments and testcase() macros associated with the new
sqlite3ParserAddCleanup() mechanism.  No changes to release builds.

FossilOrigin-Name: c3c8691121e6cb7bfc326212cc81a7472c0e6f22e655ab024bd4bd885e1cd878

4 years agoAdd --enable-math to the amalgamation autoconf. On be default. Improved
drh [Tue, 9 Mar 2021 17:09:00 +0000 (17:09 +0000)] 
Add --enable-math to the amalgamation autoconf.  On be default.  Improved
logging of the amalgamation autoconf.

FossilOrigin-Name: 85d28b52250e1817b722dc10da3b7b73abf7539cbe7aa913b5960ae4da40d5f8

4 years agoAdd missing comment to new routine in select.c.
dan [Tue, 9 Mar 2021 16:47:33 +0000 (16:47 +0000)] 
Add missing comment to new routine in select.c.

FossilOrigin-Name: ef2f0cf21ba61bdd29e09cf41b012a2d757683f524a252f0af7dfee7df1a1a0f

4 years agoMath functions are enabled by default in the main configure script.
drh [Tue, 9 Mar 2021 16:35:14 +0000 (16:35 +0000)] 
Math functions are enabled by default in the main configure script.

FossilOrigin-Name: b7456e0715c63308b7b3acf49eb66ecd947481400d4688ae459e2e1499447bcd

4 years agoExperimental optimization for distinct aggregates (e.g. "SELECT count(DISTINCT <expr...
dan [Tue, 9 Mar 2021 16:06:25 +0000 (16:06 +0000)] 
Experimental optimization for distinct aggregates (e.g. "SELECT count(DISTINCT <expr) FROM ...").

FossilOrigin-Name: eb919611fd2f255e4ad1fe7db633363793169f6cf99c650eaefa48c022eb5d22

4 years agoImprovements to the configure script. Math functions are enabled
drh [Tue, 9 Mar 2021 13:53:39 +0000 (13:53 +0000)] 
Improvements to the configure script.  Math functions are enabled
by --enable-all.

FossilOrigin-Name: c79c6d18dee608e54ae31388b240cc521218309094502d8815111bb4ddf7d9ef

4 years agoUpdate the authorizer in fuzzcheck to align with dbsqlfuzz.
drh [Tue, 9 Mar 2021 13:12:58 +0000 (13:12 +0000)] 
Update the authorizer in fuzzcheck to align with dbsqlfuzz.

FossilOrigin-Name: f86d8fae3b29de014d8bfcae38a15bdb15ddceabfcfff7829f3145cfd69dff2a

4 years agoAdd tests for too-tiny appended DBs, clarify align macro.
larrybr [Mon, 8 Mar 2021 20:13:43 +0000 (20:13 +0000)] 
Add tests for too-tiny appended DBs, clarify align macro.

FossilOrigin-Name: eb40a8dea6afe6890ddda989de83f3d4ae03b112bf78bfc818dfbd57cc5b5b2a

4 years agoAdd test cases for ALTER TABLE.
dan [Mon, 8 Mar 2021 17:22:01 +0000 (17:22 +0000)] 
Add test cases for ALTER TABLE.

FossilOrigin-Name: 9c9ba36e859e330c50ed40ede4b93eeb0a5c3337240465d953a7be9115a81390

4 years agoFix a bad assert in RENAME COLUMN.
drh [Mon, 8 Mar 2021 17:17:38 +0000 (17:17 +0000)] 
Fix a bad assert in RENAME COLUMN.
dbsqlfuzz 3f0a7245b69cd08617d7d7781ebaedb0fe765a93.

FossilOrigin-Name: f13e0d12f137cd6b4e83e92bd36652431d8416e6eed4797313e061f2e390d39b

4 years agoFix a harmless compiler warning in appendvfs.c
drh [Mon, 8 Mar 2021 16:29:06 +0000 (16:29 +0000)] 
Fix a harmless compiler warning in appendvfs.c

FossilOrigin-Name: f538961a8058cc327d64c8ec317f1b4f8bbb604f90261160c6c27f26f4800682

4 years agoEnable internal functions for fuzzcheck.
drh [Mon, 8 Mar 2021 16:13:52 +0000 (16:13 +0000)] 
Enable internal functions for fuzzcheck.

FossilOrigin-Name: 79281603b951b438303130820deb6b05baeca366c2cd93be7d8909d3232bcc96

4 years agoAdded test/avfs.test (missing from branch merge for some reason.)
larrybr [Mon, 8 Mar 2021 14:32:26 +0000 (14:32 +0000)] 
Added test/avfs.test (missing from branch merge for some reason.)

FossilOrigin-Name: 08fa67053c20d223c9b5334fe2e85adc95588b91046c100d7fe8e8e2535e485f

4 years agoMerge appendvfs updates and testing.
larrybr [Mon, 8 Mar 2021 14:26:22 +0000 (14:26 +0000)] 
Merge appendvfs updates and testing.

FossilOrigin-Name: 63fcf301fedf1f3708e2226ed499a53b3e9c1d2cc2b17d4b0b736e36aff0ae74

4 years agoRequire that the appendvfs suffix mark indicate that the appended database appendvfs_tighten
drh [Mon, 8 Mar 2021 13:45:08 +0000 (13:45 +0000)] 
Require that the appendvfs suffix mark indicate that the appended database
begins at an offset that is a muliple of 512 and that the appended database
contains at least 512 bytes.

FossilOrigin-Name: aeb87cc70495dd172e170eff31fd754331d4b979c0b649ab239f8c5c0c76e695

4 years agoCorrect the precendence order for rules that determine how a database is
drh [Mon, 8 Mar 2021 13:30:29 +0000 (13:30 +0000)] 
Correct the precendence order for rules that determine how a database is
opened by appendvfs when a database is appended to another database.

FossilOrigin-Name: 92989fc56f2e81ac13f8106ec83c930f43d10715269b988ee47c9bfa53621995

4 years agoMinor comment and formatting changes.
drh [Mon, 8 Mar 2021 12:59:16 +0000 (12:59 +0000)] 
Minor comment and formatting changes.

FossilOrigin-Name: cf2add064f70c477fee1473c3196b72deb41222eb0cdbbdbdcf4a79995184e2b

4 years agoAdd tests for sqlite3 shell with -append flag.
larrybr [Mon, 8 Mar 2021 01:31:53 +0000 (01:31 +0000)] 
Add tests for sqlite3 shell with -append flag.

FossilOrigin-Name: d1790288729441d53603709df02aa5fb5f04714e2da86ce128ca81840b0b545f

4 years agoAdd grow/shrink tests. Fix truncate bug. Make appendvfs.c easier to inspect.
larrybr [Sun, 7 Mar 2021 18:55:25 +0000 (18:55 +0000)] 
Add grow/shrink tests. Fix truncate bug. Make appendvfs.c easier to inspect.

FossilOrigin-Name: c9521fa55620d0cb3cec20db7b42bc5f18876b42dca07811d1cd0f4b2907eab2

4 years agoMerge from trunk.
larrybr [Sat, 6 Mar 2021 23:49:18 +0000 (23:49 +0000)] 
Merge from trunk.

FossilOrigin-Name: 729117cdfa2d6ff24b66656e9ccc380199606b830fc338286e4dd10e8e787597

4 years agoCreate initial tests for appendvfs, and make it available as a statically loaded...
larrybr [Sat, 6 Mar 2021 23:36:47 +0000 (23:36 +0000)] 
Create initial tests for appendvfs, and make it available as a statically loaded extension.

FossilOrigin-Name: 9f33d45179f5985bd4c4f7582e94f5833a63f853c8cdc19f39cf7e3ee70177d0

4 years agoLimit parenthesis nesting depth in FTS3 expressions to
drh [Sat, 6 Mar 2021 15:13:26 +0000 (15:13 +0000)] 
Limit parenthesis nesting depth in FTS3 expressions to
SQLITE_MAX_EXPR_DEPTH.

FossilOrigin-Name: 5ddd8032ef9ecd5b53909d304c8f1375a72f270fd7810964cb4e385e25bedd4f

4 years agoEnsure the correct collation sequence is used for comparisons when delimiting a RANGE...
dan [Sat, 6 Mar 2021 14:46:24 +0000 (14:46 +0000)] 
Ensure the correct collation sequence is used for comparisons when delimiting a RANGE window.

FossilOrigin-Name: 01eae68e85b31b7a9f08733459765bbd9bf9dad592bf64f10fc2fa32e02a89c2

4 years agoFix a crash in fts3 that could occur when running a NEAR query on a corrupt database.
dan [Sat, 6 Mar 2021 13:28:07 +0000 (13:28 +0000)] 
Fix a crash in fts3 that could occur when running a NEAR query on a corrupt database.

FossilOrigin-Name: 609d94996324f3d3c12bb8cc04a2527d1d86c35cdb2267b5b34053c961158986

4 years agoFix a possible NULL pointer dereference when applying a DROP COLUMN to a
drh [Sat, 6 Mar 2021 13:02:12 +0000 (13:02 +0000)] 
Fix a possible NULL pointer dereference when applying a DROP COLUMN to a
corrupt database schema.  dbsqlfuzz 419aa525df93db6e463772c686ac6da27b46da9e

FossilOrigin-Name: 349ccf58ae4bb770805066102fc8e9e478d4da1f7a6a728223bd74eabf7b7843

4 years agoMerge last day of trunk changes, reverify build.
larrybr [Fri, 5 Mar 2021 20:52:19 +0000 (20:52 +0000)] 
Merge last day of trunk changes, reverify build.

FossilOrigin-Name: 1d67ed1c98a6bc49cce6bdc156bd6f22b3f37d33226bd62430a43aa5318f5781

4 years agoFix appendvfs bug exposed by docsapp build (in docsrc), and tighten/revise published...
larrybr [Fri, 5 Mar 2021 20:46:53 +0000 (20:46 +0000)] 
Fix appendvfs bug exposed by docsapp build (in docsrc), and tighten/revise published behavior.

FossilOrigin-Name: 7f0f2eacdb496f7f36865ba62164a48edb324a3c6baede736b4e7edf5e8b0fdb

4 years agoModify the SQLITE_DBCONFIG_ENABLE_VIEW option so that it always permits
drh [Fri, 5 Mar 2021 18:33:01 +0000 (18:33 +0000)] 
Modify the SQLITE_DBCONFIG_ENABLE_VIEW option so that it always permits
TEMP views, just as SQLITE_DBCONFIG_ENABLE_TRIGGER always permits TEMP
triggers.

FossilOrigin-Name: 83dab8b358b6832a221a58e74dd5e99b9cdea4eee65124bb6799881e867d989c

4 years agoFix problems with RETURNING clauses attached to UPDATEs on tables with virtual columns.
dan [Fri, 5 Mar 2021 15:42:15 +0000 (15:42 +0000)] 
Fix problems with RETURNING clauses attached to UPDATEs on tables with virtual columns.

FossilOrigin-Name: 6b41b136fbfc0b56a6948f2306b69fb1d69306adb86674a15a87fe3b52062512

4 years agoFix another problem with RETURNING clauses in UPDATEs against tables with virtual... returning-fix
dan [Fri, 5 Mar 2021 15:29:22 +0000 (15:29 +0000)] 
Fix another problem with RETURNING clauses in UPDATEs against tables with virtual columns.

FossilOrigin-Name: f0ef5c76ab1a6568b9148b928277bf589d4cb7033c0acf3e6323879b656d8bd1

4 years agoFix an assert() failure that could be triggered by a correlated sub-query in a RETURN...
dan [Fri, 5 Mar 2021 15:10:33 +0000 (15:10 +0000)] 
Fix an assert() failure that could be triggered by a correlated sub-query in a RETURNING clause.

FossilOrigin-Name: 551260c8625828262809b1ef7acf5343a3527b7e167ca0cfd13b81e5ece0e66c

4 years agoFix the processing of implied LIMIT clauses when flattening a compound
drh [Fri, 5 Mar 2021 14:08:45 +0000 (14:08 +0000)] 
Fix the processing of implied LIMIT clauses when flattening a compound
query.

FossilOrigin-Name: 90c6b9fcb0e15e2552fe5be53f8201f145bb535cc37b603d488eadf33438412b

4 years agoCreate new branch named "appendvfs_tighten"
larrybr [Fri, 5 Mar 2021 09:42:58 +0000 (09:42 +0000)] 
Create new branch named "appendvfs_tighten"

FossilOrigin-Name: 48c968bf4c8e1517864bec68d3072441994ea511a9cb446d2fdf031d5f43b077

4 years agoMark the NotUsed parameter to the dropColumnFunc() function as unused,
drh [Thu, 4 Mar 2021 19:44:01 +0000 (19:44 +0000)] 
Mark the NotUsed parameter to the dropColumnFunc() function as unused,
to avoid a harmless compiler warning.

FossilOrigin-Name: 23459071091248e94202e609bb8031c3e34722b8ae8ff5a66851dcc528a2d2c2

4 years agoPut ALWAYS() on a branch that is now always true because of changes
drh [Thu, 4 Mar 2021 18:34:54 +0000 (18:34 +0000)] 
Put ALWAYS() on a branch that is now always true because of changes
in OOM behavior due to check-in [9adf6e2469d18bc3].

FossilOrigin-Name: 8a1bb9c3e92085fb71d75eb36f64eb85053a4730fd314acd401e7ad32c274748

4 years agoUpdate shell.c.in so that SQLITE_SHELL_IS_UTF8 is set to 0 if the -municode option...
dan [Thu, 4 Mar 2021 18:31:07 +0000 (18:31 +0000)] 
Update shell.c.in so that SQLITE_SHELL_IS_UTF8 is set to 0 if the -municode option is passed to gcc on windows.

FossilOrigin-Name: 99e6a0f020fadda4011e4ca370d2421dbf2f97f6fb004fcbba9bd6c76faf7a73

4 years agoRemove a branch made unreachable by check-in [e893f88750ea64d4].
drh [Thu, 4 Mar 2021 16:32:28 +0000 (16:32 +0000)] 
Remove a branch made unreachable by check-in [e893f88750ea64d4].

FossilOrigin-Name: 20d7dc120dc964a0236da719e4de22bff5110b95da396e2ac6790e9f6b667899

4 years agoFix a segfault that could occur following an OOM condition.
dan [Thu, 4 Mar 2021 16:10:23 +0000 (16:10 +0000)] 
Fix a segfault that could occur following an OOM condition.

FossilOrigin-Name: 9adf6e2469d18bc3bfc0c804cfcaa692e23ab6b3e13465dcfc51c4b111b05cb4

4 years agoEarlier detection of a misplaced ORDER BY or LIMIT clause in a compound
drh [Thu, 4 Mar 2021 16:03:32 +0000 (16:03 +0000)] 
Earlier detection of a misplaced ORDER BY or LIMIT clause in a compound
SELECT.  This prevents problems in recursive CTEs with multiple recursive
terms in which there is an ORDER BY or LIMIT clause on the last non-recursive
term.

FossilOrigin-Name: e893f88750ea64d45922429e022c585748974016404f2a2b7952f5a227865246

4 years agoFix a crash that could occur if a sub-select inside an EXISTS expression features...
dan [Thu, 4 Mar 2021 14:18:22 +0000 (14:18 +0000)] 
Fix a crash that could occur if a sub-select inside an EXISTS expression features an ORDER BY clause containing one or more window functions.

FossilOrigin-Name: 9768e7db624fbfe688d61ac06bffca14a169d439d8f65f5a14529af5660d3d2e

4 years agoFix a buffer overrun that could occur in fts5 when running a prefix query against...
dan [Wed, 3 Mar 2021 19:36:40 +0000 (19:36 +0000)] 
Fix a buffer overrun that could occur in fts5 when running a prefix query against a corrupt db.

FossilOrigin-Name: 4da40620ac8557aba6e1e06e720418b55e9950f406288b03749ef1b117041cd9

4 years agoRemove the --timeout option from the valgrindfuzz Makefile target.
dan [Wed, 3 Mar 2021 16:46:03 +0000 (16:46 +0000)] 
Remove the --timeout option from the valgrindfuzz Makefile target.

FossilOrigin-Name: 3f520b8bdef7dcdad30e052ed8a07b0493bff4497603521e701fab7324df2995

4 years agoFix a case where fts3 was erroneously reporting corruption.
dan [Wed, 3 Mar 2021 16:00:26 +0000 (16:00 +0000)] 
Fix a case where fts3 was erroneously reporting corruption.

FossilOrigin-Name: e6c7683c7503ac743d1d476c60c31f887b7ad829e26e812c25acdd4366044db8

4 years agoFix a harmless assertion fault resulting from [6e6b3729e0549de0] that was
drh [Wed, 3 Mar 2021 14:07:52 +0000 (14:07 +0000)] 
Fix a harmless assertion fault resulting from [6e6b3729e0549de0] that was
discovered by dbsqlfuzz.  Enhance .selecttrace output to show omitted
ORDER BY clauses.  New dbsqlfuzz test cases added.

FossilOrigin-Name: 27a0388ad616f80e8dcc986c247a5c23a8565dae9081b04ff85bac0d357e531b

4 years agoFix a problem with using ALTER TABLE commands on database schemas that contain expres...
dan [Wed, 3 Mar 2021 11:00:31 +0000 (11:00 +0000)] 
Fix a problem with using ALTER TABLE commands on database schemas that contain expressions of the form "<expr> NOT NULL" or "<expr> IS NULL" that can be evaluated at prepare time.

FossilOrigin-Name: d2630ffafa077b8cfd75110b6b73da30f780edc920d2788769a4dc747f09d3f6

4 years agoCast a string size variable to 64-bit to avoid any possibility of
drh [Tue, 2 Mar 2021 21:07:41 +0000 (21:07 +0000)] 
Cast a string size variable to 64-bit to avoid any possibility of
integer overflow.

FossilOrigin-Name: a5940294b2ac8d157d7fa72f65ee70b713f7feb8a0a98d7f47e71acd1b6942b1

4 years agoLimit the size of the exponent input in the second argument to the
drh [Tue, 2 Mar 2021 16:27:04 +0000 (16:27 +0000)] 
Limit the size of the exponent input in the second argument to the
ieee754() SQL function, to avoid integer overflow.
Ticket [22dea1cfdb9151e4].

FossilOrigin-Name: 99aab32da14cc76beb5c1823a70bdeab144459398d61c42a858be4d6868d361e

4 years agoChange the timeout for test case "valgrindfuzz" from 600 seconds to 1200.
dan [Tue, 2 Mar 2021 13:50:56 +0000 (13:50 +0000)] 
Change the timeout for test case "valgrindfuzz" from 600 seconds to 1200.

FossilOrigin-Name: 7c6aa6f38403931df7940c7acfeba4e2f8099a419222fcab2a3c959ccae90e40

4 years agoDo not run test file windowpushd.test as part of the "no_optimization" permutation.
dan [Tue, 2 Mar 2021 13:36:37 +0000 (13:36 +0000)] 
Do not run test file windowpushd.test as part of the "no_optimization" permutation.

FossilOrigin-Name: 275a75aa82bf5d2366fd4020066d7b9fbb93a955ac9ec15dc7d5b8bfa29074e4

4 years agoAdd ALWAYS() to an always-true conditional.
drh [Tue, 2 Mar 2021 00:42:46 +0000 (00:42 +0000)] 
Add ALWAYS() to an always-true conditional.

FossilOrigin-Name: fa3506db2051ceade8aa535d92c0900b3cfdd8850c6d00adedeb1ebfaf6f885f

4 years agoAdd #ifndef macros so that the build works again with
drh [Mon, 1 Mar 2021 21:43:25 +0000 (21:43 +0000)] 
Add #ifndef macros so that the build works again with
-DSQLITE_OMIT_AUTHORIZATION and -DSQLITE_OMIT_WINDOWFUNC.

FossilOrigin-Name: 9400bdc60294be6a938025d481e50aad9af246e64f38fafecc6ca4f24112a98c

4 years agoFix a couple of memory-sanitizer complaints that could be triggered by a corrupt...
dan [Mon, 1 Mar 2021 16:16:59 +0000 (16:16 +0000)] 
Fix a couple of memory-sanitizer complaints that could be triggered by a corrupt database.

FossilOrigin-Name: 39c8686cabe6c437ba4860aade49a701c4f5772b97d9fbe6cb9a394e85b9c092

4 years agoFix another msan complain triggered by a corrupt database. msan-fix
dan [Mon, 1 Mar 2021 16:15:41 +0000 (16:15 +0000)] 
Fix another msan complain triggered by a corrupt database.

FossilOrigin-Name: d235d406283191fc7b9e1299be602f1e8be6f36cee8b183cf85c8660519a1c3b

4 years agoInitialize extra field in PgHdr1 to fix an msan complaint.
dan [Sun, 28 Feb 2021 08:24:56 +0000 (08:24 +0000)] 
Initialize extra field in PgHdr1 to fix an msan complaint.

FossilOrigin-Name: 4cb2ea5795b0c0678665fd89bd560209beaab8a756fe00335dbfd07493b0542d

4 years agoAdd OOM test case associated with the fix in the previous commit.
dan [Sat, 27 Feb 2021 15:32:02 +0000 (15:32 +0000)] 
Add OOM test case associated with the fix in the previous commit.

FossilOrigin-Name: a631c38d22bc00d38b0f112a623fb24c0e03a962f661ffe0931dad32fd31ba31

4 years agoRemove a NEVER() that might sometimes be tree following an OOM.
drh [Sat, 27 Feb 2021 15:12:24 +0000 (15:12 +0000)] 
Remove a NEVER() that might sometimes be tree following an OOM.

FossilOrigin-Name: ccb8cf5256d01b3ff13e75e1471b1afb0055ec2c344ba886f98b83d47eba00f8

4 years agoFix a segfault that could occur when optimizing a NOT NULL constraint against an...
dan [Fri, 26 Feb 2021 21:39:34 +0000 (21:39 +0000)] 
Fix a segfault that could occur when optimizing a NOT NULL constraint against an IPK column of a sub-query.

FossilOrigin-Name: e4d1970ef17b2330f78c750d71d625c2997f79ed1445d0351ec32b482485a954

4 years agoAttempt to optimize "x IS NULL" and "x IS NOT NULL" expressions when x is a column...
dan [Fri, 26 Feb 2021 20:39:08 +0000 (20:39 +0000)] 
Attempt to optimize "x IS NULL" and "x IS NOT NULL" expressions when x is a column with a NOT NULL constraint.

FossilOrigin-Name: de9c86c9e4cdb34f4b7d65f160d1e589fb969bbf64c66d2b24c502d1ee424dbb

4 years agoAttempt to optimize "x IS NULL" and "x IS NOT NULL" expressions when x is a column... ifnull-opt
dan [Fri, 26 Feb 2021 20:14:32 +0000 (20:14 +0000)] 
Attempt to optimize "x IS NULL" and "x IS NOT NULL" expressions when x is a column with a NOT NULL constraint.

FossilOrigin-Name: 5ecd842555009ce27ee6390325ac5c2504143474b12b730933f0833b3dad788a

4 years agoMinor simplification in resolve.c.
dan [Fri, 26 Feb 2021 15:20:17 +0000 (15:20 +0000)] 
Minor simplification in resolve.c.

FossilOrigin-Name: 310dac342e7b1f9b5a5df6a9d598e85d5fef59bba9307d9230baf77c8f2351a2

4 years agoFix test case in altercorrupt.test so that it works with SQLITE_ENABLE_OVERSIZE_CELL_...
dan [Thu, 25 Feb 2021 18:28:11 +0000 (18:28 +0000)] 
Fix test case in altercorrupt.test so that it works with SQLITE_ENABLE_OVERSIZE_CELL_CHECK builds.

FossilOrigin-Name: 062b338ff2ea71633b4fb3c75c6a47b5fc4fe9c2a72daacd987d1eca0bda5217

4 years agoFix a problem with UPDATE and DELETE statements that use both INDEXED BY and LIMIT...
dan [Thu, 25 Feb 2021 18:23:39 +0000 (18:23 +0000)] 
Fix a problem with UPDATE and DELETE statements that use both INDEXED BY and LIMIT clauses in SQLITE_ENABLE_UPDATE_DELETE_LIMIT builds.

FossilOrigin-Name: cc2b4b38668bd32ebd8cf2e0d244eef2a6c7e0a1ee0a34c9c43eaf25c9cc09ae

4 years agoFix handling of INSERT on views with implicitly named hidden columns in SQLITE_ENABLE...
dan [Thu, 25 Feb 2021 16:55:47 +0000 (16:55 +0000)] 
Fix handling of INSERT on views with implicitly named hidden columns in SQLITE_ENABLE_HIDDEN_COLUMNS builds.

FossilOrigin-Name: 15795a96a8b3f4ea368b3eb29a4ff8d1b4b33ebb2bff2a5ccb045b8f01f9f99b

4 years agoEnsure that tests like "rbu.test" and "notify2.test" that are only run by specific...
dan [Thu, 25 Feb 2021 15:50:19 +0000 (15:50 +0000)] 
Ensure that tests like "rbu.test" and "notify2.test" that are only run by specific configurations during release testing are run for both release and debug versions of the tests.

FossilOrigin-Name: 911df43f98297bf645688dc51e988106a0297cb60bb97dde699c2848404fcf72

4 years agoWhen a sub-transaction is released, if no pages required by containing sub-transactio...
dan [Tue, 23 Feb 2021 16:40:47 +0000 (16:40 +0000)] 
When a sub-transaction is released, if no pages required by containing sub-transactions were journaled, truncate the statement journal. This prevents out of control statement journal growth in some cases.

FossilOrigin-Name: 23ca23894af352ea351c9efcdd7d86b82455f4c81b6001052a6d13aa2d705e84

4 years agoAllow WHERE terms to be pushed down into sub-queries that contain window functions...
dan [Tue, 23 Feb 2021 15:53:22 +0000 (15:53 +0000)] 
Allow WHERE terms to be pushed down into sub-queries that contain window functions, provided that the WHERE term is made up of entirely of constants and copies of expressions found in the PARTITION BY clauses of all window functions in the sub-query.

FossilOrigin-Name: 20689468100aed264877111367b42837ca19e63e717fed2ebd4b20b908f13178

4 years agoFurther tests for the push-down optimization with window functions. window-functions-pushdown
dan [Tue, 23 Feb 2021 15:36:06 +0000 (15:36 +0000)] 
Further tests for the push-down optimization with window functions.

FossilOrigin-Name: 4b089f70117bfb440eaefd830c05576be0cc624d9d6018c869270dc68e44513e

4 years agoAllow WHERE terms to be pushed down into sub-queries that contain window functions...
dan [Mon, 22 Feb 2021 20:56:13 +0000 (20:56 +0000)] 
Allow WHERE terms to be pushed down into sub-queries that contain window functions, provided that the WHERE term is made up of entirely of constants and copies of expressions found in the PARTITION BY clauses of all window functions in the sub-query.

FossilOrigin-Name: dac51f303bba1a0aac7768c688b0c134deb7641062cce2071d546f2d8f241dec

4 years agoAdd a few simple test cases for MATERIALIZED and NOT MATERIALIZED.
drh [Mon, 22 Feb 2021 19:57:58 +0000 (19:57 +0000)] 
Add a few simple test cases for MATERIALIZED and NOT MATERIALIZED.

FossilOrigin-Name: 64878124c160f790bc5861fd799ada03bd7db0c4426b8abc3b7ad1f7aa181168

4 years agoImplement the MATERIALIZED and NOT MATERIALIZED hints on common
drh [Mon, 22 Feb 2021 16:42:09 +0000 (16:42 +0000)] 
Implement the MATERIALIZED and NOT MATERIALIZED hints on common
table expressions.

FossilOrigin-Name: b5a0778cc5a98a864bea72670f83262da940aceb91fa4cdf46ec097337a38a95

4 years agoWhen a sub-transaction is released, if no pages required by containing sub-transactio... stmt-jrnl-truncate
dan [Mon, 22 Feb 2021 15:44:45 +0000 (15:44 +0000)] 
When a sub-transaction is released, if no pages required by containing sub-transactions were journaled, truncate the statement journal. This might prevent out-of-control statement journal growth in some cases.

FossilOrigin-Name: e36327fb22db08763a82fb517407ff5ab0dbc053953098033e7e50796a777810

4 years agoAdd an ALWAYS() on a branch that is now unreachable. as-materialize-redux
drh [Mon, 22 Feb 2021 14:25:40 +0000 (14:25 +0000)] 
Add an ALWAYS() on a branch that is now unreachable.

FossilOrigin-Name: ace54c5bd50176db7c60b7e3cf9293a86d9ecf2fea897467044020b9684c0af3

4 years agoFix inverted logic regarding the materialization hint on the push-down
drh [Mon, 22 Feb 2021 11:07:25 +0000 (11:07 +0000)] 
Fix inverted logic regarding the materialization hint on the push-down
optimization.

FossilOrigin-Name: b66a49570852cf118a372a6ac44be3070cf9b4254696f16315b7c79a614e6c35

4 years agoAdd the AS MATERIALIZED and AS NOT MATERIALIZED syntax that works like it
drh [Mon, 22 Feb 2021 03:04:25 +0000 (03:04 +0000)] 
Add the AS MATERIALIZED and AS NOT MATERIALIZED syntax that works like it
does in PostgreSQL.

FossilOrigin-Name: a6bb272ec0c758ab069bfc07443624e0ea7910b1f23224ee078d050fa3ccf068