]> git.ipfire.org Git - thirdparty/sqlite.git/log
thirdparty/sqlite.git
9 months agoCLI arg handling robustness improvements. sqlite3-rsync
stephan [Sat, 14 Sep 2024 16:30:01 +0000 (16:30 +0000)] 
CLI arg handling robustness improvements.

FossilOrigin-Name: 129aca54f6b791c222b51f3eb01569e1e569269860e153b005140eb65af378b9

9 months agoAdd the --version option.
drh [Sat, 14 Sep 2024 16:28:38 +0000 (16:28 +0000)] 
Add the --version option.

FossilOrigin-Name: 9961334c8007e7cb6ae55885075b74acddc4fa701b359cf67e0f3c237d7eba4a

9 months agoNew debugging options: --logfile, --errorfile, --remote-errorfile.
drh [Sat, 14 Sep 2024 16:03:16 +0000 (16:03 +0000)] 
New debugging options:  --logfile, --errorfile, --remote-errorfile.
If page 1 changes, always send it last.

FossilOrigin-Name: 2d8cd76691554578e987ce682cf0c42c083711dd1511a178148978182ef43ba2

9 months agoAlways show the -v traffic message even if there are multiple -v options.
drh [Sat, 14 Sep 2024 11:38:46 +0000 (11:38 +0000)] 
Always show the -v traffic message even if there are multiple -v options.

FossilOrigin-Name: fc05a5b7f77cdbfcc659d49eb09569a64a172362cb90199e2861028085178f10

9 months agoAdd the --logfile FILE option for debugging.
drh [Sat, 14 Sep 2024 11:23:57 +0000 (11:23 +0000)] 
Add the --logfile FILE option for debugging.

FossilOrigin-Name: 30e1b92d5663e24d2f325f2bab35f81b55848ef39d15688e40b9005269626303

9 months agoImproved error messages coming out of sqlite3-rsync.
drh [Sat, 14 Sep 2024 10:59:32 +0000 (10:59 +0000)] 
Improved error messages coming out of sqlite3-rsync.

FossilOrigin-Name: 452fb6de3984c3cb10d30b51dcdb2574578ca128a0c519b2bd43df0bdd343083

9 months agoMake the output from sqlite3-rsync with a single -v option the same as it
drh [Sat, 14 Sep 2024 10:48:05 +0000 (10:48 +0000)] 
Make the output from sqlite3-rsync with a single -v option the same as it
is with regular rsync.  Only show the SSH command with two or more -v options,
or if there is an error in popen2().

FossilOrigin-Name: 105ec44b470318fc9ff1773027c4064343f224068c9b6e71c5618f18f7dfcc3f

9 months agoMerge sqlite_dbpage fixes into the sqlite3-rsync branch.
drh [Fri, 13 Sep 2024 23:41:16 +0000 (23:41 +0000)] 
Merge sqlite_dbpage fixes into the sqlite3-rsync branch.

FossilOrigin-Name: dff76b7a3436031ea5a61b8a44ddfa1d40ea20c983f3d34a8501cd7074db68b8

9 months agoBug fix in the enhanced sqlite_dbpage for when truncating two or more dbpage
drh [Fri, 13 Sep 2024 21:47:57 +0000 (21:47 +0000)] 
Bug fix in the enhanced sqlite_dbpage for when truncating two or more
ATTACH-ed databases within the same transaction.

FossilOrigin-Name: 6aa9c8e79b440c6419e65990d9ceba8f00a6f975455138cf2aa82b113daec825

9 months agoFix harmless compiler warning on Windows.
drh [Fri, 13 Sep 2024 16:12:54 +0000 (16:12 +0000)] 
Fix harmless compiler warning on Windows.

FossilOrigin-Name: 86e0219d977c493ac19d00c3ddcf560eb317d506c7cf6e4ef17e92daa91e1762

9 months agoImproved informational output from sqlite3-rsync.
drh [Fri, 13 Sep 2024 13:53:20 +0000 (13:53 +0000)] 
Improved informational output from sqlite3-rsync.

FossilOrigin-Name: e55e3e8ec2fe3a9190872d999cee55c85bde92667040cc166233faaa2fa34266

9 months agoPreveious check-in was actually doing an 8-round KeccakF1600. This one
drh [Fri, 13 Sep 2024 12:35:04 +0000 (12:35 +0000)] 
Preveious check-in was actually doing an 8-round KeccakF1600.  This one
corrects that to just 6 rounds.

FossilOrigin-Name: 3c36f5814f25483586c4fd49ef2fe5c7c0ff8c59672b1622c92061ec0ba8547a

9 months agoChange the hash algorithm from SHA1 to a 6-round KeccakF1600 with a rate
drh [Fri, 13 Sep 2024 12:28:11 +0000 (12:28 +0000)] 
Change the hash algorithm from SHA1 to a 6-round KeccakF1600 with a rate
of 160.  This uses about 1/3rd fewer CPU cycles.

FossilOrigin-Name: 96c7f47a8f59e5078bd296979421c1b57fbcb7be261f8a7a0b1d22a4b5914db0

9 months agoBetter initialization of new database files in sqlite3-rsync.
drh [Thu, 12 Sep 2024 23:30:29 +0000 (23:30 +0000)] 
Better initialization of new database files in sqlite3-rsync.

FossilOrigin-Name: 75d5a8eb3d4ece06900109ad4022ba2a3e82de2f0acb012e3a02bfb4326bfa6d

9 months agoAdd RSYNC_OPT to the sqlite3-rsync build flags.
stephan [Thu, 12 Sep 2024 21:03:11 +0000 (21:03 +0000)] 
Add RSYNC_OPT to the sqlite3-rsync build flags.

FossilOrigin-Name: b2a3497e5525dd33faf70961107a0529f476735fef756953c66e105747271c6d

9 months agoPort some of the shell's CLI flag-handling code into sqlite3-rsync to make the arg...
stephan [Thu, 12 Sep 2024 18:15:28 +0000 (18:15 +0000)] 
Port some of the shell's CLI flag-handling code into sqlite3-rsync to make the arg handling more robust.

FossilOrigin-Name: 53fb9b11807ff7accd8cd41f9cb6516d2503f161ea976940437a1d3aae868665

9 months agoReplica must be in writable_schema mode.
drh [Thu, 12 Sep 2024 17:06:02 +0000 (17:06 +0000)] 
Replica must be in writable_schema mode.

FossilOrigin-Name: e385525793c7d74ce8ee139c9d6cfc1248834754598f3fd45b22b9426ff106ee

9 months agoImproved --commcheck. Add the infoMsg() function which is useful for
drh [Thu, 12 Sep 2024 16:54:34 +0000 (16:54 +0000)] 
Improved --commcheck.  Add the infoMsg() function which is useful for
debugging.

FossilOrigin-Name: b979d02ffd1370d8840328bce06c76c224f0fc1fb54b47d6c904547580a820a1

9 months agoPass the names of both the origin and the replica databases to the remote
drh [Thu, 12 Sep 2024 15:51:56 +0000 (15:51 +0000)] 
Pass the names of both the origin and the replica databases to the remote
side, so that if the remote is the replica, it will have access to the
origin database name in case the replica name is really a directory.

FossilOrigin-Name: 435c30171d3c6073b7aaf5cc11cc4813f6a2d225ae6dce1b0e478f0cd5a0b532

9 months agoAdd a protocol version number to the first message, and give the two sides
drh [Thu, 12 Sep 2024 15:36:34 +0000 (15:36 +0000)] 
Add a protocol version number to the first message, and give the two sides
an opportunity to negotiate a suitable protocol number, for future
compatibility.  Send the page size as a power-of-two.

FossilOrigin-Name: df0623aae1154281157409f62d6d3fb3ce41829281d53bc55868ce44b3d36883

9 months agoAdd sha1() functions to the CLI. Fix sha1b() such that it actually returns
drh [Thu, 12 Sep 2024 14:43:05 +0000 (14:43 +0000)] 
Add sha1() functions to the CLI.  Fix sha1b() such that it actually returns
a BLOB.

FossilOrigin-Name: fe65821a3b912f061026e6fd7174be26897010e6b474e2780350cac60faebaad

9 months agoImproved debugging output.
drh [Thu, 12 Sep 2024 12:04:53 +0000 (12:04 +0000)] 
Improved debugging output.

FossilOrigin-Name: 80461e0d724963aaf2646005298f1194c5f1c4c9ae41c1085d4d137ed485bd9f

9 months agoProgress on the sqlite3-rsync utility. This is an incremental check-in. It
drh [Wed, 11 Sep 2024 17:02:44 +0000 (17:02 +0000)] 
Progress on the sqlite3-rsync utility.  This is an incremental check-in.  It
does compile, but it does not work.

FossilOrigin-Name: fa06977b6db7fa745720561ec0b10570cf7e71598dc7a7c5ee650640e5bdf6f5

9 months agoImproved SSH infrastructure. The foundation is now in place to begin working
drh [Tue, 10 Sep 2024 22:14:18 +0000 (22:14 +0000)] 
Improved SSH infrastructure.  The foundation is now in place to begin working
on the actual sync protocol.  Still experimental.  Still a work in progress.

FossilOrigin-Name: 9a1a95f523a96303aad57e2422c2b51ea7e125f5490f32f7a2929d49b6c69ef8

9 months agoInitial infrastructure for the sqlite3-rsync utility. Prototype only.
drh [Tue, 10 Sep 2024 17:05:12 +0000 (17:05 +0000)] 
Initial infrastructure for the sqlite3-rsync utility.  Prototype only.
Does not work.

FossilOrigin-Name: 397b2d37b7a6619b0c1eee201065585d03496f94786b21540f613e4716d56612

9 months agoAdd the ability for sqlite_dbpage to truncate the database file by writing
drh [Tue, 10 Sep 2024 12:09:03 +0000 (12:09 +0000)] 
Add the ability for sqlite_dbpage to truncate the database file by writing
a NULL page.  Experimental.

FossilOrigin-Name: eb3c89ee2e4c5425be75deaf46a06a9cd8b210c695b918dd63a78f930c6e6b63

9 months agoGeneralize the sqlite3_dbpage virtual table so that it is able to write
drh [Mon, 9 Sep 2024 18:45:58 +0000 (18:45 +0000)] 
Generalize the sqlite3_dbpage virtual table so that it is able to write
new pages onto the end of the database file using INSERT.

FossilOrigin-Name: fe0d67e72d4228661c021f227bfc0d5ddb1b726db0f36c7221ead8dd8bd1dc73

9 months agoMove the vfstrace extension out of src/ and into ext/misc/. Make it a
drh [Mon, 9 Sep 2024 15:39:40 +0000 (15:39 +0000)] 
Move the vfstrace extension out of src/ and into ext/misc/.  Make it a
standard part of the CLI.  Improve its output.  Also fix some unrelated
comment typos.

FossilOrigin-Name: 123cb1f579daec3ed092fe9dd1bc0d3250f2b56d4cda1efa92af139029e112e2

9 months agoFix dependencies in makefiles to include ext/misc/vfstrace.c as necessary. vfstrace
drh [Mon, 9 Sep 2024 15:33:37 +0000 (15:33 +0000)] 
Fix dependencies in makefiles to include ext/misc/vfstrace.c as necessary.
Improved xFileControl() output from vfstrace.c.

FossilOrigin-Name: e8f2d6313075c92fdeebcdfd8b50f43e9d45225890b2ef6b77148a766a42e940

9 months agoFix harmless compiler warnings in the vfstrace.c extension.
drh [Mon, 9 Sep 2024 15:19:26 +0000 (15:19 +0000)] 
Fix harmless compiler warnings in the vfstrace.c extension.

FossilOrigin-Name: f23954e604bf4da45f07194b54a4fe1c83002ab65d6c6f0ac095e88baba18547

9 months agoFix harmless compiler warnings in FTS5.
drh [Mon, 9 Sep 2024 15:12:21 +0000 (15:12 +0000)] 
Fix harmless compiler warnings in FTS5.

FossilOrigin-Name: aa75e701de61fe63ec15c35d70e53e950ff73b0dcb0d871dd8721412f3af297a

9 months agoMove the vfstrace extension out of src/ over into ext/misc/ where it belongs.
drh [Mon, 9 Sep 2024 14:50:23 +0000 (14:50 +0000)] 
Move the vfstrace extension out of src/ over into ext/misc/ where it belongs.
Make it part of the standard build for the CLI.  Bring some of the vfstrace
output up-to-date.

FossilOrigin-Name: 055b97de8d2397987d72dbab1cde78ece2d1c066e95042b4ed6b7b36b2cf9006

9 months agoFix a problem with fts5 locale=1 tables and UPDATE statements that may affect more...
dan [Sat, 7 Sep 2024 16:22:22 +0000 (16:22 +0000)] 
Fix a problem with fts5 locale=1 tables and UPDATE statements that may affect more than one row.

FossilOrigin-Name: 70e42f941c0778a04b82655409c7caf4c1039589f7e43a8ec1e736ea8f931b26

9 months agoFix an off-by-one error in the routines that bind the special $test_TTT and
drh [Sat, 7 Sep 2024 16:04:04 +0000 (16:04 +0000)] 
Fix an off-by-one error in the routines that bind the special $test_TTT and
$int_NNN parameters for fuzz testing.  Fix to testing logic only - no changes
to the SQLite core.

FossilOrigin-Name: 6206b90a4ec3f05e3bbb4844e71569bbde7df237550569e6419ff7c3146505dc

9 months agoAdd tests for an fts5 NEAR() expression with a single argument phrase.
dan [Fri, 6 Sep 2024 20:12:59 +0000 (20:12 +0000)] 
Add tests for an fts5 NEAR() expression with a single argument phrase.

FossilOrigin-Name: e319d43bfd5ee4ed92b93531b239af4d1be0a8215b2a06c3532122ff2c7b6a7c

9 months agoResolve the "No rule to make target '0'" error when building with --disable-tcl.
stephan [Fri, 6 Sep 2024 15:01:00 +0000 (15:01 +0000)] 
Resolve the "No rule to make target '0'" error when building with --disable-tcl.

FossilOrigin-Name: d94541ae76b5d8b69f5524f10dcccc0814283f438a03f553848ed631a1983633

9 months agoFix a harmless stray carriage-return character.
drh [Fri, 6 Sep 2024 14:01:48 +0000 (14:01 +0000)] 
Fix a harmless stray carriage-return character.

FossilOrigin-Name: 84a6c5f975de36ba93b888e01cc5188717b5644ab8384beb8fd8906bdfc8e227

9 months agoIn testrunner.tcl, correctly capture and display information about the
drh [Fri, 6 Sep 2024 13:13:25 +0000 (13:13 +0000)] 
In testrunner.tcl, correctly capture and display information about the
system under test:  hostname, OS, pointer size, byte-order.

FossilOrigin-Name: ec75cfc5d4b69e4aed64d17748cac15cd62a759a1cbe7feaa4580ad8346b0b95

9 months agoFix harmless compiler warnings.
drh [Fri, 6 Sep 2024 11:21:53 +0000 (11:21 +0000)] 
Fix harmless compiler warnings.

FossilOrigin-Name: 60fb8ee153ec293b6b3a4170dafa305e4c16af575aced72daef46116d8dc2bb6

9 months agoA testcase() macro added to help ensure that the fix to the omit-noop-join
drh [Fri, 6 Sep 2024 10:35:36 +0000 (10:35 +0000)] 
A testcase() macro added to help ensure that the fix to the omit-noop-join
optimization from yesterday does not regress.

FossilOrigin-Name: 224628b1039b996499e0d806fc0215f175da6f1059eb1b9ac491ac11126971ab

9 months agoClarification and simplification to the README.md file and to the instructions
drh [Fri, 6 Sep 2024 09:49:13 +0000 (09:49 +0000)] 
Clarification and simplification to the README.md file and to the instructions
for building on Windows.

FossilOrigin-Name: f69ef1a37b2778bdf73ee7e3b3edd74f7344ab8e5eedbedc22203c782e521f5b

9 months agoFix a testrunner status reporting problem introduced by [aa5f10f21dbfb24e].
drh [Thu, 5 Sep 2024 23:40:13 +0000 (23:40 +0000)] 
Fix a testrunner status reporting problem introduced by [aa5f10f21dbfb24e].

FossilOrigin-Name: d20c65c3b4256a662ebf7ed024b7b7adaceca90358f58111dc645da322000794

9 months agoEnsure that the WhereInfo.revMask bitmap is adjusted when tables are removed
drh [Thu, 5 Sep 2024 23:22:55 +0000 (23:22 +0000)] 
Ensure that the WhereInfo.revMask bitmap is adjusted when tables are removed
from the FROM clause by the Omit-Noop-Join optimization of
[0cd82ee9a8413cf1].  Fix for the issue described by
[forum:/forum/8a1e467e905b8d27|format post 8a1e467e905b8d27].

FossilOrigin-Name: 22ca5a2ffb89ccb5f337993b5a95e27c449c39014284156eabc33da012a8759c

9 months agoUpdate notes on build procedures in the README.md file.
drh [Thu, 5 Sep 2024 15:55:04 +0000 (15:55 +0000)] 
Update notes on build procedures in the README.md file.

FossilOrigin-Name: 1d12744fe7cc294994e53e1ffe72799d0321dd5c1ef031213f083e200918fee5

9 months agoTestrunner.tcl enhancements: (1) Attempt to build the SQLite tcl extension
drh [Thu, 5 Sep 2024 15:28:15 +0000 (15:28 +0000)] 
Testrunner.tcl enhancements:  (1) Attempt to build the SQLite tcl extension
if it is not already available.  (2) testrunner target "devtest" is added as
an alias for "mdevtest".  (3) Try to keep summary information at the end of
a test below 80-characters per line.  (4) Update the Makefile.in so that
the "clean" target removes the tcl extension built by item 1 above.

FossilOrigin-Name: aa5f10f21dbfb24ee54ca96bfb7b013ae29e26fec05b80681f19cc63d9face49

9 months agoEnhance testrunner.tcl to keep track of the platform and SQLite version
drh [Thu, 5 Sep 2024 12:06:45 +0000 (12:06 +0000)] 
Enhance testrunner.tcl to keep track of the platform and SQLite version
as reported by individual test cases and to report that information in the
summary at the end of each test run.

FossilOrigin-Name: 80ebb7c7e686cd936ac834f2258f585a7004762593e0bc859ecd75d6fb0badfd

9 months agoFaster implementation of the aggregate_test_counts procedure inside of
drh [Thu, 5 Sep 2024 11:46:43 +0000 (11:46 +0000)] 
Faster implementation of the aggregate_test_counts procedure inside of
testrunner.tcl.

FossilOrigin-Name: a01d869520329fb9e786cdc65f359785a95d19d289e4c6b844c758d6e5385aaf

10 months agoMake the default TCLDIR be C:\Tcl in the Makefile.msc.
drh [Wed, 4 Sep 2024 18:51:59 +0000 (18:51 +0000)] 
Make the default TCLDIR be C:\Tcl in the Makefile.msc.

FossilOrigin-Name: c2c0a9176ae7291a0b72f3d048a2ef5716c325b9f693cdc5eada552e0c881a9d

10 months agoFix a bug in the parsing of some corner-case JSON PATH strings that contain
drh [Wed, 4 Sep 2024 16:01:44 +0000 (16:01 +0000)] 
Fix a bug in the parsing of some corner-case JSON PATH strings that contain
escaped double-quotes.

FossilOrigin-Name: 60ac55c4b76355aaf7cbde38bf1f6082ff5612bf4ffc49ab69d00fd4e3d64e64

10 months agoPut a proper shebang at the start of the testrunner.tcl script and make the
drh [Wed, 4 Sep 2024 13:42:19 +0000 (13:42 +0000)] 
Put a proper shebang at the start of the testrunner.tcl script and make the
script executable.

FossilOrigin-Name: c0c6e9abebf76358625f30a179658319b260baba6eded2a4c5ad356143e36f97

10 months agoMake extra efforts to delete the over-size directory names created by
drh [Wed, 4 Sep 2024 13:09:58 +0000 (13:09 +0000)] 
Make extra efforts to delete the over-size directory names created by
the win32longpath.test module.

FossilOrigin-Name: 3c8035ed3f023fb31f65f298fb9ce19d4fa7a5511bd90877b27969f5f0892472

10 months agoAdd the "joblist" command to testrunner.tcl
drh [Wed, 4 Sep 2024 11:22:47 +0000 (11:22 +0000)] 
Add the "joblist" command to testrunner.tcl

FossilOrigin-Name: f64469f4806d4d5d7103c171a37a542c7aab9db09a226bccd8411e9ccd55353d

10 months agoEnhance the "errors" command in testrunner.tcl so that it accepts the
drh [Tue, 3 Sep 2024 16:04:34 +0000 (16:04 +0000)] 
Enhance the "errors" command in testrunner.tcl so that it accepts the
"-s" or "--summary" argument to see a list of failed jobs, and so that
an additional argument is a GLOB pattern that restricts the output to
jobs whose names match that pattern.

FossilOrigin-Name: dcbebe30f594a99e23b5ccd8d199b92118204a3e52e75c78d98c394601252e81

10 months agoFix ext/consio so that it works correctly with SQLITE_USE_ONLY_WIN32.
drh [Tue, 3 Sep 2024 14:15:57 +0000 (14:15 +0000)] 
Fix ext/consio so that it works correctly with SQLITE_USE_ONLY_WIN32.

FossilOrigin-Name: efc6f3d7e92a25f440fb8d392daf325af5ca7dca104a5bb4bd59f7df93af53b0

10 months agoIn testrunner.tcl, compile the Windows Default configuration using
drh [Tue, 3 Sep 2024 14:00:36 +0000 (14:00 +0000)] 
In testrunner.tcl, compile the Windows Default configuration using
SQLITE_ENABLE_STMT_SCANSTATUS.

FossilOrigin-Name: 49e8b1635f29d9fd0dc2ef6e312fd4129f2283f68e9423d95ff9b55077688ad7

10 months agoFix harmless compiler warnings in the percentile extension.
drh [Tue, 3 Sep 2024 12:41:21 +0000 (12:41 +0000)] 
Fix harmless compiler warnings in the percentile extension.

FossilOrigin-Name: c5557f281c6294b6db6682349d245feac7c6ce7f4f61356f486afdf186c566c4

10 months agoIn testrunner.tcl, allow setting njob to zero, which causes no new jobs
drh [Tue, 3 Sep 2024 10:53:32 +0000 (10:53 +0000)] 
In testrunner.tcl, allow setting njob to zero, which causes no new jobs
to be launched and for the process to shut down once all current jobs are
completed.

FossilOrigin-Name: 0ef65fd4ba17def4c13986365b3af300c4024725af4bc314845d1af8be568ab4

10 months agoCause cfGets() (under SQLITE_USE_ONLY_WIN32) to better emulate fgets().
larrybr [Tue, 3 Sep 2024 02:09:13 +0000 (02:09 +0000)] 
Cause cfGets() (under SQLITE_USE_ONLY_WIN32) to better emulate fgets().

FossilOrigin-Name: 2d783524d1671d988ebb1b21c83de99c9f335963b6c20cf4df612f58c13da913

10 months agoFix possible NULL pointer dereference following OOM in the new error reporting
drh [Mon, 2 Sep 2024 21:59:31 +0000 (21:59 +0000)] 
Fix possible NULL pointer dereference following OOM in the new error reporting
logic of the percentile extension.

FossilOrigin-Name: 7891a266c4425722ae8b9231397ef9e42e2432be9e6b70632dfaf9ff15300d2c

10 months agoFix a technically undefined signed integer overflow in fts5.
dan [Mon, 2 Sep 2024 18:41:59 +0000 (18:41 +0000)] 
Fix a technically undefined signed integer overflow in fts5.

FossilOrigin-Name: e6bec37ea1ca51e1d048941ce4c5211d8fc5c5e3556a1441f9c79b036843f9e3

10 months agoMake the percential extension easier to incorporate as a built-in on Windows
drh [Mon, 2 Sep 2024 17:27:10 +0000 (17:27 +0000)] 
Make the percential extension easier to incorporate as a built-in on Windows
applications.

FossilOrigin-Name: 831e2be4117dc7f5113f66d3e484ca34e4405444ac7b0def12ee9a00608d40da

10 months agoRemove some debug/test code from percentile. Make the extension easier to
drh [Mon, 2 Sep 2024 14:46:56 +0000 (14:46 +0000)] 
Remove some debug/test code from percentile.  Make the extension easier to
statically link.

FossilOrigin-Name: 6e5f146e274b210749dd8923a2da56905eb098b5a66699ff9130e3e51b1ff662

10 months agoEnhance the percentile extension to support percentile_cont() and
drh [Mon, 2 Sep 2024 12:07:37 +0000 (12:07 +0000)] 
Enhance the percentile extension to support percentile_cont() and
percentile_disc().  Add support for ordered-set aggregate notation in
the parser when compiling with SQLITE_ENABLE_ORDERED_SET_AGGREGATES.  A
new function property SQLITE_SELFORDER1 must appear on any aggregate function
that wants to take advantage of the ordered-set aggregate notation.

FossilOrigin-Name: 557bd245ef24af15da1374762bbeb9b8b0241da06e604efdf00d567a9ed09216

10 months agoImproved error messages on percentile functions. More tests cases for ordered-set-agg
drh [Mon, 2 Sep 2024 11:17:04 +0000 (11:17 +0000)] 
Improved error messages on percentile functions.  More tests cases for
percentile and for ordered-set aggregates.

FossilOrigin-Name: e1bca168e70335fa2f9537632fd16e374c566a564fab4974c0b8f61cb63d08ce

10 months agoChange the name of the enabling compile-time macro to
drh [Mon, 2 Sep 2024 09:40:37 +0000 (09:40 +0000)] 
Change the name of the enabling compile-time macro to
SQLITE_ENABLE_ORDERED_SET_AGGREGATES.

FossilOrigin-Name: 3b1cdddf8339cc339ec74cd8be2bfa42e62b500048a444eb9e5d9817bc4702ae

10 months agoMore internal documentation improvements.
drh [Sun, 1 Sep 2024 23:56:14 +0000 (23:56 +0000)] 
More internal documentation improvements.

FossilOrigin-Name: 8b91b74931c36e1955ef933a07d8ec40c8b54c882efe7084d179168867c5244f

10 months agoImproved documentation of recent enhancements to the percentile extension.
drh [Sun, 1 Sep 2024 23:47:20 +0000 (23:47 +0000)] 
Improved documentation of recent enhancements to the percentile extension.

FossilOrigin-Name: 51e7b4c9cf19a5986432a76c5fd30cef715c170a403d7b4304a8c5888c445a91

10 months agoThe WITHIN GROUP (ORDER BY ...) syntax is now a compile-time option:
drh [Sun, 1 Sep 2024 23:27:34 +0000 (23:27 +0000)] 
The WITHIN GROUP (ORDER BY ...) syntax is now a compile-time option:
SQLITE_ENABLE_ORDERED_SET_FUNCS.  There is no increment in the code size
if the option is omitted.

FossilOrigin-Name: c9367e2532d653738af27c4d92810eb648a9e12f72d7223017c87cb0dddc6804

10 months agoImplement percentile_cont() and percentile_disc().
drh [Sun, 1 Sep 2024 20:24:24 +0000 (20:24 +0000)] 
Implement percentile_cont() and percentile_disc().

FossilOrigin-Name: b1a93f67d6b21df6fe3247c9333fead61dd425574f66ea3eb06b80c2b06f616a

10 months agoNo prepare-time penality for ordered-set aggregates for applications that
drh [Sun, 1 Sep 2024 19:19:26 +0000 (19:19 +0000)] 
No prepare-time penality for ordered-set aggregates for applications that
do not use them.

FossilOrigin-Name: e070c16d2183312e416ff6af770346041e4d3836c4db2c9ea6049f63fb0eaa07

10 months agoMerge fixes from trunk into the ordere-set-agg branch.
drh [Sun, 1 Sep 2024 18:57:52 +0000 (18:57 +0000)] 
Merge fixes from trunk into the ordere-set-agg branch.

FossilOrigin-Name: 7528ddcfdf155116353266e00e6408c526e29f04cb00ca2d9e84b105329b17c0

10 months agoImproved sort function in the percentile extension.
drh [Sun, 1 Sep 2024 18:54:31 +0000 (18:54 +0000)] 
Improved sort function in the percentile extension.

FossilOrigin-Name: 9f84e8d59bcda642e732565e840f6a880a01b2fc65af2651248f6a8a6e1cb65a

10 months agoFix to the quicksort algorithm in the percentile extension.
drh [Sun, 1 Sep 2024 10:52:20 +0000 (10:52 +0000)] 
Fix to the quicksort algorithm in the percentile extension.

FossilOrigin-Name: 54313f74b24c46f1afa1ff082ef569fa46938527095be358015e7047e17702ac

10 months agoAdd error checking: Do not allow functions other than those in the
drh [Sat, 31 Aug 2024 22:22:24 +0000 (22:22 +0000)] 
Add error checking: Do not allow functions other than those in the
percentile extension to use the ordered-set aggregate notation.

FossilOrigin-Name: 317d901429303340290334dbe7680a36339df0a50b586e3f71b6c5e5eba6d411

10 months agoDemonstration of how ordered-set aggregates might be parsed and integrated
drh [Sat, 31 Aug 2024 20:09:37 +0000 (20:09 +0000)] 
Demonstration of how ordered-set aggregates might be parsed and integrated
into the existing parse tree, should we decide to support them.

FossilOrigin-Name: ef9777890001ba0122d3add799795e118fd87243f42731ab84d4748b67605647

10 months agoInclude percentile() and merge() in the fuzzcheck test utility.
drh [Sat, 31 Aug 2024 19:24:17 +0000 (19:24 +0000)] 
Include percentile() and merge() in the fuzzcheck test utility.

FossilOrigin-Name: d1d0942a947803d45a1fd9068f3518cf412178b6b9bafcb82db44c52d5820c11

10 months agoOmit the percentile_cont() function added by [095c22e62248f8ef] (and not yet
drh [Sat, 31 Aug 2024 18:35:10 +0000 (18:35 +0000)] 
Omit the percentile_cont() function added by [095c22e62248f8ef] (and not yet
released) since its usage conflicts with the PG percentile_cont() function.

FossilOrigin-Name: 3fe0a852978f3f1218e37a58f0d3b54016d4116a3301aa32efa7c4c12c767755

10 months agoAllow percentile() and median() to act as window functions.
drh [Sat, 31 Aug 2024 18:08:31 +0000 (18:08 +0000)] 
Allow percentile() and median() to act as window functions.

FossilOrigin-Name: 94cf96af8fee55449080655bddf81cbf5c078a02d7bb5dd7e4903b36f83a8c07

10 months agoStill more test cases. percentile-window
drh [Sat, 31 Aug 2024 17:50:06 +0000 (17:50 +0000)] 
Still more test cases.

FossilOrigin-Name: f09904608195dac38172b0dd4dcab3190f33c116d468beff27f913a7433b400e

10 months agoAdd more test cases.
drh [Sat, 31 Aug 2024 17:27:55 +0000 (17:27 +0000)] 
Add more test cases.

FossilOrigin-Name: 0d0e5456793b4bef673ebc7fcc1c393a6d3c817363d948ddfe06d60eab56dc24

10 months agoAvoid unnecessary sort operations when running one of the percentile
drh [Sat, 31 Aug 2024 16:55:14 +0000 (16:55 +0000)] 
Avoid unnecessary sort operations when running one of the percentile
aggregates as a window function.

FossilOrigin-Name: 5d311536211eb1e3c887ceb7e6516d3900e6eebbccc8c445dd43cdd556182728

10 months agoTest cases added.
drh [Sat, 31 Aug 2024 15:02:07 +0000 (15:02 +0000)] 
Test cases added.

FossilOrigin-Name: 25e68229843cc84978955817285550085d1306ba4ce3b0517dd00e5d05b9ae0a

10 months agoEnhance the percentile() and median() extension functions so that they can be
drh [Sat, 31 Aug 2024 14:31:17 +0000 (14:31 +0000)] 
Enhance the percentile() and median() extension functions so that they can be
window functions.

FossilOrigin-Name: 4d0e3df4b9c609755977b8a462126242d2be1310c0122a8d4ba76d98d32a7230

10 months agoDo not fail the omittest if ICU libraries are not installed.
drh [Fri, 30 Aug 2024 17:33:25 +0000 (17:33 +0000)] 
Do not fail the omittest if ICU libraries are not installed.

FossilOrigin-Name: ddc55efd2d59df3f20743b0533550436da945453c069025a3f871d28d40e13d4

10 months agoNew makefile target: "tidy". The "tidy" target removes all build products
drh [Fri, 30 Aug 2024 16:51:41 +0000 (16:51 +0000)] 
New makefile target: "tidy".  The "tidy" target removes all build products
be leaves behind test results.  The "clean" target has been enhanced to do a
better job.  The tool/omittest.tcl script is rewritten to work on the
configure-generated Makefile and to require no arguments.

FossilOrigin-Name: e48add02695a41b26a04e7942b5333e2bf4dc5598e363367aea3a4690982667d

10 months agoA couple of #defines so that the build work with SQLITE_OMIT_FLOATING_POINT. makefile-improvements
drh [Fri, 30 Aug 2024 16:43:36 +0000 (16:43 +0000)] 
A couple of #defines so that the build work with SQLITE_OMIT_FLOATING_POINT.

FossilOrigin-Name: be768f80c703ac1645251ccbac83e07b3ea4cc231c8ea7e66374a4f78361f10b

10 months agoRework the tool/omittest.tcl script so that it works with the
drh [Fri, 30 Aug 2024 16:24:49 +0000 (16:24 +0000)] 
Rework the tool/omittest.tcl script so that it works with the
configure-generated Makefile, and requires no arguments.
Update the configure-generated Makefile with a new "tidy" target which
is like "clean" except that is preserves test logs.  Use "make tidy" to
force everything to be recompiled from scratch without destroying logs.

FossilOrigin-Name: 99491df19d68df1f0515bd5ec9240ef3dd6e0fa38a6c837a38a16a873f8e2cbb

10 months agoImprovements to "make clean" on unix.
drh [Fri, 30 Aug 2024 12:10:28 +0000 (12:10 +0000)] 
Improvements to "make clean" on unix.

FossilOrigin-Name: a1d775f07528192b09566ff1546b067ffbee0db5812e424e6b7f3cc33a67dc83

10 months agoIn the testrunner.tcl status report, try to provide a rough estimate of
drh [Fri, 30 Aug 2024 01:11:19 +0000 (01:11 +0000)] 
In the testrunner.tcl status report, try to provide a rough estimate of
the time remaining.

FossilOrigin-Name: 90bc616d20e8c247691c45de2a28d41c1632b21152dc34253eefc179a90ab31f

10 months agoSync the autoconf/Makefile.msc with the main ./Makefile.msc
drh [Thu, 29 Aug 2024 23:32:16 +0000 (23:32 +0000)] 
Sync the autoconf/Makefile.msc with the main ./Makefile.msc

FossilOrigin-Name: 9de47c3611ca05e03a661807a06c6c5c0b5c6548ea7a8d73cb63832d2dff9d0e

10 months agoAll makefiles are responsive to OPTIONS=... command-line arguments, and add
drh [Thu, 29 Aug 2024 18:32:56 +0000 (18:32 +0000)] 
All makefiles are responsive to OPTIONS=... command-line arguments, and add
the RHS value of OPTIONS= to builds and to lemon and other build steps that
might respond to -D or -U options.

FossilOrigin-Name: 854b3776ee1fcaa5931e3a0ed104978ca350d218e553586d1c40c2420e1be498

10 months agoFix a case where the BTCF_AtLast flag was being left set incorrectly. This was causin...
dan [Thu, 29 Aug 2024 16:27:57 +0000 (16:27 +0000)] 
Fix a case where the BTCF_AtLast flag was being left set incorrectly. This was causing obscure window function queries to fail.

FossilOrigin-Name: e042eb024738a83eed92cd2dfac3d2a50d2589715a3d81b1a494564dd7d8e7fa

10 months agoDo not allow sqlite3_blob_open() to work on a any table that contains
drh [Wed, 28 Aug 2024 19:13:16 +0000 (19:13 +0000)] 
Do not allow sqlite3_blob_open() to work on a any table that contains
generated columns, even columns of the table which are not generated themselves,
because such columns might be part of the expression of a STORED column.
This restriction could be relaxed some, but that would be a lot of code
for something that nobody ever uses.

FossilOrigin-Name: 6e84947123339f0ea2b7dabc6134a621eed09317f81647f15870ed50a0f7d1bc

10 months agoFix a dropped error code in fts5.
dan [Wed, 28 Aug 2024 15:54:46 +0000 (15:54 +0000)] 
Fix a dropped error code in fts5.

FossilOrigin-Name: df55502e4f412e5b1daccf82f11fa4eb932047d9972dcd16e36be00cf09f78e1

10 months agoUpdate the README.md file to recommend running "devtest" instead of "mdevtest".
drh [Wed, 28 Aug 2024 13:55:46 +0000 (13:55 +0000)] 
Update the README.md file to recommend running "devtest" instead of "mdevtest".

FossilOrigin-Name: eb016f66ea2c7ebacf8c57495843db3414602d062e4a430f2cc603c88b10c3f9

10 months agoMaybe [7420b13238da4e6b] was not such a good idea. Restore "make test" so
drh [Wed, 28 Aug 2024 13:51:51 +0000 (13:51 +0000)] 
Maybe [7420b13238da4e6b] was not such a good idea.  Restore "make test" so
that it works as before - running a single-threaded test over the source tree
with options specified by ./configure and similar.  Instead, change the
"make devtest" target so that runs the automated multi-threaded tests on
a standard configuration.

FossilOrigin-Name: dc9fee980d4f4b5a569628702e52cef9e5d8e6c69c2b84546dce47e3e514775e

10 months agoMinor wording change on testrunner output.
drh [Wed, 28 Aug 2024 13:34:20 +0000 (13:34 +0000)] 
Minor wording change on testrunner output.

FossilOrigin-Name: 115e68597957a9ee80de7f554ee3768c992051687c8f07eaf3a9fcaab7efd44e

10 months agoUpdate the "make test" target so that it is really just "mdevtest" with
drh [Wed, 28 Aug 2024 12:10:51 +0000 (12:10 +0000)] 
Update the "make test" target so that it is really just "mdevtest" with
"srctree-check" and "sourcetest".

FossilOrigin-Name: 7420b13238da4e6bfb1589eaf3cfd842fe3c4b0f3b6a3b49c24cd70589bf4809

10 months agoFurther improvements to the status display in order to maximum the amount of
drh [Wed, 28 Aug 2024 11:03:58 +0000 (11:03 +0000)] 
Further improvements to the status display in order to maximum the amount of
information shown on the limited screen realestate available when running
via "watch" or in continuous monitoring mode.  All details are still shown
when doing a stand-alone "status".

FossilOrigin-Name: 557a2c65f5ae1d8cb1858c17da0fe64fbfba83d787cfb7f2f21582960a8b9eac

10 months agoOnly limit the number of failures reported by testrunner status if using
drh [Wed, 28 Aug 2024 10:36:18 +0000 (10:36 +0000)] 
Only limit the number of failures reported by testrunner status if using
VT100 cursor movement.  For a straight-up "status" command, show everything.

FossilOrigin-Name: 791237e0f4b67f0197ae11e966554edeade0c443289d2ade00470d23bf5e8ec8