Commit Graph

9894 Commits

Author SHA1 Message Date
drh 4b608038b0 Fix a potential one-byte buffer overread in the command-line shell.
FossilOrigin-Name: e018f4bf1f27f7838342940ad89a12d7f1536e8e
2015-04-15 19:25:25 +00:00
drh f3392e32c7 Prevent the fetchPayload() routine from reporting a cell size that extends
off the end of the page on a pathologically corrupted database file.

FossilOrigin-Name: f71053cf658b3260a32ac06f8ba5c2cde0ea54dd
2015-04-15 17:26:55 +00:00
drh 0be0cf6721 Remove a branch that became unreachable due to one of the earlier check-ins
today.

FossilOrigin-Name: fa0956edf866f48f448967836709a3ad822ff917
2015-04-15 08:37:42 +00:00
drh 347bdc39a7 Fix the error message generator for illegal token errors so that it does not
leak memory if it immediately follows another erroneous SQL statement.

FossilOrigin-Name: 3576973f8b88b6109fbefdebfa53468ffa137009
2015-04-15 07:57:27 +00:00
drh 29031837c1 Remove an incorrect ALWAYS() from the automatic index generator.
FossilOrigin-Name: eeb4bd06bf69e411736cc6077d1d64af6bd8fb09
2015-04-15 07:34:25 +00:00
drh 1b6789697d Remove an incorrect ALWAYS() from the table_info pragma.
FossilOrigin-Name: 0e087c0183bc7a758cf2a1d39158bc24fde833a2
2015-04-15 07:19:27 +00:00
drh 3dc4cc66b3 Change the multiSelectOrderBy() routine to return non-zero if there has
been any prior error.

FossilOrigin-Name: 14784c317bff05dd0a74e2596432dfd12c139391
2015-04-15 07:10:25 +00:00
drh a43f02efc6 Fix a faulty assert() statement in the name resolver associated with the
optimization that converts compound selects with ORDER BY COLLATE into
subqueries.

FossilOrigin-Name: c72324ef9243946550ae3d974826502b1cc5eb10
2015-04-15 06:45:13 +00:00
drh 6456b7710c Correctly handle COLLATE operators applied to COLLATE operators in an
ORDER BY clause.

FossilOrigin-Name: 9e1f837b08facbc7a2b6196770599a58233e725c
2015-04-15 05:57:50 +00:00
drh 3457338ced Fix a faulty assert() in the sqlite3StrAccumAppend() routine.
FossilOrigin-Name: 998cfdb8dcda2cac94b83326751e16dcef8b267f
2015-04-15 05:38:35 +00:00
drh 65df68e8c5 Correctly deal with an unknown collating sequence on an indexed DISTINCT query.
FossilOrigin-Name: a0b6e2fed3e95cf78ed0515c6e4da7510af4e86a
2015-04-15 05:31:02 +00:00
drh 1978d171cb When adding the implied "LIMIT 1" to the end of a scalar subquery, make sure
that subquery is not a VALUES-only query as such queries cannot deal with
LIMIT clauses.

FossilOrigin-Name: 7c27310bdf6b4af44a0811a2787ed64966d720d2
2015-04-15 05:20:44 +00:00
drh 0ec68f845c When doing the (dubious) conversion of double-quoted identifier into string
literal for MySQL compatibility, be sure to also clear the iTable value from
the Expr entry to avoid an assert.

FossilOrigin-Name: d7211b68107ea669de39e0aa81a1be40901e1487
2015-04-15 04:51:28 +00:00
drh 311efc70a7 Add a test case for what was formerly thought to be an unreachable condition:
when the LHS of an OR operator contains an error and the RHS contains an IN
operator.

FossilOrigin-Name: 3872742591add4e94033484c2844e7d7ab69674b
2015-04-15 04:20:58 +00:00
drh 126a6e260c An oversize hex literal can cause a parsing error while generating code for
constants that are factored out of the main body of the VDBE program.  So
allow for that case.

FossilOrigin-Name: a084690b4fcabba20d9770ebf3a014dda84e2954
2015-04-15 04:10:50 +00:00
drh d9a0a9a0c6 Update API documentation to identify many functions as methods on objects.
No changes to code.

FossilOrigin-Name: b549cbcee1c11f9ffedf763ca672b125eac87bfe
2015-04-14 15:14:06 +00:00
drh 6bca651166 Add #ifdef magic for HAVE_GETHOSTUUID so that the build will hopefully now
work on more verions of MacOS with SQLITE_ENABLE_LOCKING_STYLE turned on.

FossilOrigin-Name: 211411d02c0729c9af0e3cc7e4910db2e7e0d08e
2015-04-13 23:05:28 +00:00
drh 2647dfa292 On a DETACH statement, keep all schemas intact except fo the one that is
being detached, and thus avoid unnecessary schema reparsing.

FossilOrigin-Name: 661db19b34566642dd44ee4cff4ebc093cb8a552
2015-04-13 22:26:55 +00:00
drh f56fa4676e Omit the "pc" or "program counter" variable from the VDBE loop for 0.6%
performance increase.

FossilOrigin-Name: d2f10c41a832f520de13cf8315be22e66552f8e1
2015-04-13 21:39:54 +00:00
drh 27a348c7a0 Remove the out2-prerelease VDBE opcode property and its associated code,
for a 0.5% performance improvement.

FossilOrigin-Name: e29c7f2c910dac07f0f92dfef5e0e743141954eb
2015-04-13 19:14:06 +00:00
dan 1fe0af200d Add a comment to wal.c to explain why a race condition is safe.
FossilOrigin-Name: bc33af866403c23d548dd4705675315810d52d7f
2015-04-13 17:43:43 +00:00
drh c01501a386 Remove a faulty assert() from the btree balancing logic.
FossilOrigin-Name: d06669d968c8f6af8799fbfeabadaab68b9b8db8
2015-04-13 14:44:01 +00:00
drh ab06b0e5be Remove an unreachable branch from the VACUUM logic.
FossilOrigin-Name: 65ace4b062d9454a296c5a1aa7ea7316b1507ad4
2015-04-13 14:03:54 +00:00
drh 4a614e9013 Remove an unreachable branch from the vdbeSorterCompareInt() routine.
FossilOrigin-Name: f666ef06869f4fb655c43daacf5034c17575d951
2015-04-13 12:45:58 +00:00
drh f932f7145e Fix a problem with a stale Select.pWith pointer when a CTE is used together
with a compound query and an ORDER BY clause.

FossilOrigin-Name: 9a453f52a2b30595891604ede7d4acf61c2736a1
2015-04-12 17:35:27 +00:00
drh 11b0481778 Avoid problems when a query has a GROUP BY and an ORDER BY but no FROM clause.
FossilOrigin-Name: e527d96a1e098ade4e9d124b630a8c2ea2ac9b36
2015-04-12 01:22:04 +00:00
dan ead438156e Optimizations for VACUUM, CREATE INDEX and some cases of ORDER BY.
FossilOrigin-Name: 79326d6eece926fd1c148b29f0b726208d8b44c0
2015-04-11 20:44:28 +00:00
dan 96974bd393 Fix a problem with sorting large amounts of partially ordered data.
FossilOrigin-Name: acca97efda86a0c020854d2dd9da16f5879986b1
2015-04-11 20:20:29 +00:00
dan a89688144e Merge latest trunk changes with this branch.
FossilOrigin-Name: cf7590f607d94a120385576b538484ca738349e2
2015-04-11 18:45:55 +00:00
dan 2813bde028 Do not assume an index contains unique entries unless it is declared UNIQUE and NOT NULL is specified for all columns. Fix for [7b4fee9f6c].
FossilOrigin-Name: e3b1f625518edc0e925116668dca5d25c3232b59
2015-04-11 11:44:27 +00:00
drh 4a33507f60 Detect and report oversized records constructed from multiple zeroblobs.
FossilOrigin-Name: 9e139afd92116ebc593114ed63b57c8f469653f6
2015-04-11 02:08:48 +00:00
mistachkin 2252917e75 Minor build enhancements for MSVC.
FossilOrigin-Name: 40c417a7efb17221cec4a0a703863854bcab8db2
2015-04-10 21:16:11 +00:00
dan 4e23536e56 In sqlite3_declare_vtab(), avoid accessing the database structure until after the "api-armour" safety-check has completed and the db mutex has been obtained.
FossilOrigin-Name: 860e4f8a94901d451fac3954960c1d2f589e8882
2015-04-10 16:05:33 +00:00
drh e918aaba98 Fix foreign key CASCADE for cases where the parent key is an INTEGER PRIMARY
KEY and the parent table contains other columns named "rowid", "_rowid_",
and "oid".

FossilOrigin-Name: ed3cbaab6ad49b0cb5b17e44def26c866919387a
2015-04-10 12:04:57 +00:00
dan 6864076cc4 Update this branch with latest trunk changes.
FossilOrigin-Name: 60be9c1c1ad0d8250a99cadda820dff40a31c94e
2015-04-10 08:20:42 +00:00
dan 75395ccd17 Do not allow virtual table constructors to be called recursively.
FossilOrigin-Name: 0a72726da21581ab16cb3e964bd825b8f2e931e4
2015-04-10 07:55:07 +00:00
drh 3875becf35 Remove two pointless assert() statements. This should silence harmless
compiler warnings reported at 
[https://bugzilla.mozilla.org/show_bug.cgi?id=1152845]

FossilOrigin-Name: 83b342a44ffc9ea07dc4d59f2866cefc68ee4f13
2015-04-09 16:30:56 +00:00
drh 50c7bb67f0 Remove a variable initializion to silence a harmless compiler warning.
FossilOrigin-Name: 79861adbef8998c0f23e160543af8212d5546cd0
2015-04-09 11:24:03 +00:00
drh b6f47deb0c Avoid signed integer overflow when converting oversized in-line integer
widths and precisions in printf().

FossilOrigin-Name: 8e4ac2ce24415926247961b00a62425ae85d6ffb
2015-04-07 15:39:29 +00:00
dan 8c069147ce Another change to avoid a problem caused by integer overflow in the printf() code.
FossilOrigin-Name: 95625ef3adc3c408d67e70f877f390445fbb8292
2015-04-07 14:38:57 +00:00
drh a30d22a7a6 Further changes to guard against integer overflow in the width and precision
of printf() arguments.

FossilOrigin-Name: 5ce4e7d7651e5c72a59f03f7aeb366291e62ab57
2015-04-07 13:28:41 +00:00
drh 74b42275ec Guard against excessive width and precision in floating-point conversions
in the printf routines.

FossilOrigin-Name: c494171f77dc2e5e04cb6d865e688448f04e5920
2015-04-07 12:41:17 +00:00
dan b33c50f215 Fix a problem with resolving ORDER BY clauses that feature COLLATE clauses attached to compound SELECT statements.
FossilOrigin-Name: 427b50fba7362e5b447e79d39050f25ed2ef10af
2015-04-04 16:43:16 +00:00
drh 62ca61ee61 Disable the SQLITE_FCNTL_WAL_BLOCK feature for now. It needs more work and
is not yet ready for release.

FossilOrigin-Name: 4ae9a3acc4eeeb7998769eb856c97c2233476f72
2015-04-03 20:33:33 +00:00
dan 29f1a19cd9 Fix a problem in vdbesort.c to do with caching unpacked records.
FossilOrigin-Name: 80a00539506c95443165a781d1d869205057ca6c
2015-04-02 09:06:21 +00:00
dan 49e24da9e7 Merge latest trunk changes with this branch.
FossilOrigin-Name: 4621b2eef8be6d944f87de097bd11c649fe43333
2015-04-01 18:22:26 +00:00
dan e34162b14f When vacuuming an index that uses no collations other than BINARY, assume that the order of index entries will not be changed by the VACUUM.
FossilOrigin-Name: e403460b96814ac8cb976d58b27939b3bd3c61f9
2015-04-01 18:20:25 +00:00
dan b18e60b3e4 Reduce the CPU used by CREATE INDEX statements by taking better advantage of the fact that keys are inserted in sorted order.
FossilOrigin-Name: 592cdc5d7254be7032aa9c0b03405a74ca060b51
2015-04-01 16:18:00 +00:00
drh ccf46d0b90 Improved detection and suppression of endless loops in clearDatabasePage().
FossilOrigin-Name: 30011ad2f55cfcacaf23a58ebcc17b17a7b9355e
2015-04-01 13:21:33 +00:00
drh f9d02f3663 On windows, flush the mapping view when syncing content to disk.
FossilOrigin-Name: a828e73dc1ae50189bdf73f60caeb7308738ad7a
2015-03-31 19:40:05 +00:00