0
0
mirror of https://github.com/sqlite/sqlite.git synced 2024-11-21 19:29:09 +01:00
Commit Graph

29180 Commits

Author SHA1 Message Date
drh
92c526e71b Simplify the new syntax to be just "COMMIT AND CONTINUE TRANSACTION".
FossilOrigin-Name: 61797109a2f0fee84bc3e0a0c021544c87e4b985e7e7b549e387e396cf1f86ec
2024-11-16 14:40:11 +00:00
drh
06315a8c67 Load all the latest trunk enhancements, and especially the enhancements to
vfstrace, into the commit-and-begin branch.

FossilOrigin-Name: 605889b02122d98011e9a8d458ba01010423680dd69446458ffe7230a1d47937
2024-11-15 20:42:12 +00:00
drh
178ce6287b Enhance the vfstrace extension such that the output can be controlled using
the "PRAGMA vfstrace('...');" statement.  See header comment on the source code
for details.

FossilOrigin-Name: 96105d33597765c23dbd490b3aa0c2273731d1970d7041720e9f043dbe3517b3
2024-11-15 20:39:41 +00:00
stephan
1adf87592f In the interest of minimizing downstream disruption, set the soname of libsqlite3.so to (by default) its legacy value of libsqlite3.so.0 and unconditionally create (or replace) a symlink with that name at install-time, in addition to the newer-named symlinks.
FossilOrigin-Name: 0773677b553e032e992266c6c75e10565729238df3ef52b56602a92cf651bea7
2024-11-15 19:42:49 +00:00
drh
85aded1952 Another approach at implementing COMMIT AND BEGIN.
FossilOrigin-Name: a905bd5dd6ccb6f2e5671a5b691e61c853aa425e6a53e7e6b6dbc12e4020ef14
2024-11-15 17:28:57 +00:00
stephan
e69b4d757e Generic auto.def cleanups. No functional differences.
FossilOrigin-Name: 02aceb8c138b5b8f38c75aa0792efa12f14b002083df6141cf56ea0602d3174b
2024-11-15 16:35:24 +00:00
stephan
48c8447574 buildtclext.tcl: work around a case, reported in [forum:0683a49cb02f31a1|forum post 0683a49cb0], in which package maintainers edit their copy of tclConfig.sh to change the TCL_SHLIB_LD command.
FossilOrigin-Name: e24a3efec8c168b69d665ab20e8d715210208e6cf291ac93549fdd175a9009d6
2024-11-15 15:31:13 +00:00
stephan
2eb9605e81 configure: add optional pkg-config support for detecting ICU.
FossilOrigin-Name: 3e5b8077c6c6ce72ecab3110eb45943b9765372df789088982dbd6046a7c2523
2024-11-15 10:53:57 +00:00
stephan
ece4bf60ff When checking pkg-config for ICU support use icu-io instead of icu-uc, as that contains all requires libs on Linux and BSD.
FossilOrigin-Name: 6ca457542e1dceac2d68fe3d29ff1f0beb31a77ca3073bd7d8a6c62faabcdc1d
2024-11-15 10:47:11 +00:00
stephan
aa85c8c854 configure script doc additions for the ICU feature check.
FossilOrigin-Name: 1925a68fc2323f0788aac9c3c2bb3005182eb3286037bc383181b6aa150d4270
2024-11-15 10:12:03 +00:00
stephan
75ed9f819f An experiment in optionally using pkg-config to determine the libs to link in for ICU support, but its ldflags is missing one required lib on both Linux and OpenBSD. Keeping this for later reference, as it demonstrates how to use pkg-config from autosetup.
FossilOrigin-Name: 09caa94c9e846f9b3669b3f1acbb26b24b8bfcc9e512f17ea074dd92745c2597
2024-11-15 10:07:57 +00:00
drh
c367ef3593 Attempt to hold a lock across the COMMIT AND BEGIN boundary so that no other
process can start a new transaction in between the COMMIT and the BEGIN.

FossilOrigin-Name: bc8bcc53ff7a0cbe1c2e3a96e1bded055622b667c27284798433cc6d58c7f9fe
2024-11-14 22:59:16 +00:00
drh
a8602768f4 Fix assertion faults in the COMMIT AND BEGIN path.
FossilOrigin-Name: a9a4ac17c2169fa7f97434177dfb01eaf4fae7f99b9203677d985d048eea4559
2024-11-14 19:59:02 +00:00
drh
083aaa551c Merge more makefile enhancements from trunk into the commit-and-begin branch.
FossilOrigin-Name: 098400d36140b90e1d6dab5f54b080568c633875916a1130b6627599b4f99469
2024-11-14 19:36:41 +00:00
stephan
f121ffbde3 Fix typo in the handling of the new --dev flag which caused it to set the --debug flag instead of the --with-debug flag (the former is for autosetup's internal use).
FossilOrigin-Name: 81202d2ab5963fdcf20555b6d0b31cc955ac27f1cd87656faea5c0611c9a2ee8
2024-11-14 19:34:28 +00:00
stephan
009601d534 Remove $prefix/include from the default -I path because it can cause the build to pick up an unintended copy of sqlite3.h. Extend the ICU configure support (the origin of -I$prefix/include) to enable fetching the -I path from icu-config and apply it only to those objects which need it.
FossilOrigin-Name: f778dfdd6d6a4975c903d8ca0ebfb4fa917d543289136ea0ab740cb47d2510c1
2024-11-14 19:25:23 +00:00
drh
361549342c Merge makefile enhancements from trunk into the commit-and-begin branch.
FossilOrigin-Name: b5dd11e0ac059573c2cc14640f0cd127a9f4c3d629023b21745f5442cb2de28a
2024-11-14 19:08:15 +00:00
drh
59c80e0533 Add new makefile target "sqlite3d" (where the "d" means either "development" or
"debug") that always uses separate source files, regardless of the 
--disable-amalgmation setting.

FossilOrigin-Name: 91da205beb7e5cab7a76be98e4cfddc4fb4c07022825ea645bc97f331c6bcdaa
2024-11-14 19:06:00 +00:00
stephan
c096d6add6 Add --enable-dev configure flag which sets various other flags.
FossilOrigin-Name: ea79c363a42484357ac4ac3422f3466e5bc5cb56e5b2a06a3dc4ec90fea1c190
2024-11-14 17:52:59 +00:00
drh
458ce5f8f5 Merge the latest trunk enhancements and fixes into the commit-and-begin branch.
FossilOrigin-Name: 05fb5d30750d20db86bbee1c27bd5965f999116a05de6414ab2aef060b407ad2
2024-11-14 17:25:28 +00:00
stephan
17e7e16b3b Remove unused sqlite_cfg.h.in from the build.
FossilOrigin-Name: bba54e26de56ddf804990f5cd9a1978a14580f06c5771a79803907013df8491e
2024-11-14 16:06:36 +00:00
stephan
98be43ed73 Fix a state makefile dependency which refered to the now-removed sqlite_cfg.h.in.
FossilOrigin-Name: 9a726b4be8ddd4b388478024a0952cfd4f0b9f665ab69119a6de0b996ac72216
2024-11-14 16:00:45 +00:00
drh
ea13658566 Remove some obsolete macros from the CLI.
FossilOrigin-Name: 5c4eb625709eda24b11a0437b150a60fc1497c136a4a2ab2b9d559d893dd397a
2024-11-14 15:55:19 +00:00
stephan
752df4c49b Remove unused sqlite_cfg.h.in (sqlite_cfg.h gets generated without an input template).
FossilOrigin-Name: 6148f2d39237a85edb399e5c2beb305dccd99ca8c0cf143e8c2ddc0fc1d9e916
2024-11-14 15:25:05 +00:00
dan
c87d7bede0 Fix a problem with window functions min() and max() when used with a FILTER clause. Forum post [forum:/forumpost/e9126d554a | e9126d554a].
FossilOrigin-Name: d15fb0f75e64bbfdb8df0c0d0358aafbbd7d5e2048df676dafe1abd5e9917f2a
2024-11-14 14:38:16 +00:00
stephan
f154cef8f2 Document the if block at the end of sqlite-check-tcl.
FossilOrigin-Name: 6bfd09408b9a51c0cbdb28f901a79c9774da755294d7eb67d88e4c42c5652830
2024-11-14 12:23:05 +00:00
stephan
3b56698541 configure: avoid performing multiple checks for -lm on behalf of --enable-fts4 and --enable-fts5.
FossilOrigin-Name: 6940caa192fa0cc84dbd24191a940aec96c304c68e60ead8f239e85d093e01e0
2024-11-14 12:09:09 +00:00
drh
3e97909bc5 Early prototype code for COMMIT AND BEGIN. Does not currently work.
FossilOrigin-Name: ddac5973215478d0cacdd99c697345019018916453ec0657868a4e2c21601779
2024-11-14 12:03:13 +00:00
drh
104ab7e81f Enhance the vfstrace.c extension to show symbolic names for the various
SHM locks.

FossilOrigin-Name: c0dd7de8f1e8eb745a8beff086d8b40b289c2dd75fe099a86ccc2bd0581f5e9a
2024-11-13 18:23:18 +00:00
drh
26c080a04b Fix a memory leak in the ".dump" command of the CLI that can occur if an
error other than database corruption is seen while trying to query the
database.

FossilOrigin-Name: 2560cc7072c923f534a5de1e15d2b0dd4ac5faf0a8876d9e3bf9804345585444
2024-11-13 18:04:49 +00:00
drh
31c160ab8f Add the test/fork-test.c test program.
FossilOrigin-Name: 0611e2b0cf3f33c28cc9ff6c5da7ebba2033bcbda5b1072a30021a3e1fb4e738
2024-11-13 16:08:02 +00:00
drh
1b37bc0e66 Add the SQLITE_FCNTL_NULL_IO file-control.
FossilOrigin-Name: f0e917fcf51b59f8ccfe5b9341937341d0e6016eb275d6c33dcb10b0b301a9da
2024-11-13 14:58:35 +00:00
drh
92e9fa6fe8 Ensure that the sqlite3_index_info.idxStr string coming back from FTS5
is always zero-terminated, even if the xBestIndex call fails with an
SQLITE_CONSTRAINT error.

FossilOrigin-Name: a4e976a030851357049e672bbc0ff66d9cc152b3d5f8e03fff36a7c6f060a755
2024-11-12 13:37:00 +00:00
drh
7b32f84ebf Clarify the documentation to make it clear that rows inserted by a
CREATE TABLE AS SELECT statement are not counted by sqlite3_count64().
[forum:/forumpost/1e6cde5648|Forum post 1e6cde5648].

FossilOrigin-Name: 5c5982e3937acdcda43d6c5b46a95b82bc1839c3558a4b9ae9022384e0f13f04
2024-11-11 21:11:02 +00:00
dan
0cd2ffffb7 Fix the fts5 trigram tokenizer so that it handles non-nul-terminated strings.
FossilOrigin-Name: 84f4e37178a65e3128ac0240d37ac40df08b4050ab070d10707e35d11dcbeb10
2024-11-11 19:49:26 +00:00
drh
be46f935dc Add the ".dbtotxt" command to the CLI.
FossilOrigin-Name: b43acf5a8cd4a5efbb90b71af7710084f49bb90ffe4f56de168e8c3a6b679124
2024-11-11 19:07:58 +00:00
stephan
074cad3026 Wrap some exceptionally long lines in main.mk. Add option to override LDFLAGS on the sqlite3.dll target. Audit: all targets for which it is hypothetically relevant can now inherit user-supplied LDFLAGS, but only those provided to the configure script, not at make-time, in order to mimic the historical build's restriction in that regard.
FossilOrigin-Name: 073080cae3ea0d12b133d9c9ae98413bb32870a9738c98b89bc345181be81f23
2024-11-11 18:15:50 +00:00
drh
e4d4d73397 Use Win32 APIs to read/write the console in Windows unless the
SQLITE_USE_STDIO_FOR_CONSOLE option is defined.  This is an attempt to get
the build working on MinGW.

FossilOrigin-Name: abfe488ed67e2e3510c230e656ecf203afa549ebd1d1872442f1fadc97d0817e
2024-11-11 17:02:29 +00:00
stephan
d29a369fe2 Doc update to account for [05073350087b].
FossilOrigin-Name: b81976c520fbad0bbdbbb877fe85691bcda25c12cf5597cfe224fb6306cd65b3
2024-11-11 09:53:40 +00:00
stephan
45c2b1804f Rename proj-define-if-opt-truthy to the more accurate, and less verbose, proj-define-for-opt.
FossilOrigin-Name: 05073350087b368312515134bdf9a266eb8289a065f208421fe08aa38b562d4b
2024-11-11 09:37:19 +00:00
dan
a864ac1c5a Fix a case in fts3 where a corrupt database record was not being handled correctly.
FossilOrigin-Name: cbcb53759b9510379e2159d14b73c9746e611df550b0bd05887bd4a480b519a8
2024-11-09 17:54:51 +00:00
stephan
f1b88ec953 Fix a deps problem, introduced in [1bd9de719], which breaks the build on systems where HAVE_TCL=0.
FossilOrigin-Name: 7953a8bdcba7242c98f786283270d7b3f8830058a29f2d810457eef697855325
2024-11-09 14:34:20 +00:00
stephan
e9b04e524b Simplify usage of proj-assert by making the expr prefix implicit. Add an optional description arg to proj-assert, defaulting to the body of the assertion script.
FossilOrigin-Name: ada7b36c37c59ea02e54462b0eb8b93ff6ab45863edfd67b19f1e1a7bb2f97de
2024-11-09 10:23:04 +00:00
stephan
5c792a484d Remove three unused files from autosetup/.
FossilOrigin-Name: 906563a7e07fca81effb31a77ee5d7cdacd4cc6157e16e1139da70c92716869a
2024-11-09 09:19:29 +00:00
stephan
497f84885b Remove an unused lib import from auto.def.
FossilOrigin-Name: 53a71981abf5aaca01e86ff87c3779d7dcc6661c80e1f2bf74515f49993b6a0d
2024-11-09 06:35:09 +00:00
drh
4ddeccfc15 Increase the minimum SQLITE_LENGTH_LIMIT from 1 to 30 to avoid problems doing
simple things like converting strings into integers.  See also
[8fd5b8ec4ab9b555].

FossilOrigin-Name: 6aa01707af4bd96f0f173f9e87f2398be7e6f246f59baa117092849a626b2d61
2024-11-08 20:57:45 +00:00
dan
23cfa0138e Fix an assert() failure in sqlite3recover.c.
FossilOrigin-Name: f52bb19281b189508f5c31305cbd4a5651f3e036a4ee753c64488b0c7e5d2e4d
2024-11-08 20:44:16 +00:00
stephan
4441897daa Remove one dep from .tclenv.sh which is only valid for configure-driven builds, not static makefiles.
FossilOrigin-Name: 22986767da8f086daaa6dc760c15e6aedcc5d2d6033937ac2f112ee5750d7fdb
2024-11-08 14:34:33 +00:00
stephan
a700db9387 Add 'tcl' makefile target which builds all but tclextension (which does not have a well-defined name and dependencies). Improve the deps for .tclenv.sh to avoid getting a stale tclsh when re-configuring with a different --with-tcl(sh).
FossilOrigin-Name: 1bd9de719b0944fdceec32103da3131a7d387820850ab03f652f813d840355b8
2024-11-08 13:37:00 +00:00
stephan
a4093dcc06 Add missing CFLAGS.intree_includes to T.compile.tcl to fix build of tclsqlite3.
FossilOrigin-Name: bb3c6dc126896528328bb9f51a28a1d46d4549e687c93c16f2d164230c6b1684
2024-11-08 08:01:56 +00:00