drh
dba0cb2351
Remove the SQLITE_OMIT_MERGE_SORT compile-time option and its related code.
...
The merge sorter is now a required component.
FossilOrigin-Name: 8b44d6fb159e85267095e846cded2764c3bcb895
2013-03-24 22:56:49 +00:00
mistachkin
48864df97d
Many spelling fixes in comments. No changes to code.
...
FossilOrigin-Name: 6f6e2d50941e444ebc83604daddcc034137a05b7
2013-03-21 21:20:32 +00:00
drh
d91c1a1768
Add extended error codes for constraint errors.
...
FossilOrigin-Name: 5461104668a49529577f21df97f6a0e7d8f0c679
2013-02-09 13:58:25 +00:00
drh
be707b396a
When an arithmetic operation with two integer operands must give a
...
floating-point answer due to overflow, make sure the answer is not
rounded back to integer by affinity.
FossilOrigin-Name: bd7aeeb691fee69dd6a562138a7aba8e8e192272
2012-12-10 22:19:14 +00:00
dan
de7ced37fe
Remove a reference to JumpOnce from a comment in vdbe.c. No code changes.
...
FossilOrigin-Name: ee662c039d67f118008485d95603c5a43fcac75f
2012-12-10 09:08:17 +00:00
drh
0ca10dfbed
Fix the header comment on the OP_Compare operator.
...
FossilOrigin-Name: 2722f4074fd8d189b7bd2b9107484b66500e5e9b
2012-12-08 13:26:23 +00:00
drh
953f7611da
Fix a long-standing issue with the distinct-as-aggregate optimization that
...
only expressed when the new collating-sequence logic is turned on.
FossilOrigin-Name: 0aaf52a339808386984c30cca0c0c35ac2e70e7e
2012-12-07 22:18:54 +00:00
drh
fc5e546641
Make sure that the optimization that set the maximum column that will be used
...
on a particular query does not mistakenly change an opcode other than
OP_OpenRead or OP_OpenWrite. In particular, make sure it does not overwrite
the P4 field of an OP_SorterOpen.
FossilOrigin-Name: b0c1ba655d69c0c46c16ea2aef4e6c9a3e6ce3fb
2012-12-03 17:04:40 +00:00
drh
980db4b67c
Fix a typo in the header comment for the OpenPseudo opcode.
...
FossilOrigin-Name: 4f1061230e0e5a66038a4db99f1ee6203e4d2b9f
2012-10-30 14:44:14 +00:00
drh
a575967793
Make it possible to disable the subquery-by-coroutine optimization using
...
sqlite3_test_control(). Remove an always-false conditional.
FossilOrigin-Name: 564631f3e45f8f8a8db69f1e0df0d1dadbad8a2c
2012-10-30 14:39:12 +00:00
drh
21172c4cc0
Add an optimization that attempts to run a subquery as a coroutine rather
...
than manifesting it into a temporary table.
FossilOrigin-Name: 7af3acbbd49a2114fcdada9ec907c68ba9b053bd
2012-10-30 00:29:07 +00:00
drh
e8e4af7697
Consolidate more of the DISTINCT processing logic into a single spot in the
...
code. Reduce the number of OP_Column operations needed to perform a
WHERE_DISTINCT_ORDERED.
FossilOrigin-Name: 79e922f7ae29bbe06d639d648fbd72523cf9a28e
2012-09-21 00:04:28 +00:00
drh
053a128f55
Tighter VDBE code for the WHERE_DISTINCT_ORDERED case of DISTINCT keyword
...
handling.
FossilOrigin-Name: 94b48064db3cbb43e911fdf7183218b08146ec10
2012-09-19 21:15:46 +00:00
drh
3a94987819
Update the vdbe-compress.tcl script so that it accepts variable declarations
...
inside of #ifdef...#endif.
This enhancement is needed due to the change of check-in [39866c0ede5d6ef4].
FossilOrigin-Name: e7db056a0d76b2411cadbae077890df189e49414
2012-09-18 13:20:13 +00:00
mistachkin
59ee77c7d1
Fix an unused variable warning with SQLITE_OMIT_WAL.
...
FossilOrigin-Name: 39866c0ede5d6ef4dd4fd57c797f0e86a2d0dc5d
2012-09-13 15:26:44 +00:00
drh
37f58e9902
Avoid repeating calls to the sqlite3_trace() callback when the same statement
...
is evaluted multiple times by sqlite3_step() due to an SQLITE_SCHEMA
reprepare.
FossilOrigin-Name: 39f763bfc04174ee0fe2cdf6a92b7c12f726bd1b
2012-09-04 21:34:26 +00:00
drh
b5b407e5ab
Fix a typo in a comment in vdbe.c. No changes to code.
...
FossilOrigin-Name: 9fbe858b625a346690d5cefca3a6fa2a557bea11
2012-08-29 10:28:43 +00:00
dan
428c218c90
When reusing pages as part of creating a new index, allocate the leaves from each free-list trunk page in ascending order, instead of trying to maximize localization for each individual allocation. This increases the chance that pages will be written to disk in ascending order by a large CREATE INDEX statement, improving overall performance.
...
FossilOrigin-Name: d045f8b2d44e388d8c4549ff02d4ca7eff4e2038
2012-08-06 18:50:11 +00:00
drh
155812d318
Documentation and evidence mark updates. Remove a redundant assert().
...
FossilOrigin-Name: cfcbf9375fddd0aae0dd17bdc76a710ab77ef667
2012-06-07 17:57:23 +00:00
drh
bae591a960
Merge the latest trunk changes into shared-schema branch. Also fix a C99-ism
...
in that branch.
FossilOrigin-Name: 42338e9e6979bb497823527f8f39e96f63623c59
2012-06-05 19:20:03 +00:00
drh
d4e0bb0e65
Have user interfaces report out the filename of in-memory databases as an
...
empty string, as it always has. This simplifies the changes.
FossilOrigin-Name: 595dfdbffefb2598cba89980f885289d1c5f5833
2012-05-27 01:19:04 +00:00
drh
81028a455d
The former sqlite3ResetInternalSchema() routine was really two different
...
routines, selected by parameter, each with a confused mission. So split
this routine up into three separate smaller routines, calling each
separately as needed. Hopefully this will make further refactoring and
schema reset collateral damage containment easier.
FossilOrigin-Name: aa0c3493d3647d7efe527067e9fcccefda8e3008
2012-05-15 18:28:27 +00:00
drh
31f100556c
Do not abort pending queries on a RELEASE of a nested SAVEPOINT.
...
This is a candidate fix for ticket [27ca74af3c083f787].
FossilOrigin-Name: 79a4a3a84f0b367d54da5e69e64ffca474264717
2012-03-31 17:17:26 +00:00
drh
ac5e749be8
Minor changes to the core of OP_Column for performance and to clarify the
...
critical path.
FossilOrigin-Name: 868394761e41b7483a5874426ee052dfb3a9e2be
2012-03-28 16:14:50 +00:00
drh
dda5c08bf6
Improvements to comments. Minor changes to code in the hot path of
...
OP_Column - with the hope of get a few cycles of performance improvement.
FossilOrigin-Name: ca093103437f141caa3eb11539c6eb7b4dd65175
2012-03-28 13:41:10 +00:00
drh
a748fdcc43
Evaluate typeof(X) and length(Y) where X is any column and Y is a blob column
...
without actually loading X and Y from disk.
FossilOrigin-Name: b899dbeb60752843287e2c6ad3577e1d00f0d587
2012-03-28 01:34:47 +00:00
drh
a40eb7cfee
A simple change that allows the SQLITE_32BIT_ROWID compile-time option to
...
work better.
FossilOrigin-Name: f9df4063fbd100ce306a89fc649c1860fd801f31
2012-02-24 00:02:28 +00:00
drh
21021a5cbf
Add the new SQLITE_ABORT_ROLLBACK extended error code to be returned for
...
statements that are cancelled due to a rollback.
FossilOrigin-Name: 549f4fd00d8325c10099b100e5202b77ee1d83ad
2012-02-13 17:01:51 +00:00
drh
0f198a7409
Change the ROLLBACK command so that pending statements to not block it. The
...
pending statements instead return SQLITE_ABORT upon next access. Note: This
causes separate shared-cache connections in read_uncommitted mode to abort as
well.
FossilOrigin-Name: 9b66c79e054c8a109d1ee8d35fed1c42814c330d
2012-02-13 16:43:16 +00:00
drh
7a95789c0c
For queries of the form "SELECT p, max(q) FROM t1", the value of column p
...
returned is the one on the same row that holds the maximum value of q.
FossilOrigin-Name: adb29232b659c5332b6841776372407fcc350b08
2012-02-02 17:35:43 +00:00
drh
a451017d62
Data structure cleanup. Remove unused fields. Rearrange other files for
...
tighter packing and reduced memory usage.
FossilOrigin-Name: 0bc594e861ae1142e8c6c83f39b095e1432856bf
2012-02-02 15:50:17 +00:00
drh
4d0d91666c
Only invalidate the schema when the OP_ParseSchema opcode fails, not
...
on any general failure of a vdbe program.
FossilOrigin-Name: 11f68d997da4aadf3f51c12c5139f3fdda8678bf
2012-01-25 20:43:22 +00:00
drh
3f4aab1cc9
Remove a redundant assignment from the VM.
...
FossilOrigin-Name: d0dabe2f37b5fa7c2c6bb728b8591af00cdd835b
2012-01-18 01:14:42 +00:00
drh
45d29309a7
Fix typos in commands. Combine the ExpandBlob and expandBlob macros into one.
...
FossilOrigin-Name: fc9179e154751b51ddef429600d30a89d4a098bd
2012-01-08 22:18:33 +00:00
drh
e4c88c0c38
Fix typos and comments and make minor changes to a few function names,
...
as suggested by readership.
FossilOrigin-Name: e9d05cbb7676cbda83f1b3b71447404d7edde898
2012-01-04 12:57:45 +00:00
drh
b8a45bbdb8
Fix typos in comments. No changes to code.
...
FossilOrigin-Name: 6827338ecbe43e28da88d919851ebffde9f6d398
2011-12-31 21:51:55 +00:00
drh
ec86c724ac
Take out the OP_JumpOnce opcode. Revert compound SELECT to use OP_IfNot,
...
which is the correct behavior. Mark trigger registers as initially
invalid.
FossilOrigin-Name: 6a9fb47d5060fe641915f5f99cc9265409a4583b
2011-12-09 17:27:51 +00:00
drh
b8475df809
Make no assumptions about the initial state of VDBE registers.
...
FossilOrigin-Name: 521d72bdf67b4b1972331307345a18c231a6e1d6
2011-12-09 16:21:19 +00:00
dan
1d8cb21fdb
Modify the OP_Once opcode so that it works correctly in trigger sub-programs. This is a candidate fix for [7bbfb7d442].
...
FossilOrigin-Name: 557c69055a300b4082830b5f4803091dca1c3140
2011-12-09 13:24:16 +00:00
dan
0c733f67d8
Where possible, take advantage of the rowid at the end of index records to optimize range constraints (<, >, <=, >=) on the rowid column.
...
FossilOrigin-Name: 3b58f5f06648205a47e5cace0201269c406e476a
2011-11-16 15:27:09 +00:00
drh
7abc54021c
Avoid a harmless reference to an uninitialized variable following an
...
error in FTS3. This is not a bug. The change is to silence a valgrind
warning.
FossilOrigin-Name: d980c5b22fd700afb3cac5de5501c9350f2f589e
2011-10-22 21:00:46 +00:00
drh
98655a696e
Fix the virtual table rename logic so that it works even if the database
...
encoding is something other than UTF8.
Ticket [8290242b2a9a81683]
FossilOrigin-Name: d65f63531c3f8e3e55e656f049240714a3d7433f
2011-10-18 22:07:47 +00:00
drh
057fc817d7
Change the OP_JournalMode implementation so that it works even if a
...
substitute sqlite3PagerFilename() that might return NULL is used.
FossilOrigin-Name: 491ff5fb2504173d6905e38b8ea35737338aaa84
2011-10-17 23:15:31 +00:00
drh
b07028f71c
Add assert() statements and eliminate needless variable assignments in order
...
to get the clang scan-build utility to report zero problems against the
SQLite core. Clang's static analysis did find one real problem - but it was
in the command-line shell, not in the SQLite core.
FossilOrigin-Name: 60fee9574b0125705787e33c16f116cf188c8323
2011-10-14 21:49:18 +00:00
drh
48f2d3b10a
Add the new OP_Once opcode. Use it to clean up and simplify various
...
one-time initialization sections in the code, including the fix for
ticket [002caede898ae].
FossilOrigin-Name: 7f00552b739fad79517b042a6ed61abe743a917b
2011-09-16 01:34:43 +00:00
dan
03e9cfc223
Refactor the sqlite3VdbeRecordUnpack() interface to better accommodate the vdbesort.c module.
...
FossilOrigin-Name: f115b2303509c678dbe83b2fa3d9c40d82882813
2011-09-05 14:20:27 +00:00
drh
ca892a7252
The build works again with -DSQLITE_OMIT_MERGE_SORT. The merge-sorter now
...
avoids spilling to disk (letting the in-memory linked list grow without
bound) if PRAGMA temp_store=3.
FossilOrigin-Name: 68e26c4487696d194ee85370380e4b0e56d206ee
2011-09-03 00:17:51 +00:00
dan
5134d1357e
Instead of a temporary b-tree, use a linked-list and merge-sort to sort records in main memory in vdbesort.c.
...
FossilOrigin-Name: 7769fb988d9be0f2d8129aaac19620ac88f9b4a6
2011-09-02 10:31:11 +00:00
drh
c6aff30ca4
Experimental code-generator changes to utilize new opcodes for sorting.
...
FossilOrigin-Name: bab2e560f6cb989c83a96aad60f666960ede7abe
2011-09-01 15:32:47 +00:00
drh
2d36eb43a4
About a 1% overall performance improvement by using a macro to avoid
...
no-op calls to sqlite3MemReleaseExternal().
FossilOrigin-Name: ff71d20a9ed129bd1785a3f7a777ce62098735b7
2011-08-29 02:49:41 +00:00