Commit Graph

29059 Commits

Author SHA1 Message Date
dan
c39ee44c85 Update log messages on this branch to say "v=22". Also add log message to slow calls to sqlite3_schema_copy().
FossilOrigin-Name: b0cd8dfcf92fffd939db7fc0e330c8a0bcef50baa6a8cdef1241be89aedcd919
2025-01-10 18:03:48 +00:00
dan
2041047bd2 Add the experimental sqlite3_schema_copy() API, for copying schemas between database handles.
FossilOrigin-Name: 04ea435d24a5a42046c6272b9f746529fa3da54944bdb9742c7ca88e25c479d8
2025-01-10 17:36:51 +00:00
dan
9d14200dc8 Minor updates to schemacopy.test.
FossilOrigin-Name: 1d544b535f64c47d2133f72a738714e0448a803a95f65d2d880281a9e6d6bd35
2025-01-10 17:09:51 +00:00
dan
2f776ec67a Allow ".testctrl schemacopy 1" in the shell tool on this branch. For testing sqlite3_schema_copy().
FossilOrigin-Name: 1edc2e5590c8451788cbfbbf1a39cc3013e40c870a7bc6597051390d7f1b52f9
2025-01-10 15:10:08 +00:00
dan
7c382dbeb3 Update test script wal2big2.test to be less sensitive to PRNG output.
FossilOrigin-Name: 2a5e7c5cd6c7c2c91e786ae9a2c0a0f766bcc6dcb88431df65e6e209bf5117b2
2025-01-10 11:34:43 +00:00
dan
14af0ee6b3 Run tests with SQLITE_TESTCTRL_SCHEMACOPY for mdevtest and sdevtest on this branch.
FossilOrigin-Name: c25dd2dec58f92c4c6686ed374facc64a6847232b47ecc95bc602babeb08f4e8
2025-01-09 20:41:18 +00:00
dan
8ed70de8b0 Rationalize and add comments to new code on this branch.
FossilOrigin-Name: e1603c9cda7cef88152cba5085541b419cee08cf58f917eecb15c4a30322fe2b
2025-01-09 19:18:51 +00:00
dan
f18b2696b7 Fix minor issues on this branch. Remove unused code.
FossilOrigin-Name: c2610bb4becf5b5c58016947e07f5c7a330210370f0d2531ab9ecb1ce8658c1a
2025-01-09 17:12:27 +00:00
dan
3e960efd46 Fix problem in test code on this branch.
FossilOrigin-Name: 05d90f8b28581f4ac3751a58e6d75ed18b29294381b3aa4c383c047ecdeabb82
2025-01-08 17:16:09 +00:00
dan
429c107c67 Ensure that integrity-check processes tables in the same order when using a copied schema as it does when using one loaded directly from the db.
FossilOrigin-Name: 961af9444275f1d18730beffc4111116877dd425eb44797e9e051273e47b8396
2025-01-08 10:55:39 +00:00
dan
193a686d68 Fix many problems in the sqlite3_schema_copy() function.
FossilOrigin-Name: ac9ca885902a105a4afc3bf157688c30f100bdb1064380328fd7f7a7fa126ee8
2025-01-07 21:04:51 +00:00
dan
132570c540 Implemenation of experimental API sqlite3_schema_copy(), for copying a database schema between connections. More testing to come.
FossilOrigin-Name: 65ede04d2176e7206ca6ac004df14f488c274a6b092f6a7dc897b049012898fb
2025-01-06 20:39:57 +00:00
dan
ab027549e0 Up logs to "v=21".
FossilOrigin-Name: dc3a24a784c95398656e0d7885f7eb0ee626b86c896e759a6ac5c243fd6f0ab7
2024-12-23 11:31:16 +00:00
dan
eaacac8f15 Experimental: If SQLite is compiled with SQLITE_WAL_BIGHASH defined, use hash
tables large enough to fit 128K, instead of 4K, entries in the *-shm file.

FossilOrigin-Name: 6e800b7035f55a211917d28cacf829b1681f37cbd2e6989c4cc20d4027a4192d
2024-12-23 11:23:07 +00:00
dan
f46f925962 When loading stat4 data, make a single large allocation for all Index.aSample[] arrays, instead of a separate allocation for each.
FossilOrigin-Name: b40cd7395c44b1f2d019d8e809e03de0e083c93693322a72ddb250a85640528f
2024-12-20 19:37:41 +00:00
dan
943ed39d7e Avoid a memset() when loading stat4 data. Add instrumentation to the same code.
FossilOrigin-Name: fa87355f6286be1e92f22a71cbfbfb13d1a478d5fb5b38abedbd78bf903171fa
2024-12-13 18:13:51 +00:00
drh
ac68237b12 Increase the maximum number of arguments on an SQL function to 1000 with the
capability to increase it further up to 32767 using a compile-time option.

FossilOrigin-Name: 3c25c69c93e55738cdbfdd87fa3c879b878674973955490770f5e274da1ca9a4
2024-12-12 20:39:56 +00:00
dan
5e461c62cd Add extra logging for alternative stat4 code.
FossilOrigin-Name: 9dde0365cb1df8bded58791f6409db464c969a61bc3a1a5682b4c4438c36a598
2024-12-12 19:20:40 +00:00
dan
068d15924e Experimental code to load stat4 data using a single pass.
FossilOrigin-Name: e0bcd30581b5b55abb0ba0f2855dbfa27f4e036b45423062402fe344db7bb070
2024-12-12 19:15:46 +00:00
dan
1c2d7c02c6 When a writer initializes a new *-shm file hash table, zero only the hash-table slots, not the array of page numbers.
FossilOrigin-Name: ac5401c62b3ff03e43e01d066f4664491ce9b640ec64150a58b38839b4834afb
2024-12-11 20:42:29 +00:00
dan
dd4b7b5d7a Fix a problem with the formatting of "slow schema" log messages. Also change logging version to v=17.
FossilOrigin-Name: df4183ace93b788b798b258274bf6b651906c9f1cf2af4983e447cdf52904523
2024-12-10 14:56:20 +00:00
dan
fa5d4c0fd4 Fix a problem with non-PASSIVE wal2 checkpoints sometimes taking the WRITER lock.
FossilOrigin-Name: 1a59cae3c31aea25cef3705cce2477e26515a0463cf9094bd29951899b758767
2024-12-09 21:26:21 +00:00
dan
0f6b038a35 Update logging (now v=16) to more closely analyze all attempts to load the main db schema.
FossilOrigin-Name: 65b753735b8e8fb70d2b522d527426f1eb5c09339fb4b15cf69cbd2e595b160f
2024-12-06 17:52:38 +00:00
dan
650801a22e Guard the x64 assembler in wal.c with "ifdef __x86_64__".
FossilOrigin-Name: 5fa1699e31856a6585cc59183641c4cc99e1ccd99c384d13e9c4442e9c07f41a
2024-12-06 09:36:28 +00:00
dan
56f3527b4f Add logging to report on occasions when loading the ANALYZE data is slow.
FossilOrigin-Name: 5f9f6764e9dffef60213bbc9604940ddfc713436333c3f62ed8a090697fcbb1e
2024-12-05 19:45:14 +00:00
dan
214bbd3d43 Use an inline asm "ret stosp" instruction instead of a memset() when a writer is required to zero a hash table.
FossilOrigin-Name: c10fa6af8bd8d64a6e528f3e71999d1631e66a8dd483a83c1fc30d65ccaf0f6d
2024-12-05 16:52:52 +00:00
dan
1e04ac9d69 Temporarily enable zeroing of wal2-mode hash tables within PASSIVE, as well as non-PASSIVE, checkpoints.
FossilOrigin-Name: a97a2b0da1f9e93a7cf5a4f08ded96d0d3511f84329524b4805b7481393c397e
2024-12-04 11:01:20 +00:00
dan
d791266a77 Update logging version to "v=13".
FossilOrigin-Name: 442167b86ad6b5a7ec4862ca91c3bb0b4b8e4843aa55193b96c2daadc2e7336b
2024-11-28 19:14:59 +00:00
dan
3a5e45a243 In wal2 mode, attempt to zero old *-shm hash table pages within non-PASSIVE checkpoints. This saves writers from having to do it.
FossilOrigin-Name: 40aafd458593c17ad19cd9b464edc92d914fca20bc1aa38bf7014bc9beb0e9d5
2024-11-28 18:58:54 +00:00
dan
dcb171addd Avoid ever logging times for ROLLBACK commands.
FossilOrigin-Name: bc7f7986ec115b3b89c48742da1bd1bb5fc5e7a4f9b7f35623404d546437d687
2024-11-26 17:30:15 +00:00
dan
0e8d63cbab Logging enhancements. And mark logs v=12.
FossilOrigin-Name: 853f9cf453d13cf826443b0d27331e1f4e9e06f9f4ce674f22ccadad86e20937
2024-11-20 20:26:59 +00:00
dan
bc1ab3ec1f Experimental change to omit writing frame checksums to the wal file.
FossilOrigin-Name: 4d3706727005397c3c9006b9ad9a2645b09533b02735ea68974c4f2df4c2e853
2024-11-20 18:49:01 +00:00
dan
dfeeb08ec8 Update logging version to "v=11". This should have been part of the previous commit.
FossilOrigin-Name: e6663fab61cbcb6e7955ab726821831dd55cc210550d74327265210e5bb93c2a
2024-11-20 17:47:40 +00:00
dan
74880dccd0 Extra logging for the freelist and hash table components of COMMITs of BEGIN CONCURRENT transactions.
FossilOrigin-Name: 2ba41da8c437e466c71f65d67a615293efb5a2d9da9b6e9cbb7b296221d4104a
2024-11-19 17:32:03 +00:00
dan
f0f625bda5 Increase maximum length of sqlite3_log() messages to 700 bytes. Mark log messages as v=10.
FossilOrigin-Name: 35aa893d4537d0b3605084a1f2f5529794e82af59b8893053815d3fcb4719a27
2024-11-13 14:42:32 +00:00
dan
0a1832e338 Optimize deferred allocation of pages on this branch by avoiding BTALLOC_LE.
FossilOrigin-Name: e0c0176793d41bef30e093975a87170981277dac20cde08e0fd3e0b6f40dca2f
2024-11-13 11:12:30 +00:00
dan
45537554fa Even more detailed logging of slow COMMIT statements.
FossilOrigin-Name: 3a45387a09398db8efdb2b6ecd773fa30970e61e5242823e04a2e968d1c93c10
2024-11-08 17:09:34 +00:00
dan
259b4fe442 Update log messages to say "v=8" instead of "v=7".
FossilOrigin-Name: 492a0a85438586a8ccd9629239304f4df3f2c6391ec05dd9837b7a553313d632
2024-11-01 15:25:34 +00:00
dan
10ad876270 Still more logging, this time focused on the sqlite3WalFrames() function.
FossilOrigin-Name: 52d332f0c7780acabb6a06b5fe14f654e98b64dbbba9984fb18913a97ed7fab6
2024-11-01 15:20:39 +00:00
dan
328d71ced2 Add extra logging to analyze COMMIT commands.
FossilOrigin-Name: 7dbb43bd307b5e297e6b2deac4e1d73d8cd68e37d880a5ecf5a3918a53e99d9d
2024-10-30 18:24:33 +00:00
dan
2a93c70dfa Update special logging messages on this branch to say "v=6" instead of "v=5".
FossilOrigin-Name: af4e778bd3bdf30cac3d9a6266f105a8cd71f947b8d71249ef74b8fdc0505dd7
2024-10-25 18:37:00 +00:00
dan
b27696b0d2 Reduce the number of malloc()/free() calls that may occur when a BEGIN CONCURRENT transaction is committed.
FossilOrigin-Name: fcd68bebf27e10e4e49efad220c9f53b7a109696d8b41e24f88c02460197b93f
2024-10-25 18:24:53 +00:00
dan
6bef80b425 Extra logging to debug slow commit statements.
FossilOrigin-Name: 9cafae1fff34ff45772910d6f2a19d08038edea4327234f577f6da30e5baa558
2024-10-23 17:16:59 +00:00
dan
b9cdea7c98 Add still more logging to determine why schema loads are so slow in some circumstances.
FossilOrigin-Name: d02ec06e5bde7c8dc0f21ca2bfc44597aca015854d5656f851f4518476d04381
2024-10-22 16:26:14 +00:00
dan
fdf8f9b72f Add extra logging to SQL statements used to load the database schema on this branch. This requires SQLITE_ENABLE_STMT_SCANSTATUS.
FossilOrigin-Name: 08e1dea9c070c9a2d668d39ceb153bc8b6d172e7273f6564a374c43055e84461
2024-10-21 11:49:04 +00:00
dan
a5a3174b3b Fix a typo in the previous commit.
FossilOrigin-Name: 6deb4794f8e24dbb946069de1e5c34fbcd4734162002f3bc7deb1a3f69adec05
2024-10-10 15:28:18 +00:00
dan
0fdeeae14d Add extra logging points to the code on this branch.
FossilOrigin-Name: f29ff2f308d7f7c757a8bdf9624fadbda55bd5291c18268e10d3bb7e311b229e
2024-10-10 14:31:37 +00:00
dan
1c55a2d5cb Add logging to help analyze slow "PRAGMA cache_size = ?" statements.
FossilOrigin-Name: cd6f585cadfe40778c3bf59dfbfa5f02c50cf5e10af1bd553cad4dfa56ea2249
2024-10-08 15:08:04 +00:00
dan
906f931c10 Add logging to help analyze commit performance.
FossilOrigin-Name: c5391f2cc913a16695efb63f7d2320fc18b8aaefdbdffa087a2e3d26b24dc218
2024-10-07 16:11:10 +00:00
drh
854c8b2b2d Update the bedrock branch to include all of the latest trunk enhancements.
FossilOrigin-Name: cf8f155280100c1a5b79b118875a93686a554d8be55114277f4f7b20cfd7835a
2024-09-04 16:54:56 +00:00