drh
2a0df92542
Improvements to the wording of some comments. Reinstate an assert() that
...
is only true for non-corrupt database files by adding an "|| CORRUPT_DB" term.
FossilOrigin-Name: 67adb44838f98805f86aecca634d9a3b07370b9e
2014-10-30 23:14:56 +00:00
drh
ba0f999418
Tweaks to comments in btree.c. Minor code changes to enhance testability.
...
FossilOrigin-Name: c7d9aa3a1ce63e27ec94295601bc89fecf1e4977
2014-10-30 20:48:44 +00:00
drh
af8f513f9d
Fix the %c format character in sqlite3VXPrintf() so that it correctly
...
handles precisions larger than 70.
FossilOrigin-Name: 08a27440f19b7fc884464832e6105af1bf008172
2014-10-29 18:20:18 +00:00
drh
7abfe9d0c6
Version 3.8.7.1
...
FossilOrigin-Name: 3b7b72c4685aa5cf5e675c2c47ebec10d9704221
2014-10-29 13:59:56 +00:00
drh
35404253f6
Increase the version number to 3.8.7.1
...
FossilOrigin-Name: 83afe23e553e802c0947c80d0ffdd120423e7c52
2014-10-29 01:27:43 +00:00
drh
a26b9a7727
Fix problems with running UPDATE and DELETE against a VIEW and referencing
...
the rowid in the WHERE clause. This is a cherrypick of [95f8ebdbf87326f2]
and [8523670d50004f3].
FossilOrigin-Name: cc33e846c8509419f0a1fbfb286807b4c137788d
2014-10-29 01:26:25 +00:00
drh
bba8206be9
Disable the use of strchrnul() unless specifically enabled by compile-time
...
options. Cherrypick of check-in [e580470db77d6da9]
FossilOrigin-Name: 837368adfe859c41b347d3124d5b3fdf790eec03
2014-10-29 01:18:03 +00:00
drh
739383d25d
In the OP_Column opcode, when extracting a field that is past the end of
...
a short record (because the row was originally inserted prior to ALTER TABLE
ADD COLUMN) then make sure the output register is fully NULL and does not
contain leftover flags (such as MEM_Ephem) from its previous use.
Fix for ticket [43107840f1c02]. This is a cherrypick of
check-in [24780f8ddc1683fc].
FossilOrigin-Name: 304ea6ba6f4cf40a76d32d37af73a253f493ba47
2014-10-29 01:13:58 +00:00
drh
62ecc28caf
Call fsync() right after ftruncate() when in journal_mode=TRUNCATE and
...
when synchronous=FULL in order to ensure that transactions are durable
across a power loss that happens moments after the commit. Proposed
fix for [https://bugzilla.mozilla.org/show_bug.cgi?id=1072773 ].
This is a cherrypick of [3e922208b68563489].
FossilOrigin-Name: a8f9bd1e890434fcffa02fcd2baf8b0fb5d4c9dd
2014-10-29 01:07:21 +00:00
drh
22e8d833f0
In the OP_Column opcode, when extracting a field that is past the end of
...
a short record (because the row was originally inserted prior to ALTER TABLE
ADD COLUMN) then make sure the output register is fully NULL and does not
contain leftover flags (such as MEM_Ephem) from its previous use.
Fix for ticket [43107840f1c02].
FossilOrigin-Name: 24780f8ddc1683fc62180e6961dc6bfe1168f4df
2014-10-29 00:58:38 +00:00
dan
aa55563d7e
Add new test file e_totalchanges.test, containing tests of the sqlite3_total_changes() interface.
...
FossilOrigin-Name: f84af4adcc34d7a4c72027bf5b038a1a45a4c307
2014-10-28 20:49:59 +00:00
drh
4f41b7dec5
Update the documentation on the sqlite3_randomness() interface to conform
...
to enhancements associated with the SQLITE_ENABLE_API_ARMOR change.
FossilOrigin-Name: 96e9917c350dfe2069b87860bbb961424ff1105a
2014-10-28 20:35:18 +00:00
dan
c3da667b25
Modify the documentation for sqlite3_changes() to make it more testable. Add tests and minor fixes for the same.
...
FossilOrigin-Name: 41cdd0c422d61533a94870cb5ad094682956d472
2014-10-28 18:24:16 +00:00
dan
dd8c460081
Fix a crash that could occur if the WHERE clause of an UPDATE statement on a view that does not feature a column named "rowid" contains a term such as "rowid=?".
...
FossilOrigin-Name: 8523670d50004f3112b7871f11c8b8b02aab96ab
2014-10-28 16:50:10 +00:00
drh
635e57fc48
Fix a faulty assert() in the DELETE code generator.
...
FossilOrigin-Name: 95f8ebdbf87326f23cd38e561ac5632b5367a449
2014-10-28 16:19:18 +00:00
drh
c3ef4fa88a
Trivial simplification to the automatic index logic.
...
FossilOrigin-Name: 23073a053931de324323f631a6613086786af411
2014-10-28 15:58:50 +00:00
drh
916cd23b2c
Bump the version number to 3.8.8
...
FossilOrigin-Name: 1a7e711ed10860c7985e84b97cdfff748d940b9f
2014-10-28 12:35:28 +00:00
drh
eefaf448db
Correct the documentation on the maximum size of a scratch allocation.
...
FossilOrigin-Name: 30f86eb3f9ac88f83ed9e23ea6cd1fccf68e0812
2014-10-28 00:56:18 +00:00
mistachkin
2d8ad51c5b
Add special handling for static mutexes in sqlite3_mutex_alloc() when automatic calls to sqlite3_initialize() are enabled.
...
FossilOrigin-Name: 7857d27caa845e5629d94c2e66587dc89016daca
2014-10-27 22:06:21 +00:00
drh
d61a18a9f1
Remove a small amount of unnecessary #ifdeffery from random.c.
...
FossilOrigin-Name: 2b9340c8684bc382391e02813e960b3166f24daa
2014-10-27 20:14:02 +00:00
mistachkin
df9c093e2c
Fix compilation issue with MSVC due to a misplaced variable declaration.
...
FossilOrigin-Name: 9588b345d09daaa49d24d7fb6cab732e64e5474e
2014-10-27 19:58:29 +00:00
mistachkin
a95d8ca1fa
Fix harmless compiler warning in an assert statement.
...
FossilOrigin-Name: d33a1ff3aad0bfabf70a98ac338a68f82074e4fe
2014-10-27 19:42:02 +00:00
drh
98d94211ce
Fix a typo in the macro name of an #ifdef
...
FossilOrigin-Name: 9646a136e69cf2583965dfc9fac5f056af4cdb62
2014-10-27 19:39:51 +00:00
drh
a4b8fa2360
Add the SQLITE_ENABLE_API_ARMOR compile-time option for extra API parameter
...
validation. Enhance sqlite3_stricmp(), sqlite3_strnicmp(), and
sqlite3_uri_parameter() for improved NULL parameter handling.
FossilOrigin-Name: ffb9d8144bbc35bf3d929e0e13a663668fff0558
2014-10-27 18:34:07 +00:00
drh
8a42d1bba1
Fix an unused variable in btree.c:allocateSpace().
...
FossilOrigin-Name: 637246165a14c4808b90d0437e4d43fa5fac659e
2014-10-27 18:21:01 +00:00
dan
53838629ce
Optimizations aimed at reducing the number of memcpy() operations required by balance_nonroot().
...
FossilOrigin-Name: face33bea1ba3a6d57780655fa827226b4d2baa9
2014-10-27 14:26:54 +00:00
dan
f77b610e44
Add test file e_wal.test.
...
FossilOrigin-Name: fc6920b5483eeeb06a474ff399a21afa51dc4859
2014-10-27 11:25:28 +00:00
dan
61e94c9deb
If a free-slot is found within a page, but using that free-slot would fragment the page further and there are already at least 60 fragmented bytes, degragment the page. This matches the behaviour of the trunk.
...
FossilOrigin-Name: 1f80f8c136ac970dcc7fb2337263dc5922e348c3
2014-10-27 08:02:16 +00:00
dan
c65f84630b
Merge trunk with this branch.
...
FossilOrigin-Name: a13df3013bbac4a0d4fce5cef1376c857508c1c5
2014-10-27 07:01:04 +00:00
dan
89ca0b3878
Further modifications to new code to better handle corrupt databases.
...
FossilOrigin-Name: 1a8cf0a043347772ac54d150d634c32845beee8b
2014-10-25 20:36:28 +00:00
drh
d05ab6aacf
Increase the resolution of the second parameter to the likelihood() SQL
...
function (the probability value) so that it can handle probabilities
as small as 0.00000001. Formerly, it ran out of precision at 0.001.
FossilOrigin-Name: 0f08924fe0c52a85a103f67bee9809e0f8f884b0
2014-10-25 13:42:16 +00:00
drh
051575cbf4
Do not use virtual (and hence redundant) WHERE-clause terms to restrict the
...
content of a automatic partial index. Show when an automatic partial index
is used in the EXPLAIN QUERY PLAN output.
FossilOrigin-Name: b9ad601eab1d7298d369267eb697c7fa1bc16985
2014-10-25 12:28:25 +00:00
dan
31f4e99d44
Ensure that the "Any prior cache entry associated with newKey is guaranteed not to be pinned" guarantee made to xRekey implementations is not violated.
...
FossilOrigin-Name: ecc3544e712041736af7c7b4f34864a1f2e30ff7
2014-10-24 20:57:03 +00:00
drh
059b2d50e1
Enhance the automatic index logic so that it creates a partial index when
...
doing so gives the same answer for less work.
FossilOrigin-Name: d95d0313c447f5baeabdb17284d8606331ab7d49
2014-10-24 19:28:09 +00:00
dan
23eba45d23
Fix some issues in the new code on this branch related to the handling of corrupt databases.
...
FossilOrigin-Name: 19736dd9fbbb7e252c4f8715e2277d48ac41f5bc
2014-10-24 18:43:57 +00:00
dan
e6593d8e8c
Fix some minor formatting and code organization issues.
...
FossilOrigin-Name: eab8706dc47aa0a44caf73619de858397c3e0b4e
2014-10-24 16:40:49 +00:00
drh
4dd96a8315
Honor a high likelihood() on range constraints.
...
FossilOrigin-Name: 401235edf40fcd665eaf426cf5155ac6855e8537
2014-10-24 15:26:29 +00:00
drh
9769efcc4c
Get the likelihood() functions working on operators like BETWEEN that
...
create virtual terms in the WHERE-clause analysis.
FossilOrigin-Name: 03d0498d0f24bec2383d5d79edf25069effecd59
2014-10-24 14:32:21 +00:00
drh
5a5d120bcc
Fix two problems. Tests now passing.
...
FossilOrigin-Name: 1c220b806d56e163842e17038c3331f71861bd9c
2014-10-24 12:37:00 +00:00
drh
9ca95730e3
Add the SQLITE_ENABLE_API_ARMOR compile-time option. This is a work in
...
progress and is not yet completely functional.
FossilOrigin-Name: c297a84bc678f81ffc0aa9139ab73f0ca87c1971
2014-10-24 00:35:58 +00:00
drh
4f81bbb528
Implement sqlite3_create_collation() by invoking
...
sqlite3_create_collation_v2() with a NULL destructor argument. This saves
a little space.
FossilOrigin-Name: 9762ad0639cca2fc1ef0573113fb613ce9e7e83e
2014-10-23 01:01:26 +00:00
drh
b7288e28e4
Disable the use of strchrnul() unless specifically enabled by compile-time
...
options.
FossilOrigin-Name: e580470db77d6da970c755102790e603fb26b3c6
2014-10-22 20:07:19 +00:00
drh
d7d7147022
Change the 0x800 bit of SQLITE_TESTCTRL_OPTIMIZATIONS so that it disables
...
the loading of STAT3 and STAT4 content, not just the using of that content.
Change the internal name of that bit to SQLITE_Stat34.
FossilOrigin-Name: ca3b00c44ec52d209642a5ba9ef82e085fac39db
2014-10-22 19:57:16 +00:00
dan
cc8490d2cd
Merge latest trunk with this branch.
...
FossilOrigin-Name: 854a54c6c21e800b0cd999023014813f7c50b23f
2014-10-22 18:42:31 +00:00
drh
9f07cf7b2e
Take steps to avoid misestimating range query costs based on STAT4 data
...
due to the roundoff error of converting from integers to LogEst and back
to integers.
FossilOrigin-Name: 3c933bf95f291f7957580d823dce92c981375a5c
2014-10-22 15:27:05 +00:00
drh
442c5cd3cf
Call fsync() right after ftruncate() when in journal_mode=TRUNCATE and
...
when synchronous=FULL in order to ensure that transactions are durable
across a power loss that happens moments after the commit. Proposed
fix for [https://bugzilla.mozilla.org/show_bug.cgi?id=1072773 ].
FossilOrigin-Name: 3e922208b68563489c7766abb9afb4885113e7b8
2014-10-21 21:56:06 +00:00
drh
f7f2e84a9c
Further tuning of the cost estimates for skip-scan loops, especially for cases
...
when skip-scan loops are in competition with regular loops.
FossilOrigin-Name: a27861c28c4791e51d797aa37e9cca806cb58775
2014-10-21 18:16:21 +00:00
drh
1b131b7a7a
Improvements to the WHERETRACE debugging logic.
...
FossilOrigin-Name: ec1e942f08548695ff02645b3f3cd6bb2516bc9a
2014-10-21 16:01:40 +00:00
drh
c8bbce1e6a
If a skip-scan is a proper subset of some other scan, then adjust the
...
cost of the skip-scan upward so that it is more costly than the other scan.
Such a cost imbalance can arise under STAT4 because of difficulties in getting
an accurate estimate for skip-scans.
FossilOrigin-Name: f4b22a2620a5dc48949048c2ecbd226755d4b2c3
2014-10-21 01:05:09 +00:00
drh
40253262e0
Fix a (probably harmless) but in the CSV output mode of the command-line
...
shell.
FossilOrigin-Name: 19fe4a0a475bd94f491031aea7a183f7c0515cf3
2014-10-17 21:35:05 +00:00
drh
81b567a4c7
Version 3.8.7
...
FossilOrigin-Name: e4ab094f8afce0817f4074e823fabe59fc29ebb4
2014-10-17 11:24:17 +00:00
mistachkin
7bdc9749d5
Work around MSVC not being able to deduce that a local variable was initialized in a called function.
...
FossilOrigin-Name: 06c576c152c4013080c255cbbeb45bf2e298be9f
2014-10-16 21:39:17 +00:00
mistachkin
92c2e0da8f
Changes to work around Win32 and MSVCRT APIs that are not present on Windows CE 200x.
...
FossilOrigin-Name: 1418c006e377d7915a50577d4ccb21125b750bae
2014-10-16 18:34:50 +00:00
dan
facd5fd622
Update the vdbe-compress.tcl script to account for expressions of the form (123>var), where "var" should be replaced with a reference to a union member.
...
FossilOrigin-Name: 640345d880c6178f8434e3ce40329b7527588843
2014-10-16 11:45:14 +00:00
dan
5d510d4c41
Update releasetest.tcl so that x86-64 runs a superset of the x86 tests.
...
FossilOrigin-Name: 3c1e70f4d55bc009ed9ed4cf6d756d7061985851
2014-10-15 15:28:27 +00:00
dan
f41652419e
Fix a problem causing lock5.test to fail in mmap-mode.
...
FossilOrigin-Name: b3e7b446bdb47cf9d7fe43dc37e3b4f8010ee09e
2014-10-15 14:45:34 +00:00
drh
92787cf042
Add a four-byte prefix to the BtShared.pTmpSpace buffer to avoid reading
...
before the beginning of an allocation.
FossilOrigin-Name: 9386bfca128023583a24303e5f1d832987a49d43
2014-10-15 11:55:51 +00:00
dan
74439167cb
Rearrange an expression in vdbemem.c to avoid a (harmless) reference to a possibly unitialized variable.
...
FossilOrigin-Name: 4a7b3fa049a9aa0668e318287edd4a78c0588bf8
2014-10-15 11:31:35 +00:00
drh
5604cc0d3b
Make sure new sqlite3_vtab objects created by the xCreate() virtual table
...
method are initialized by the system, in accordance with the documentation.
FossilOrigin-Name: eab82330631187dcc3e5d2dddd23dbda5752904b
2014-10-14 20:25:43 +00:00
dan
8e9ba0c335
Fix some code duplication issues on this branch. Add minor optimizations to the new code.
...
FossilOrigin-Name: 58d7793bd5d608ba9fc3a2cd44b9d9512e0332ba
2014-10-14 17:27:04 +00:00
drh
8dd8362d64
Optimize a database corruption test inside of the OP_Column opcode.
...
FossilOrigin-Name: 005e5b388a8a97bca6d1f0e06c40d68d92aa1212
2014-10-13 23:39:02 +00:00
drh
facf47a891
Use the padding word in the Mem object as temporary storage for
...
serial_type value in OP_Record, and thus avoid a redundant computation of
the serial_type for each column.
FossilOrigin-Name: 4b3b65ee5ea61e9b9671ca027940bf02689cb890
2014-10-13 20:12:47 +00:00
dan
d0b8f93b5f
Merge trunk changes into this branch.
...
FossilOrigin-Name: d5b7c5a88dd58de85b3060a1f28b6d96e6e21207
2014-10-13 18:09:13 +00:00
dan
d7b545bbcb
Further work on balance_nonroot().
...
FossilOrigin-Name: 6594f9b420e2fa642737722ff8521f756ecef227
2014-10-13 18:03:27 +00:00
drh
f526dcad29
Three small optimizations to vdbeaux.c.
...
FossilOrigin-Name: 04892f8ba6c55cec4fe37bfe59b6349fd2a40698
2014-10-13 17:42:05 +00:00
drh
c22284f4b3
Reduce the CPU load imposed by sqlit3VdbeCursorMoveto() by factoring out
...
some of its functions and by avoiding unnecessary calls.
FossilOrigin-Name: c2799aece17d347c64217a0e407bb10e50c184a3
2014-10-13 16:02:20 +00:00
drh
6cf4a7dfa6
Remove the OPFLAG_CLEARCACHE flag from OP_Column. In its place, change the
...
P3 parameter of OP_SorterData to be the index of the pseudo-table cursor whose
record header cache is to be cleared. This gives a small size reduction
and performance increase.
FossilOrigin-Name: 20062f49428a2349a2dd705af570c60b499a3eef
2014-10-13 13:00:58 +00:00
drh
b53a5a9e50
Remove the VdbeCursor.lastRowid cache of the current rowid, since maintaining
...
the correct cache value uses more CPU cycles than just recomputing the rowid
on the occasions when it is actually needed. Replace it with the
VdbeCursor.aOffset field which used to be computed from VdbeCursor.aType
when needed. Saves 100 bytes of code space and runs 0.2% faster.
FossilOrigin-Name: 91384a7d727ef0f285cd430e829ba9f3852db50e
2014-10-12 22:37:22 +00:00
drh
c81aa2e120
Performance optimization and very slight size reduction for OP_Column.
...
FossilOrigin-Name: 869c30e45cc87063be423c650f16b99e8adb3df0
2014-10-11 23:31:52 +00:00
dan
09c6840153
Attempt to further reduce memcpy() in balance_nonroot().
...
FossilOrigin-Name: fec849dcca3aead2bc2d4ecffeda750684d32fb0
2014-10-11 20:00:24 +00:00
drh
d6176c4131
Simplification to the insertCell() routine in btree.c, resulting in a
...
performance boost and a very small size decrease. It turns out that the
extra work involved in sometimes avoiding an memcpy() of the first four bytes
of a record takes more time than just unconditionally copying those
four bytes.
FossilOrigin-Name: 66de15580d3c289601e67debfe1edee286f4db5f
2014-10-11 17:22:55 +00:00
drh
8683e08676
Require the SQLITE_ENABLE_RTREE compile-time option in speedtest1.c in order
...
to enable the R-Tree tests.
FossilOrigin-Name: 5d29a033b0f17b0fd74656b28a8367a9a9067f81
2014-10-11 10:52:54 +00:00
drh
4929047d1a
Make sure that a GROUP BY that also implements an ORDER BY scans the table
...
in the correct order. Fix for ticket [ba7cbfaedc7e6].
FossilOrigin-Name: 7a32fdfd4be2138c0ab00f3dc6f54a70e4e07be4
2014-10-11 02:12:58 +00:00
drh
c631faa922
Remove an unnecessary conditional from the EXPLAIN QUERY PLAN logic.
...
FossilOrigin-Name: c5dc83ebded914f07286b7f98d0a50c28c16f609
2014-10-11 01:22:16 +00:00
dan
b6453201d2
Account for the ASC/DESC properties of ORDER BY expressions when using the same index for GROUP BY and ORDER BY. Candidate fix for [ba7cbfaedc].
...
FossilOrigin-Name: 2a9573962b837973c4959465d8a5f2641d109a5a
2014-10-10 20:52:53 +00:00
drh
1f8817cb32
Restrict the scope of the explainIndexRange() function in where.c.
...
FossilOrigin-Name: c30124520027f0f860223bf842e2f09db3dafb5f
2014-10-10 19:15:35 +00:00
dan
5bd8af7c6b
Fix a failing test case in index5.test. Also tweak the way cache memory is divided between read-only and dirty pages when using SQLITE_CONFIG_PAGECACHE to reduce IO in some cases.
...
FossilOrigin-Name: 8541dfb3bbdf63dc9ab304d8a0ab8b290cdc9d96
2014-10-10 19:10:59 +00:00
drh
ab993380a2
Changes to enable compiling using VC6.
...
FossilOrigin-Name: 9ee5686ab3b0bca8cabdf455c75bd9410cdc5378
2014-10-10 18:09:52 +00:00
drh
e35626fabd
When using the -config option to releasetest.tcl, default the testing type
...
to "fulltest" if it is not specified on the command line.
FossilOrigin-Name: cf291cbe9f49396f03cfca39c2e892f27f750107
2014-10-10 17:47:00 +00:00
drh
2eeb7ae437
Provide the new "-config CONFIG" option to the test/releasetest.tcl script,
...
which allows one to run a single test configuration selected by name.
FossilOrigin-Name: d479e32be205f6cd0474f002282eae6eec613f36
2014-10-10 17:44:03 +00:00
drh
98545bb2ed
Add the estimated number of output rows to the EXPLAIN QUERY PLAN output
...
if compiled with SQLITE_EXPLAIN_ESTIMATED_ROWS. This feature is off by
default for the time being.
FossilOrigin-Name: daa8314fba9dc3c4f5e7fbda42c97604fbfc4392
2014-10-10 17:20:39 +00:00
drh
6c97789d2e
Simplify the code used to generate the text for EXPLAIN QUERY PLAN.
...
FossilOrigin-Name: beea1efc3a49cad08087fcbb18dbce71c873fe57
2014-10-10 15:47:46 +00:00
drh
681fca0018
Fix a potential problem in the whereRangeScanEst() routine when STAT4 is
...
active. The problem was introduced by recent enhancements.
FossilOrigin-Name: 68e1b4de700b5291f79249a03e1a750c6b2c9ae4
2014-10-10 15:01:46 +00:00
drh
bf59bf94b2
Cause the command-line shell to return non-zero if the final SQL statement
...
is incomplete.
FossilOrigin-Name: 177fff3b98b101b98f1e7d334b6a80530b645565
2014-10-10 13:08:33 +00:00
dan
33ea486603
Change the balance_nonroot() routine to reduce the amount of memcpy work that takes place. This is a work in progress.
...
FossilOrigin-Name: 29304499ea4b72dbb6701e10cc19b5d41f7e5ac9
2014-10-09 19:35:37 +00:00
dan
6e1a037357
Allow FTS tokenizers to choose whether or not to consider the "*" character part of tokens or not. This restores the pre-[e21bf7a2ad] behaviour. Also fix a problem causing FTS to interpret tokens beginning with "*" characters as EOF.
...
FossilOrigin-Name: 49dfee7cd1c9ab2901b8a871a6cd00b2ead76801
2014-10-09 15:08:17 +00:00
drh
622d4f8bb1
Add a test case for the memory leak fixed by the previous check-in.
...
FossilOrigin-Name: bae36d544676c90e337381a83f4513b4d925ab05
2014-10-09 14:10:38 +00:00
drh
a8950d5038
Fix a memory leak associated with the FTS4 matchinfo() function.
...
FossilOrigin-Name: fb8da82411b80a234c6a5481622027815450996a
2014-10-09 14:00:49 +00:00
drh
8e0a8f681a
Remove an always-true branch in whereRangeScanEst(). Replace it with an
...
assert().
FossilOrigin-Name: 42e48fd3a6a6219d9bd6135d821b38c5157922ba
2014-10-08 19:33:54 +00:00
drh
3705ef6a73
Fix up test cases to account for the new SQLITE_LIMIT_WORKER_THREADS limit.
...
FossilOrigin-Name: 6483d426c4c5c772cd49412ea37e0fa7a0378904
2014-10-08 15:53:21 +00:00
drh
f6aff80525
Set the connection-specific lastRowid value before calling any SQL function.
...
FossilOrigin-Name: dff0f6422e60a7e2e4efb658aab202a119cfa702
2014-10-08 14:28:31 +00:00
drh
6a15440378
Ensure that the Pager.pTmpSpace allocation is correct even if an OOM error
...
occurs while reducing the page size.
FossilOrigin-Name: e4b43967fd9a0b4944be9ab5575bff3678be8ed5
2014-10-08 13:34:21 +00:00
dan
923c0b53be
Remove some temporary code in mallocA.test that was accidentally checked in.
...
FossilOrigin-Name: dedd15f7cd13868f3be37646dd30ab7ceac5dea7
2014-10-08 11:11:24 +00:00
drh
69afd9980e
Fix the STAT4 range scan estimates for DESC indexes.
...
FossilOrigin-Name: e3fe84005259ef9a6027d25793514cebb2d4e7e0
2014-10-08 02:53:25 +00:00
drh
9a7b41d74a
More intuitive labels on ".wheretrace" output.
...
FossilOrigin-Name: adcb3fed489b580221c7bf2692a60e24248b23a0
2014-10-08 00:08:08 +00:00
drh
722246e801
Make sure the sqlite3VdbeMemClearAndResize() routine is never called with a
...
zero size parameter, since a size of zero could lead to either a memory leak
or an assertion fault.
FossilOrigin-Name: f672a380e2e52bede95ff11a533fd9f7d412d494
2014-10-07 23:02:24 +00:00
drh
89a5833cb9
Fix the corruptI.test script so that it works with
...
SQLITE_ENABLE_OVERSIZE_CELL_CHECK and with SQLITE_DEFAULT_AUTOVACUUM=1.
FossilOrigin-Name: e405b9e4a9ef322d84b20e902234b4f6aa196b1b
2014-10-07 20:09:27 +00:00
drh
3b335fce5c
Restrict the scope of the valueToText() routine.
...
FossilOrigin-Name: 13c962b33df411a0d9ead0bb1969596faa286f79
2014-10-07 16:59:22 +00:00
drh
d231aa3a42
Enhance (and fix) the MEMTYPE tags associated with heap memory allocations
...
when SQLITE_MEMDEBUG is used.
FossilOrigin-Name: ca5b789e33c4e5ce366d8f5372d086442f84e230
2014-10-07 15:46:54 +00:00
drh
85d117bc56
Remove unreachable branches in decodeIntArray() when compiling without
...
STAT3 or STAT4.
FossilOrigin-Name: 80e1baa5c225c78902e08dbea9d577ff5757847f
2014-10-06 18:33:49 +00:00
dan
61a157254f
Improve the accuracy of the estimates used when searching an index for values not present in any stat4 samples.
...
FossilOrigin-Name: 3aff9a9cac7aa994dfdaa0ab5c23ae73a1e820f0
2014-10-06 14:37:48 +00:00
drh
b8e8d5055a
Fix a harmless compiler warning inside an assert() in FTS4.
...
FossilOrigin-Name: 418f3c9ad28672e5fe38d772d34e7cf8d26bc0e1
2014-10-06 12:41:57 +00:00
drh
df868a4fbf
Tweaks to documentation on sqlite3_open() and sqlite3_bind(). No code changes.
...
FossilOrigin-Name: b8f7f19dc06c59de2e194d83e6c052fb7d28c71d
2014-10-04 19:31:53 +00:00
drh
00729cba46
Updates to documentation and requirements marks. No code changes.
...
FossilOrigin-Name: 0f8102d71a0ee828629f037775ad86fe2a544120
2014-10-04 11:59:33 +00:00
dan
4ee3eb0ad4
Add a test to show that the change on this branch is effective.
...
FossilOrigin-Name: fc619be057975b8be6d0958024c5d436edbdf084
2014-10-04 10:22:01 +00:00
drh
75b170b164
Avoid leaking Index.aiRowEst memory if an OOM causes a rollback which deletes
...
the index before the aiRowEst deletion code in sqlite3AnalysisLoad() routine
has a chance to run. Since the aiRowEst now might be deleted from freeIndex()
which does not always have a db pointer, make sure the aiRowEst memory is
not held in lookaside.
FossilOrigin-Name: efd87ba142723ba131fcc985db6eb45c5a3c637b
2014-10-04 00:07:44 +00:00
dan
0c1a18b294
Fix a division-by-zero error that might occur if the sqlite_stat1 table is corrupt.
...
FossilOrigin-Name: f9c053b23ece877a7fdbe82204a10592f2d24a2d
2014-10-03 19:29:39 +00:00
dan
43085d7425
Improve the accuracy of the estimates used when searching an index for values not present in any stat4 samples under some circumstances.
...
FossilOrigin-Name: e6f7f97dbc677c9f01b23142928c3fa7307c2fba
2014-10-03 19:16:53 +00:00
drh
79f7af9a9e
Add requirements marks on the sqlite3_db_status() interface implementation.
...
Fix a typo in the documentation. Fix the new sqlite3_result_text64() routine
so that it works correctly with an encoding parameter of SQLITE_UTF16.
FossilOrigin-Name: d2fc322728331ae2d147c8496129df5e3c655eb5
2014-10-03 16:00:51 +00:00
drh
8da47419dd
Update to requirements marks related to changes in the memory allocation
...
interface and enhancement of the documentation regarding DEFAULT clauses
in CREATE TABLE.
FossilOrigin-Name: 440705b98a3429b830ea85e71cc1e414bc6d8058
2014-10-03 14:54:47 +00:00
drh
2a3d1d17fd
Avoid a NULL pointer deference when processing the IS operator if the
...
right-hand side is an illegal "#ID" style variable.
Fix for ticket [8c32a33a53092c85a15b]
FossilOrigin-Name: ffe7573636c8057614b02f0a85559e1857fd04e4
2014-10-02 21:52:35 +00:00
drh
ccaba81e26
Show the TK_DOT operator in the TreeView debugging output.
...
No changes to production code.
FossilOrigin-Name: 07c89940c49a5dca3205a4b6fa8290f23bcb6e10
2014-10-01 13:17:34 +00:00
dan
9501a64516
Avoid ever writing before the start of an allocated buffer in the DIRECT_OVERFLOW_READ code. Fix for [e3a290961a6].
...
FossilOrigin-Name: c3c15d20c6913811956a5041c959a56ca4eeb5eb
2014-10-01 12:01:10 +00:00
drh
b08cd3f345
Improvements to the new syntax-tree output routines: Omit the "END SELECT"
...
mark and instead terminate the graph at the last item. Increase the maximum
tree depth to 100.
FossilOrigin-Name: 5ce05757aac80b99c3b2141cd301809f8e28e661
2014-09-30 19:04:41 +00:00
drh
36be4c49e4
Enable the query planner to deal with WHERE clauses that have OR terms
...
nested within AND terms that are nested within OR terms. Also remove an
unused function declaration.
FossilOrigin-Name: b6b289182f6590288ebc7b9efbcb29b6b4480538
2014-09-30 17:31:23 +00:00
drh
0a99ba3bc8
Further enhancements to the "wheretrace" debugging output.
...
FossilOrigin-Name: 670993eb8113f386cb2cb8b1507917f6da3b4d98
2014-09-30 17:03:35 +00:00
drh
5265149c0d
Enhanced debug output for OR-logic in the query loop optimizer.
...
FossilOrigin-Name: 2e375eae473e4a9f2e7870d59e22ba39051ecbce
2014-09-30 14:14:19 +00:00
drh
c90713d3d2
Show tree diagrams of data structures in the debugging output when the 0x100
...
bit is set on sqlite3WhereTrace or sqlite3SelectTrace.
FossilOrigin-Name: 92e0b4bd4d75e8b000586e51a07b3e181d9af20b
2014-09-30 13:46:49 +00:00
drh
4fa4a54f7e
Remove the SQLITE_ENABLE_TREE_EXPLAIN compile-time option. Add alternative
...
debugging display routines: sqlite3TreeViewExpr(), sqlite3TreeViewExprList(),
and sqlite3TreeViewSelect().
FossilOrigin-Name: 4ff51325d6b41d0c59e303b573700ec80c51d216
2014-09-30 12:33:33 +00:00
drh
39c4b82b5a
Fix the header comment in sqlite3VdbeDeletePriorOpcode(). No changes to
...
code.
FossilOrigin-Name: 7fb1626866c2f8dad84c7e6184824be3efd71ca2
2014-09-29 15:42:01 +00:00
drh
7682a476f6
Ensure that the OP_Prev opcode verifies that content has not been deleted
...
out from under the cursor. Fix for ticket [209d31e3161b9e9ff].
FossilOrigin-Name: 414f0d6a647a4d040b5463c73c5e15e699d85b4c
2014-09-29 15:00:28 +00:00
drh
588400b861
Reduce the amount of memcpy() required by defragmentPage().
...
FossilOrigin-Name: 3edab9957cc7bb90b52fd40b02613c2cb03fc166
2014-09-27 05:00:25 +00:00
mistachkin
843e4cdea9
Add an assert() to verify the last-row-id for the database just prior to calling a SQL function.
...
FossilOrigin-Name: d026f0c944ce812732d3595eaa3c5d432a86c7dd
2014-09-26 18:30:11 +00:00
drh
867db83159
Fix the "PRAGMA integrity_check" command so that it avoids formatting error
...
message context messages until it actually needs to generate an error message.
This avoids much formatting, and hence greatly improves the performance of
"PRAGMA integrity_check" in the common case when there are no errors. It also
makes the code a little smaller.
FossilOrigin-Name: 83913515830aa850f9e38406f9422d7e88dcab66
2014-09-26 02:41:05 +00:00
drh
3b130beb15
If an SQL function makes a recursive call to do an INSERT into the same
...
database, make sure that the last_insert_rowid() for that INSERT is recorded.
FossilOrigin-Name: e93aecc090c2a1d3c231bb2bde044886eff0bdf7
2014-09-26 01:10:02 +00:00
drh
d863346194
Minor code reformatting and comment change, to improve clarity.
...
No logic changes.
FossilOrigin-Name: baeb72a356d73e6f624edacd2986ab766105e177
2014-09-25 17:42:41 +00:00
drh
a15cc47f81
Simplifications to the SQL function and aggregate calling procedures.
...
FossilOrigin-Name: 3467049a1705b49905ea88a5c6becb6fe318f2fa
2014-09-25 13:17:30 +00:00
drh
2c4dc635a1
Simplification to the random rowid picking logic that begins running when
...
the maximum possible rowid has already been used.
FossilOrigin-Name: 1330c72e172324c68ab49e5bb2ceba985935ae01
2014-09-25 12:31:28 +00:00
drh
9fdfdc893b
Still more performance enhancements to the LIKE and GLOB operators.
...
FossilOrigin-Name: 6c8924cacc2b875270770fed2cc3b1884f57a655
2014-09-25 11:08:57 +00:00
drh
88b3322f27
More performance optimization for the LIKE and GLOB operators.
...
FossilOrigin-Name: 5ab1023d6cfe31fa8a194804b8216058977ac973
2014-09-25 03:51:37 +00:00
drh
97348b37c2
Change that might allow SQLite to build and work using the EBCDIC character
...
set.
FossilOrigin-Name: ef30e0352b3d4a29749cd0872c10e45a6649ec52
2014-09-25 02:44:29 +00:00
drh
328d913cbd
Size reduction and performance improvement in the LIKE and GLOB operators.
...
FossilOrigin-Name: b2c89ef49cd19b8031a8149a2dc47cea07dd04e0
2014-09-25 00:56:00 +00:00
drh
3fbb022b98
Have each open database allocate its pTmpSpace when the first write cursor
...
is opened, rather than on each insert or delete, for a small space savings
and performance boost.
FossilOrigin-Name: 99323552c001bc9173eb2a44542234c8ef7a9845
2014-09-24 19:47:27 +00:00
drh
b2325b72df
Small performance and size optimization for btreeUnlockIfUnused().
...
FossilOrigin-Name: 13c746f85d254475b10c3dd58555acd3bbead0ce
2014-09-24 18:31:07 +00:00
drh
feada2df39
Do not allow parameters in a DEFAULT clause of a CREATE TABLE statement.
...
Ticket [78c0c8c3c9f7c1].
FossilOrigin-Name: 1ad2bc1ed4c4ac81ac67a9660761f0eeb47c7fef
2014-09-24 13:20:22 +00:00
drh
9bfdc25062
Have the clearCell() routine return the cell size to the caller, rather
...
than have the caller make a separate call to cellSizePtr().
FossilOrigin-Name: f21d217583c205dc17f98bb4877fd4ed98cefcb1
2014-09-24 02:05:41 +00:00
drh
3f3874030c
Shorten all lines of source code in btree.c to at most 80 characters.
...
No logical changes.
FossilOrigin-Name: 5dd41cdbfebdd088ebd9a90a394ee296c207ad90
2014-09-24 01:23:00 +00:00
drh
3e28ff5cb5
Add the MemPage.noPayload boolean and use it to help
...
cellSizePtr() and btreeParseCellPtr() run faster.
FossilOrigin-Name: 8e3375313ebbf26b68561f3ed31d2a488222e5d0
2014-09-24 00:59:08 +00:00
drh
c46838309c
Remove an unused C-preprocessor macro. No functional changes to the code.
...
FossilOrigin-Name: f480582ccae0e9a917d4523191025bd16016ba64
2014-09-23 23:12:53 +00:00
drh
6200c88123
Avoid calling btreeParseCellPtr() from within fillInCell() since most of
...
what btreeParseCellPtr() computes is ignored by fillInCell(). Instead, have
fillInCell() compute the values it needs inline. Performance improvement.
FossilOrigin-Name: 4147f6671e3faa8ddffab8387a6c7d9b5b962fc8
2014-09-23 22:36:25 +00:00
drh
ab1cc58b70
Simplify the CellInfo structure for a size reduction and performance
...
improvement.
FossilOrigin-Name: bf59df66b3613c38cfb13a68091b8328ebb22c78
2014-09-23 21:25:19 +00:00
drh
3b8fea9ec6
Add the "multiplex_truncate" PRAGMA to the multiplexor extension, for
...
querying and setting the truncate flag on a database connection.
FossilOrigin-Name: d2962a5f388f30a02429e0c8b87399f482b5604c
2014-09-23 18:30:00 +00:00
drh
14f0e2128a
Adjust skip-scan cost estimates slightly so that a full table scan is
...
preferred over a skip-scan to a column with only two distinct values.
FossilOrigin-Name: ae9a42b268ad3f7d21a5813bb931e795c6917014
2014-09-23 01:40:59 +00:00
drh
a4bb5b0726
Fix to payload size overflow detection in the cellSizePtr() change of
...
the previous check-in.
FossilOrigin-Name: 7609744014c6a84a8379794a0351a2e9626ec86b
2014-09-22 20:38:10 +00:00
drh
dc41d60aaa
Size reduction and substantial performance increase for cellSizePtr().
...
FossilOrigin-Name: bc8bbf3207288d160287519c3b7123997996b440
2014-09-22 19:51:35 +00:00
drh
7e07433fe7
Tune the query planner to be more aggressive about using automatic indexes
...
on views and subqueries for which there is not opportunity to declare a
persistent schema index.
FossilOrigin-Name: 41de1643bfc9ae25e20790d707e2789b665baa2b
2014-09-22 14:30:51 +00:00
drh
d9f9441d7d
Disable shared memory operations using the unix-nolock VFS.
...
FossilOrigin-Name: 10a6e510497b471d67ac3dfb19ff256a7d18adf4
2014-09-22 03:22:27 +00:00
drh
6656630b63
Correctly handle an ORDER BY clause on an outer query when applying
...
the compound-subquery flattening optimization. Ticket [89398880bcfff].
Also add the SQLITE_ENABLE_SELECTTRACE option for additional debugging
and analysis information about select statement processing.
FossilOrigin-Name: d5880abd63c83c88e135257373afa0a3fd88297e
2014-09-21 22:31:52 +00:00
drh
d7643037e6
Add test cases for ticket [89398880bcfff9].
...
FossilOrigin-Name: 9683e001ed38b41979220eef0bdfcb54df5f3191
2014-09-21 20:31:26 +00:00
drh
249489331c
Add the "showauth" extension in ext/misc.
...
FossilOrigin-Name: 28d52c1c38d849f099bc777f5987d1ef89680c2a
2014-09-21 17:51:37 +00:00
drh
eb9b884c2d
Improved ".selecttrace" output.
...
FossilOrigin-Name: c0b61f7092a7fd2c5f51db26ce7a7a5c75c227fe
2014-09-21 00:27:26 +00:00
dan
7c0a4720ca
Candidate fix for [d11a6e908f].
...
FossilOrigin-Name: 89398880bcfff96e91d2a9c45774f5fb3209ffc1
2014-09-20 20:38:48 +00:00
drh
9300adbc79
Fix the SELECTTRACE_ENABLE macro so that it doesn't cause problems for
...
testfixture. Add new SELECTTRACE() calls.
FossilOrigin-Name: f1ba68f131d2f03e4a7bc50cde23a7609d384279
2014-09-20 20:24:49 +00:00
drh
abd4c72357
Enable SELECT query planning tracing when compiled with
...
SQLITE_ENABLE_SELECTTRACE and either SQLITE_DEBUG or SQLITE_TEST.
FossilOrigin-Name: cbe0cf9ddf46f0a678c85d49bfa74e3b7712e1a1
2014-09-20 18:18:33 +00:00
drh
af6f25aacc
Fix the usage of the _GNU_SOURCE and _BSD_SOURCE macros in the main
...
internal header file, sqliteInt.h. Set HAVE_STRCHRNUL to 1 by default on
Linux only.
FossilOrigin-Name: 59e2c9df02d7e988c5ad44c560ead1e5288b12e7
2014-09-20 00:35:05 +00:00
drh
4e7a479597
Only enable HAVE_STRCHRNUL by default on linux, as that is the only place
...
it appears to work by default.
FossilOrigin-Name: 0fac2c045f47c7735af4eb68ced81d8b43622a1f
2014-09-20 00:29:20 +00:00
mistachkin
33ac4c8bf5
Revise macro usage in 'sqliteInt.h'.
...
FossilOrigin-Name: 35db3e2f350ca2bc6bb9e1a647aec7f93bfb7065
2014-09-20 00:02:23 +00:00
drh
e7a3466458
Simplify two conditionals and add testcase() macros to the affinity transform
...
logic in the comparison operators.
FossilOrigin-Name: 544664cadfb4e504bc0b321c865d1ecb8a831e20
2014-09-19 22:44:20 +00:00
drh
1eda9f7d87
Recognize the invariant that a Mem object cannot be MEM_Dyn and have
...
a non-zero szMalloc at the same time. Enforce this with assert()s and
exploit it in the sqlite3VdbeMemClearAndResize() routine for a performance
increase.
FossilOrigin-Name: 3b21cf2b284048da4b728a5d6ec89e5c330144d4
2014-09-19 22:30:49 +00:00
drh
11a6eee8e1
Tighten the conditions under which applyNumericAffinity() be called and add
...
assert() statements to prove that it is never called otherwise.
FossilOrigin-Name: e996ca32cb643c558b616c0dd872f3351b6aa3ef
2014-09-19 22:01:54 +00:00
drh
4583c37ca0
Fix the affinity on inserts into the ANALYZE tables. Change the affinity
...
characters to be upper case, to make the P5 parameter of comparison operators
easier to read.
FossilOrigin-Name: 3f3ca76aea38d566a574f4403b375bdac32854ed
2014-09-19 20:13:25 +00:00
drh
d74a90eab8
Do not attempt to extend the temp file if VFS version 3 is not supported and
...
hence memory mapped I/O is unavailable.
FossilOrigin-Name: 3ab20ba14f0204efeec62c7dbb87cb3f60e2497f
2014-09-19 19:43:20 +00:00
drh
142341cd23
Make the "nolock" VFS on unix a version-3 VFS so that the sorter can
...
use memory-mapped I/O.
FossilOrigin-Name: 3db78d6100a1ecf58c18eec3abefa7d1250c649c
2014-09-19 19:00:48 +00:00
drh
0c8f760ab3
Remove a local variable from the OP_Column implementation, resulting in a
...
modest size reduction and a performance increase.
FossilOrigin-Name: 6199760d1340858d97c845177986b783da915d9e
2014-09-19 16:56:45 +00:00
drh
069c23c947
Small size reduction and performance increase for releaseMemArray().
...
FossilOrigin-Name: 24cd32d681df58f687b2afbe4b13d579e3efdd4b
2014-09-19 16:13:12 +00:00
drh
7abda85607
Updates to comments. No code changes.
...
FossilOrigin-Name: 9b42c3da6b2593a10b8fe4b2fcc3d650132625c1
2014-09-19 16:02:06 +00:00
drh
7b5ebcaf26
The OP_Column opcode runs faster and is smaller by manually in-lining the
...
code that persists string values in the output register.
FossilOrigin-Name: 36b613ccf0ddb764af90841994da91b7fcaa8f00
2014-09-19 15:28:33 +00:00
drh
a5476e9254
Add the sqlite3VdbeMemClearAndResize() function. Fix a sorting-index
...
prefilter problem.
FossilOrigin-Name: 987a7a211913b3949da20e43423af376f72a28ba
2014-09-19 04:42:38 +00:00
drh
137fd4fda2
Make sure that the sorting-index pre-filter recognizes that a rowid reference
...
might be sortable. This fixes a performance regression.
FossilOrigin-Name: 72727b68cd07969165f1f0943cc7e1a265436653
2014-09-19 02:01:37 +00:00
drh
322f2852f2
Add the sqlite3VdbeMemClearAndResize() interface to be used in place of
...
sqlite3VdbeMemGrow().
FossilOrigin-Name: 5b9b8987797abf7c68d2c3154f6657be9b8b1c8f
2014-09-19 00:43:39 +00:00
drh
17bcb10299
Add the Mem.szMalloc element to the Mem object and use it to keep track of
...
the size of the Mem.zMalloc allocation.
FossilOrigin-Name: 9c09ac353df6041808cace41880f4729ee73f5e1
2014-09-18 21:25:33 +00:00
mistachkin
26c79a060b
Correct typos in comments. No changes to code.
...
FossilOrigin-Name: 55879932116d373c95a5f32ec44b53a9c3f4db24
2014-09-18 18:55:47 +00:00
drh
74eaba4de2
Merge the Mem.r value into the MemValue union as Mem.u.r. Hence, a Mem can
...
now store an integer or a real but not both at the same time. Strings are
still stored in a separate element Mem.z, for now.
FossilOrigin-Name: 4c8c89d7e62aecfe2eb735f7bb114aed6b452847
2014-09-18 17:52:15 +00:00
drh
24a096297e
Performance improvement for affinity transformations on comparison operators.
...
FossilOrigin-Name: d7afdcbac24350b73a30c06c45cf0f2122820e4f
2014-09-18 16:28:59 +00:00
drh
7ea31ccb01
Since numeric affinity is the most common case, check it first. Interchange
...
the NONE and TEXT affinity codes for easier checking of no affinity.
FossilOrigin-Name: 4ef4c9a7c8510203bce0941dda2f76ded8da1de2
2014-09-18 14:36:00 +00:00
dan
9675d5dabc
Modify an assert() within sqlite3PagerWalFramesize(), a function only ever used by zipvfs, to account for recent zipvfs changes.
...
FossilOrigin-Name: 3bd7c1b2faa2d4cc95b255633204006849bfd5e0
2014-09-18 09:59:28 +00:00
drh
20f3df046a
Fix harmless warnings on 32-bit MSVC builds.
...
FossilOrigin-Name: 5192f964b2a85459553f1cea741b9791606ccc4e
2014-09-18 02:20:54 +00:00
drh
760b15984b
Make sure of the strchrnul() library function on platforms where it is
...
available.
FossilOrigin-Name: ef1aa10b7f54912cba71cd0a98c5055d501de54f
2014-09-18 01:50:09 +00:00
drh
9031494af2
Merge micro-optimizations into trunk after fixing the build on MSVC.
...
Performance now shows 7.58% faster than the 3.8.6 release on x64 with
gcc 4.8.1 and -Os.
FossilOrigin-Name: 1de558bcb13edc4e9a42a0b05e4b0ed6b14286a4
2014-09-18 01:29:11 +00:00
drh
3329a63ac5
Fix compiler warnings and change the nullMem structure initializer into a
...
format that MSVC can understand.
FossilOrigin-Name: 163bfae8583b2d3002a3a43d6bf8a66fefd73acb
2014-09-18 01:21:43 +00:00
drh
ca5506bdc4
Performance improvement and slight size reduction to the comparison operators
...
in the VDBE.
FossilOrigin-Name: 14052a7d088bed8196d90a3361ce717a5193bdc8
2014-09-17 23:37:38 +00:00
drh
d3b74200a8
In the Mem object, stop requiring that Mem.xDel be NULL when the MEM_Dyn
...
bit is clear. Also reduce the amount of initialization of Mem objects.
All for a small size reduction and performance increase.
FossilOrigin-Name: fdddb477c89dabb9f7bf2d5ccb32534868df3a03
2014-09-17 16:41:15 +00:00
drh
0725cabe3a
Improved interface to the Mem object handling. Small size reduction and
...
performance increase.
FossilOrigin-Name: 4e437844322cc20eef92928b53fa6b37eded586e
2014-09-17 14:52:46 +00:00
drh
6b478bcd9e
Continuing cleanup of memory register memory allocation handling.
...
FossilOrigin-Name: 2598aedc5dd2bac67e2e518a31f2803e469c2ba6
2014-09-16 21:54:11 +00:00
drh
8740a60016
Make sure registers are cleared properly prior to being used to store
...
the result of an OP_Column operator.
FossilOrigin-Name: 78fb8838d80b229418c347c63579989432e1af7d
2014-09-16 20:05:21 +00:00
drh
2a2a696cd7
Simplification of the OP_Column logic for the case of rows with overflow.
...
FossilOrigin-Name: f73678038d8fc399c1ca55230ae45962007c909c
2014-09-16 18:22:44 +00:00
drh
897a2d50f2
Remove an unused parameter from sqlite3VdbeIdxRowid(). This is cosmetic
...
only as the C-compiler optimizers were already omitting this parameter on
amalgamation builds.
FossilOrigin-Name: a10a6bba4963761b490b7243b388dcc920c4cfed
2014-09-16 14:55:08 +00:00
drh
75179ded97
Reduce the number of arguments to RecordCompare functions from 4 to 3,
...
resulting in a small performance increase.
FossilOrigin-Name: 8239c35aedd583af79505378bb7dbb78346a3f45
2014-09-16 14:37:35 +00:00
drh
035e563bf6
Reorder the elements of the Mem object for a small size reduction and
...
performance improvement.
FossilOrigin-Name: 0be3019ed794c10de67dfd645ceea7d45815bc4b
2014-09-16 14:16:31 +00:00
drh
7f4b19f170
Changes to sqlite3VdbeRecordUnpack() to make it slightly smaller and faster.
...
FossilOrigin-Name: 8fb90da77ce0e662c1ef1ae0d854e5164494b7af
2014-09-16 13:30:05 +00:00
drh
982ff72f0f
Performance improvement to the sqlite3MemCompare() routine by factoring out
...
sqlite3BlobCompare().
FossilOrigin-Name: 20ed2321b09ba076e50f9fc2f42c135b25746d72
2014-09-16 03:24:43 +00:00
dan
b6dea49f3d
Fix tool/showwal.c so that it handles WAL files that contain 64KiB pages.
...
FossilOrigin-Name: 4060efb646c873c4abde7ab9ddf330489a44f274
2014-09-15 16:53:23 +00:00
dan
ed7bcba798
Avoid attempting to call the xFetch() method of an sqlite3_io_methods object with a version number less than 3.
...
FossilOrigin-Name: dedaa6fb3d2e6e697d4a48649af5f42d9a11c333
2014-09-15 16:50:34 +00:00
drh
907214c8e8
Remove the EXPENSIVE_ASSERTS in pcache.c having to do with the pSynced field
...
of the Pcache object, as they are incorrect, as revealed by recent pcache
enhancements.
FossilOrigin-Name: 69a64560777f85b47349b4b2aab01dc99298592e
2014-09-15 14:59:12 +00:00
drh
9588ad95c1
Do not flatten aggregate subqueries that contain min() or max() functions
...
so that if the min()/max() are discarded by the outer query, they still
function and cause non-aggregate expression to be evaluated on the minimal
or maximal row.
FossilOrigin-Name: 0bdf1a086b3946722f4d4b328e25917f61c14713
2014-09-15 14:46:02 +00:00
drh
6092d2bcfe
Adjust comments to show that subquery flattening restriction (10) was
...
removed from the code back in 2005. This is a comment change only.
FossilOrigin-Name: 4ff0eb96bc364baed2d8005c69291ca9240b99dd
2014-09-15 11:14:50 +00:00
drh
36ce91913c
Small performance improvement to the dirty list handling in the pager.
...
FossilOrigin-Name: b332a84d5154f70f3197537df4af243eaebbb011
2014-09-12 20:30:59 +00:00
drh
236241aeb0
Simplify the way the column cache is managed around OP_Move instructions.
...
FossilOrigin-Name: 320556233e19cdd9d590a09655c3465754700d39
2014-09-12 17:41:30 +00:00
drh
fb046e7653
Fix a problem with parser memory allocation on 32-bit systems.
...
FossilOrigin-Name: 2f69a1fa6adc9377149ae7faa586a5d30b6a631b
2014-09-12 04:28:33 +00:00
drh
fc59a954cb
Fix an issue with sqlite3_bind_text64() with the SQLITE_UTF16 encoding
...
parameter. Remove some unreachable code from the text64() and blob64()
implementation.
FossilOrigin-Name: 34292b084ef48cd6e9ca5704f6b072a29733b4c2
2014-09-11 23:34:55 +00:00