Commit Graph

13475 Commits

Author SHA1 Message Date
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 8a1cd765df Add the --summary option to the sqldiff command-line tool.
FossilOrigin-Name: 88b22761c59b06fa86c57f8d22a46046ad17d5d5
2015-04-14 19:01:08 +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
dan 481ecd95d0 Test that if the definition of a collation sequence is changed and VACUUM run, the new database contains records sorted in the (new) correct order.
FossilOrigin-Name: ce6eaac10a190b26b87bfe75918e2ef58fd7a3f9
2015-04-13 14:08:27 +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 9dc225ef1c Update the version number to 3.8.10 because of the new sort optimizations from check-in [79326d6eec].
FossilOrigin-Name: bd2cfa1d72368db91064bace298df3d77d9963e6
2015-04-12 21:28:50 +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
drh dba04b6d8e Add the --changeset option to the sqldiff utility program, for generating
a sessions changeset file instead of an SQL diff.

FossilOrigin-Name: f9a3a8391c28cf13d76ec54f471735d35059acea
2015-04-11 13:49:16 +00:00
drh 6e42ce44db The --changeset option now appears to be working.
FossilOrigin-Name: 1a2e2803920dcf64190d81d8a487d6c3c9bb28ee
2015-04-11 13:48:01 +00:00
drh 697e5dba80 First complete attempt to generate a working changeset. Still contains bugs.
FossilOrigin-Name: 5611fa9bd5b8fd762d16ce9b0853c2e779a1a1b7
2015-04-11 12:07:40 +00:00
dan 8aad8c482c Update tests in whereD.test to account for the change in the previous commit.
FossilOrigin-Name: da49700ca148d91e1b8863c2eb6ee79144e83ac9
2015-04-11 11:53:39 +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
drh 83e63dc385 Work toward adding the --changeset option to the sqldiff utility program.
Changes are incomplete.  This is an incremental check-in.

FossilOrigin-Name: 463e38d765f9d055b63792a8ea15c3782657b07f
2015-04-10 19:41:18 +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 2139d252dd Fix incorrect column names in UPDATE statements generated by the sqldiff
utility.

FossilOrigin-Name: ee53b46011852e27db23708387fe1e918cc8284c
2015-04-09 19:39:54 +00:00
drh a37591cdd1 Add the --primarykey option to the sqldiff tool, which causes it to use the
schema-defined PRIMARY KEY.

FossilOrigin-Name: 5063f9070afde9374ea0f2bc338fee840d8b3dd4
2015-04-09 18:14:03 +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 39b355c70f Fix comment typos in the sqldiff.c utility program.
FossilOrigin-Name: 32ab2bb990746a84f5944e3cf428fb2dff3628da
2015-04-09 13:40:18 +00:00
drh d62c0f4c2d Add the "sqldiff" utility program.
FossilOrigin-Name: 88da5bf5d2c4f848dbd4b5ffb1539abfbbdaff18
2015-04-09 13:34:29 +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 5efbd06ab3 Version 3.8.9
FossilOrigin-Name: 8a8ffc862e96f57aa698f93de10dee28e69f6e09
version-3.8.9
2015-04-08 12:16:33 +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