drh
5f4a686f8c
Simplification and size reduction to the printf logic. Remove the bFlags
...
parameter from sqlite3VXPrintf() and sqlite3XPrintf(). Use sqlite3XPrintf()
instead of sqlite3_snprintf() for rendering P4 values in EXPLAIN output.
FossilOrigin-Name: 0bdb41c45aa1cc8e5c136aaa6605d54b401483bd
2016-01-30 12:50:25 +00:00
drh
def19e3b48
Change the name of the BTREE_IDXDELETE flag to BTREE_AUXDELETE, to better
...
reflect its purpose.
FossilOrigin-Name: 1d3bf6bebdda9f96734bc139601e9b05344ea0b4
2016-01-27 16:26:25 +00:00
drh
e807bdba86
Add a new hint bit on the flags parameter of sqlite3BtreeDelete(). The new
...
BTREE_IDXDELETE bit indicates that the call is to delete an index entry
corresponding to a table row that has already been deleted.
FossilOrigin-Name: ac2cbadd8000947c097da5b00c00090fe58fdcff
2016-01-21 17:06:33 +00:00
drh
36b78ee7d8
Very small simplification to the btree balancer.
...
FossilOrigin-Name: f421adf54c9db91ba6ca64a8ba3751680e47924a
2016-01-20 01:32:00 +00:00
drh
055f298ad4
Work toward making the schema parsing logic simplier and more compact.
...
FossilOrigin-Name: c52ca2c0662bb30ab34574f933429512655b19ff
2016-01-15 15:06:41 +00:00
drh
8f3f65ec1c
Remove an unused field from the MemPage object.
...
FossilOrigin-Name: 5fc0a4c1f353c4c06fcbc4bce8bbe1897ef49eee
2016-01-12 04:08:54 +00:00
drh
5a1fb1885a
Fix the build for SQLITE_OMIT_SHARED_CACHE, which was broken, possibly
...
by check-in [2d96aeba].
FossilOrigin-Name: 3392f8fa2ddf2c10ffe91ddd92470040c909b36d
2016-01-08 19:34:39 +00:00
dan
7a2347e20b
Add some assert() statements to verify, where possible, that BtShared.db is set correctly.
...
FossilOrigin-Name: 359277e0e5338f6d7743d58cf99e1c934a8460d5
2016-01-07 16:43:54 +00:00
dan
20d876fa1c
Have the vdbe layer call sqlite3BtreeEnter() on all b-trees in use from within sqlite3VdbeExec() even in SQLITE_THREADSAFE=0 builds. This ensures that BtShared.db is set correctly.
...
FossilOrigin-Name: d0214602d44d6b84b7463d530720e2560aee6edf
2016-01-07 16:06:22 +00:00
drh
a660caf2f0
Fix an assert() that might be false for a corrupt database.
...
FossilOrigin-Name: 68360cd2211b7ab25dd4ca55a2e82e31f51f2976
2016-01-01 03:37:44 +00:00
drh
45ac1c70b3
Reduce the size of the CellInfo object from 32 to 24 bytes on 64-bit machines.
...
FossilOrigin-Name: 7850715406458a61cff9eba5ad915f61f6d99482
2015-12-18 03:59:16 +00:00
drh
8b0ba7b0b8
Make greater use of the SQLITE_WITHIN macro.
...
FossilOrigin-Name: f2fc3aede55c8fa0351697f9f5ce4e544334c9af
2015-12-16 13:07:35 +00:00
drh
ac536e613a
Move pointer range comparisons into a macro, where they can be dealt with
...
in a more portable way.
FossilOrigin-Name: ad3124c834b080aaaf24934d6f08b3601ac3ae53
2015-12-10 15:09:17 +00:00
drh
72ea29d7ae
Changes to avoid undefined behavior in memset() and memcpy() and in the
...
comparisons of pointers from different allocations. All problems are found
by analysis tools - none have been seen in the wild.
FossilOrigin-Name: 901d0b8f3b72e96ffa8e9436993a12980f5ebd51
2015-12-08 16:58:45 +00:00
drh
9b0cf34f81
First attempt at enhancing the "PRAGMA cache_spill" statement to accept a
...
cache threashold size.
FossilOrigin-Name: 549d42be0dac87dc04c3eeccfdc60615c3a6ad3f
2015-11-12 14:57:19 +00:00
drh
b1d607de25
Improvements and simplifications to the equality seek logic. Tests are
...
adjusted so that they all pass now.
FossilOrigin-Name: 997ce6c90b454c03cc2ef6934752ee8dd2e520e3
2015-11-05 22:30:54 +00:00
mistachkin
63225522f9
Remove #pragma that was used to work around an obsolete issue with MSVC 2012.
...
FossilOrigin-Name: b9b22fae69000ca506656f9cf847e713c6304b75
2015-11-05 03:26:36 +00:00
drh
8dd1c25388
Performance improvements in the getAndInitPage() routine of btree.c.
...
FossilOrigin-Name: 2aa50f6f2029e3c91a4cb91224df8ec1194f215e
2015-11-04 22:31:02 +00:00
drh
9584f58cc2
Rename the sqlite3PagerAcquire() function to sqlite3PagerGet(). The former
...
macro called sqlite3PagerGet() has been removed.
FossilOrigin-Name: 708253be34084b89987efe955c34557516171a3a
2015-11-04 20:22:37 +00:00
drh
f7854c7329
Split out sqlite3BtreeCursorHintFlags() from sqlite3BtreeCursorHint()
...
the interface for improved performance.
FossilOrigin-Name: b3ec9a0d62c5543e91d4be2cd634ec4a3d6dca11
2015-10-27 13:24:37 +00:00
dan
c5dc3dcd6e
Merge the BTREE_FORDELETE enhancement with this branch.
...
FossilOrigin-Name: 20da0849ce910ceb445954dfc5f985acf9a02695
2015-10-26 20:11:24 +00:00
drh
0691191d26
Merge in all trunk changes prior to the BTREE_FORDELETE enhancement.
...
FossilOrigin-Name: 53d5a4add6b60722ad77daf98b6b8983b081e16a
2015-10-26 18:51:09 +00:00
dan
fd261ec67e
Modifications to pass a flag to internal routine sqlite3BtreeCursor() when a cursor that is used solely for deleting b-tree entries, or for obtaining the components of keys to delete from other b-trees, is opened.
...
FossilOrigin-Name: cdc92919e600007cae5eb61223684f48a65babc0
2015-10-22 20:54:33 +00:00
drh
b0df963465
Fix a comment in expr.c and add a CORRUPT_DB to an assert() in btree.c.
...
FossilOrigin-Name: 0df371d1a51c2028aefa4c704707773750317689
2015-10-16 23:55:08 +00:00
drh
99f4647ef5
Merge in all the 3.9.0 updates from trunk.
...
FossilOrigin-Name: 29444149342fc6b1ea8cd34c2c8e1fcb06eaa7ed
2015-10-14 20:09:54 +00:00
drh
48310f8c51
Work around a "security feature" bug in memcpy() on OpenBSD.
...
FossilOrigin-Name: fab6f09044d033dd09ed8a22e06bc6a7851bbabf
2015-10-10 16:41:28 +00:00
drh
9b5351d439
Fix an assert() in btree.c that is only true for non-corrupt databases.
...
FossilOrigin-Name: 29f7227ff127202c53fe7c3b6558b3c101b0a7bc
2015-09-30 14:19:08 +00:00
dan
e755e10a78
Clear the BTCF_ValidNKey flag when putting a cursor into REQUIRESEEK state. Fix for [1b266395].
...
FossilOrigin-Name: a6d5e4e8693bea3739c35fe9769ac9abfb9ed056
2015-09-30 12:59:12 +00:00
drh
ae1a015c87
Merge trunk changes into the cursor-hints branch.
...
FossilOrigin-Name: fbe637620fb7f2c9395c9ddac77d26746d6d4178
2015-09-24 15:06:30 +00:00
drh
78ac109c7f
Fix an overly-strict assert() in the btree logic.
...
FossilOrigin-Name: 825ce3201df21c6b9d5c57dcc6726c306df05220
2015-09-20 22:57:47 +00:00
dan
ad41f5eda3
Ensure that "PRAGMA integrity_check" reports an error if the free-list count header field contains a value smaller than the actual number of pages on the database free-list.
...
FossilOrigin-Name: 26f64986d1ed59c554a7cb9e00e86a7f148f1fc6
2015-09-18 14:45:01 +00:00
drh
81966bea22
Merge enhancements from trunk.
...
FossilOrigin-Name: 66fe06832614010d3156d7b21a760af9957018cc
2015-09-15 17:31:47 +00:00
drh
66336f3755
Fix a compiler warning and providing missing VdbeCoverage() calls.
...
FossilOrigin-Name: 2edd2e5edd60210e18db58bce1e096dd211b6ece
2015-09-14 14:08:25 +00:00
dan
f0ee1d3c12
Experimental change to use a single-pass approach for DELETE statements on non-virtual tables that do not fire triggers or require foriegn-key processing.
...
FossilOrigin-Name: eaeb2b80f6f8f83679c8323a81bb39570ec946fe
2015-09-12 19:26:11 +00:00
drh
163c29c5f3
Merge enhancements from trunk.
...
FossilOrigin-Name: 25ee3000e94d60d8c1d7b980f416dcc33eb11105
2015-09-03 14:39:33 +00:00
drh
d37bea5bdc
Use sqlite3XPrintf() instead of sqlite3StrAccumAppend() in a few places
...
for better performance and a smaller footprint.
FossilOrigin-Name: 82355e41084387fa11b7b531e4d660dd3b4cd984
2015-09-02 15:37:50 +00:00
drh
0403cb3012
Always provide the BTREE_BULKLOAD hint, even when SQLITE_ENABLE_CURSOR_HINTS
...
is not defined, as that hint gives a 4% performance increase.
FossilOrigin-Name: 83a844357e132683ab3d88eee0fe32a8beeb6662
2015-08-14 23:57:04 +00:00
drh
0df57012da
Refactor the sqlite3BtreeCursorHint() interface for improved maintainability.
...
FossilOrigin-Name: fc3fb5cd0d2c123a069e5b18b62bb1f708c8698a
2015-08-14 15:05:55 +00:00
drh
bec2476afc
Merge in all the trunk changes from the previous year. This breaks the
...
cursor-hint mechanism, but provides a baseline for trouble-shooting.
FossilOrigin-Name: 82a7a61bc0883b1e7432548e4890791717aa1bb3
2015-08-13 20:07:13 +00:00
mistachkin
532f179cab
Fix some harmless compiler warnings.
...
FossilOrigin-Name: 3de030c904d125ccf41fa1929646b8a002b5341b
2015-07-14 17:18:05 +00:00
drh
e56d43010d
Avoid left-shifting bits into the sign of a signed integer, as such behavior
...
is technically undefined.
FossilOrigin-Name: 9417b4021b779876dcb3b9be636f01f4055eb54e
2015-07-08 01:22:52 +00:00
drh
72e191ed71
Do not preserve the btreeInitPage() results in PRAGMA integrity_check if
...
there were cell sizing errors because PRAGMA cell_size_check was turned off
during the btreeInitPage() call.
FossilOrigin-Name: 743bf1f184be316971f2e9c651bcf573bde8654a
2015-07-04 11:14:20 +00:00
drh
d2dc87f6d5
When doing coverage analysis of a btree page for pragma integrity_check,
...
make the first entry (that covers the header, cell index, and gap) implied,
for a performance boost and size reduction.
FossilOrigin-Name: e53d497c2d2fbc5014b39f5624b52ce207800698
2015-07-02 19:47:08 +00:00
mistachkin
c29cbb0bec
Fix harmless compiler warnings and one macro VVA_ONLY macro usage issue.
...
FossilOrigin-Name: bcc8a75509aafda61feb6dcc074668c79611a662
2015-07-02 16:52:01 +00:00
drh
1910def351
Fix a (harmless) shadowed local variable definition in the integrity_check
...
logic.
FossilOrigin-Name: 3a26a919fd5550e5a0053a48cb93a27bb95cc916
2015-07-02 16:29:56 +00:00
drh
cbc6b71f39
Smaller and faster PRAGMA integrity_check that also does a better job of
...
detecting errors. Some output text describing discovered file corruption
has changed for clarity.
FossilOrigin-Name: 251a7590ff4f65f59a1c871892533e4e2c544515
2015-07-02 16:17:30 +00:00
drh
e05b3f8f0b
Simplification of PRAGMA integrity_check logic. Make sure that the depth
...
of the right-most subtree is correct. Size reduction and performance increase,
with no change in output.
FossilOrigin-Name: 550705fcb64e7ad637686e47cabe2621d65851bf
2015-07-01 17:53:49 +00:00
drh
94a3115daa
Fix some harmless compiler warnings.
...
FossilOrigin-Name: 307195c8709d7fd2a642baa8011eb0c88cfdc0ac
2015-07-01 04:08:40 +00:00
drh
88266dc17a
Change integrity_check to analyze the cells of a page in reverse order, as
...
this will tend to insert the cells into the analysis heap in increasing order
by address, which is the most efficient way to load a min-heap.
FossilOrigin-Name: 59ad912c4c1f858e04d27b1b8f25581a5f6e5daf
2015-07-01 01:31:14 +00:00
drh
329428e208
Remove the use of htonl() in the previous check-in due to linkage issues.
...
Add the get2byteAligned() macro and use it for access to the cell offsets
on btree pages for about a 1% performance gain.
FossilOrigin-Name: 79ff36b7170c9e7e7a9935c8b9d1665867771087
2015-06-30 13:28:18 +00:00