drh
d793f44723
More improvements to sqlite3BtreeMovetoUnpacked() performance.
...
FossilOrigin-Name: 88680698231b7141401f7166e3aff8dbc6008030
2013-11-25 14:10:15 +00:00
drh
ec3e6b10f4
Performance improvements in sqlite3BtreeMovetoUnpacked().
...
FossilOrigin-Name: d0fb7acea7cbfe6f2d84782a28bb51675a06576f
2013-11-25 02:38:55 +00:00
mistachkin
5bbb7198d1
Better support for UTF-8 paths on Cygwin.
...
FossilOrigin-Name: 484162b6e5a8ad9385fe2eb2a5254d13d7b0bc36
2013-11-24 23:18:21 +00:00
drh
93307e9d06
Add the --scratch parameter to speedtest1. Improved error messages when
...
misconfiguring memory parameters in speedtest1.
FossilOrigin-Name: 8f3c767a30c552548ead104ca125f182ce4849ad
2013-11-24 01:14:14 +00:00
drh
0c2df17691
The MEMSYS5 algorithm does not have to return the block with the lowest
...
address. Any block of the appropriate size will do. Use the first block
found on the freelist for the appropriate size for a performance improvement.
FossilOrigin-Name: 12e612e8e7c4a6f83acf0daf5608151fb5ec1575
2013-11-24 00:46:00 +00:00
drh
9948e95674
A much simpler fix is to simply change MEMSYS5 so that it takes any free
...
block of the appropriate size (the first on the list of free blocks) rather
than searching for the one with the smallest address. This is also faster
than using the min-heap algorithm. Need to research to verify that the
allocator still satisfies the Robson proof, however.
FossilOrigin-Name: 8191b512122c13d7fa61d8e5487652f13ec172f7
2013-11-23 22:45:12 +00:00
drh
7b65ad31e1
Add newlines at the end of some error messages in speedtest1.
...
FossilOrigin-Name: 6b98f0af7a6522873245d30598d7c79b8aeb9fa0
2013-11-23 21:29:07 +00:00
drh
e19f8327f8
Report errors from sqlite3_exec() and sqlite3_config() in speedtest1. Fix
...
a bug in the main testing logic that was found by these error reports.
FossilOrigin-Name: 659f1a98ae698d062269f8fdac84f733a460f5de
2013-11-23 11:45:58 +00:00
drh
c7c9f7110b
Fix the order of parameters to SQLITE_CONFIG_PAGECACHE in the
...
speedtest1.exe program.
FossilOrigin-Name: dbe85ef6d265ed31f4b56dfc0c72bad6adcfd7f0
2013-11-23 04:32:18 +00:00
mistachkin
1617577e77
Adjust MSVC makefile to avoid using forward slashes in file names.
...
FossilOrigin-Name: facf6deaa61ed2e1744711d621d7f50fe2067803
2013-11-23 04:22:19 +00:00
drh
ad1ca9a792
Add the "speedtest1.exe" test program.
...
FossilOrigin-Name: fb6f0c6d77b2318e6e587951514aea91db128c3c
2013-11-23 04:16:58 +00:00
mistachkin
ac1f10458b
Add experimental sqlite3_config option to control the native Win32 heap size.
...
FossilOrigin-Name: f09f11e94b5a7c2e51d99c3700d2acd2f3903de9
2013-11-23 00:27:29 +00:00
mistachkin
20b859530b
Fix harmless compiler warning.
...
FossilOrigin-Name: f336c18fb72ab90e93640b12ac540d41accc7658
2013-11-22 21:32:44 +00:00
mistachkin
f201496c6a
Minor correction to the batch build tool for MSVC.
...
FossilOrigin-Name: 22144c9df260910c4b67960b0e6a6bd5a6758cd7
2013-11-22 00:49:43 +00:00
drh
0a30592c1e
Fix a harmless clang warning in the command-line shell.
...
FossilOrigin-Name: 3d47a556f0074e39b880186fb7661b1b8955f742
2013-11-21 23:37:02 +00:00
drh
cb4f870884
Slight change to the --timer output on wordcount for better display on
...
windows: Avoid showing the full pathname of the executable.
FossilOrigin-Name: b9e047b9e3c2ee4df4a2d921db62f590fa5452d3
2013-11-21 22:02:52 +00:00
drh
501932ca68
Changes some offset and amount parameters from "int" to "u32" to avoid
...
harmless signed/unsigned comparison warnings.
FossilOrigin-Name: 4e8c5d0795cb7c603182bfa70f3855d654f0997e
2013-11-21 21:59:53 +00:00
drh
7a909855f2
Modify wordcount so that timer information appears on standard error instead
...
of standard output. Rename the run-wordcount.bash script to run-wordcount.sh
and simplify it so that it stands a better chance of running on non-GNU
systems.
FossilOrigin-Name: 586c11ed7cc6b8e2c7181231e37791c2fbc95272
2013-11-21 21:40:45 +00:00
drh
d673cddad6
Do not reuse factored constants that might have had their encodings changed.
...
FossilOrigin-Name: 487f20366ce77f0c90865d10d5aaedd95af98694
2013-11-21 21:23:31 +00:00
drh
d9f158e7b2
Fix the code generator to honor turning off constant expression factoring.
...
FossilOrigin-Name: 882622662dfadf49c65c7d80b7fd87533d079ce9
2013-11-21 20:48:42 +00:00
drh
d2b637c2af
Add the --timer option to the wordcount test program.
...
FossilOrigin-Name: a89fdf87553f01c150729c570796b5078a9b069d
2013-11-21 19:27:45 +00:00
drh
2b53e00f73
Remove a test from sqlite3VdbeMemFromBtree() which was unnecessary, and
...
after the recent OP_Column refactoring, unreachable.
FossilOrigin-Name: 23667f3ba09b7e839d76c42669dc9247a91262c8
2013-11-21 19:05:04 +00:00
drh
66e810247e
Make sure the OP_Next and OP_NextIfOpen opcodes are numbered close together
...
for efficiency in switch() statements. OP_Prev and OP_PrevIfOpen too.
FossilOrigin-Name: d4ccf0f5c656c8f0e1c32d5f7971b131f42c3cbd
2013-11-21 17:24:18 +00:00
drh
d1a01edac9
When one or more arguments to a function are constants, try to factor
...
out just those arguments into initialization code.
FossilOrigin-Name: 50d350abbc9176cd6fc606bc45b8fc3020719500
2013-11-21 16:08:52 +00:00
drh
10f468f37a
Remove the obsolete TK_CONST_FUNC token type.
...
FossilOrigin-Name: 9b4217f055e9bced186b4c56a5753bd6da7115b5
2013-11-21 14:44:38 +00:00
drh
b1fba2868b
Add the ability to factor constant functions out of inner loops. But do
...
not factor out non-constant functions, like random().
FossilOrigin-Name: 1b0f779e19a5c0d51eddd2d88db50034d77d132c
2013-11-21 14:33:48 +00:00
drh
e09f43f8b7
Another improvement to OP_Function and an improvement to OP_Move.
...
FossilOrigin-Name: 70b056fb6f60cdfbe24e4b77a1770eef064a73c6
2013-11-21 04:18:31 +00:00
drh
76694c3ae5
A simple change to the OP_Function opcode improves overall performance by
...
about 0.5%.
FossilOrigin-Name: b890eefd57fbd189f7df611e82eb1fb4b197e1c3
2013-11-21 03:43:12 +00:00
drh
f93cd949a0
Performance optimization to the OP_Next and OP_Prev opcodes.
...
FossilOrigin-Name: ecaac28a2e78aca148fc614fe54bf2706aed8be2
2013-11-21 03:12:25 +00:00
drh
3630a408f2
Refactor the OP_Column opcode to make it clearer and easier to maintain.
...
Overall, performance tests show about a 1% speed increase with this change.
FossilOrigin-Name: 972881c6d394c199961f01dcbeb4a6e8b5c919a1
2013-11-21 01:33:45 +00:00
drh
5cc1023e1c
Reduce the size of VdbeCursor again, this time without a performance hit.
...
FossilOrigin-Name: 933939932c44bccb0958f203a5bd24e683c1cf38
2013-11-21 01:04:02 +00:00
drh
1fd522ff49
Unpack some fields, adding some space back to the VdbeCursor object,
...
in order to help the code to run a little faster.
FossilOrigin-Name: f8d5efcd7b92492b833b6cd1cb6bec006c6a0809
2013-11-21 00:10:35 +00:00
drh
14da87f8c5
Reduce the size of the VdbeCursor object from 144 to 120 bytes.
...
FossilOrigin-Name: 5f9d50688508affd0bc8e4d52e21dacfacdbb5ce
2013-11-20 21:51:33 +00:00
drh
380d685133
Improved comments on the OP_Column changes. Optimize out loading of overflow
...
pages for content with zero length. Add test cases for the latter.
FossilOrigin-Name: 0e05679db7aa302a49e087a81f85203844b98cbe
2013-11-20 20:58:00 +00:00
drh
c8606e416a
Further performance tweaks to OP_Column.
...
FossilOrigin-Name: 0e3f5df695216a27602a53eed5d25231b055adc8
2013-11-20 19:28:03 +00:00
drh
399af1d2c2
Refactoring the OP_Column opcode for improved performance and
...
maintainability.
FossilOrigin-Name: 7c914e3997d2b28164a2fa7eb4398262b6ddb4b2
2013-11-20 17:25:55 +00:00
drh
79353dbd5f
Simplifications to the VdbeCursor object.
...
FossilOrigin-Name: 5562cd343d8f69242e06a51a7f1aef7ee7d78eec
2013-11-20 02:53:58 +00:00
drh
83b301b0af
Performance improvement for the OP_MustBeInt opcode in the VDBE.
...
FossilOrigin-Name: 96a65388e75fed96e2e73ef65726f6db88cc5ccd
2013-11-20 00:59:02 +00:00
drh
707f1c560a
Fix a harmless MSVC compiler warning.
...
FossilOrigin-Name: 6cc023bb29be51847fbbfab95c24fc89993ccdba
2013-11-19 18:17:20 +00:00
drh
c138dafe88
Minor performance improvement to sqlite3SerialTypeGet().
...
FossilOrigin-Name: 17e8524fc05aa1e6074c19a8ccccc5ab5883103a
2013-11-19 13:55:34 +00:00
drh
6bc69a2d4b
Change Noop-comments in where.c into Module-comments, so that they are
...
omitting without SQLITE_ENABLE_MODULE_COMMENTS.
FossilOrigin-Name: 3e577f40183c56e60866d8382b044688a1b77eaf
2013-11-19 12:33:23 +00:00
drh
5c82f4df9f
Avoid seeking on the main data table during the first loop of an UPDATE
...
if an index is sufficient to check the WHERE clause.
FossilOrigin-Name: 57158d9daf4d777411fffb1c1d20d89b291d9214
2013-11-19 02:34:11 +00:00
drh
f37139f65b
Fix an requirement mark in a test script so that it matches the
...
typo-corrected requirement. No changes to code.
FossilOrigin-Name: 072412d5e3f92c9c6548f5c86d396d3f024df3f7
2013-11-19 00:31:25 +00:00
drh
64ff26f741
Add comments identifing where the skip-scan option is decided in the
...
query planner, to aid in tuning that decision. No changes to code.
FossilOrigin-Name: e9df04cec48bb8b4ea26ec9024a22ea42b2338eb
2013-11-18 19:32:15 +00:00
drh
2365bac1e2
Fix documentation typos. No changes to code.
...
FossilOrigin-Name: 7caeb09c52bde4649b02b339f611c8e30f6d1c68
2013-11-18 18:48:50 +00:00
drh
2bea7cde6e
Fix harmless compiler warnings from clang scan-build.
...
FossilOrigin-Name: 8d002740bffca2a76d2dfbc1a67293d34f9de9ba
2013-11-18 11:20:50 +00:00
dan
c4650bb33d
Fix a problem with the shell tool EXPLAIN indentation code and VDBE sub-programs.
...
FossilOrigin-Name: 9c8d6856253f8da06b2cb5dc6bd89b6952fa03ed
2013-11-18 08:41:06 +00:00
drh
e73e067187
Enable the ONEPASS optimization for DELETE, for both rowid and WITHOUT
...
ROWID tables.
FossilOrigin-Name: 44a07afdd9b3ae2460bc963383295deb0915f899
2013-11-18 03:11:54 +00:00
drh
83d47afe24
Make sure one-pass DELETE for WITHOUT ROWID tables correctly positions the
...
PRIMARY KEY cursor. Make the same fix for UPDATE.
FossilOrigin-Name: 6bd5750b7d5da221b0689f6df6be5ed0dce61bec
2013-11-17 02:42:02 +00:00
drh
c51331d16d
Fix a couple of minor problems with the new delete logic.
...
FossilOrigin-Name: a11243f840d35aaed8ee3b9901c3950bc584a417
2013-11-16 23:16:31 +00:00
drh
52a82e6966
Fix an OOM-recovery problem in the DELETE code generator.
...
FossilOrigin-Name: dc7be158b82ab9156d0fcdf3394f881eac4d23c3
2013-11-16 23:03:06 +00:00
drh
9612947260
Combine the rowid and WITHOUT ROWID paths for DELETE into a single path.
...
FossilOrigin-Name: c4734b881a64a9d21d03a14e901785797577fbd8
2013-11-16 22:48:52 +00:00
drh
156c7919d9
The one-pass optimization is now working for DELETE on WITHOUT ROWID tables.
...
FossilOrigin-Name: e4d220a381388f900a95d1b656a82f14c837f92e
2013-11-16 20:45:01 +00:00
drh
6a53499a20
Enhance the DELETE logic so that it can make use of WHERE_ONEPASS_DESIRED
...
for rowid tables.
FossilOrigin-Name: 8f479a72758ab6fedb171ada612b1963143c32fa
2013-11-16 20:13:39 +00:00
drh
aedfc5078a
Fully constraint the ORDER BY on the top-10 line of the --summary output
...
from the wordcount test program. Add the run-wordcount.bash script for
running wordcount in various configurations.
FossilOrigin-Name: 7edf39eb93a8f9059a788f5fccf41c2be40afd4d
2013-11-16 15:35:18 +00:00
drh
64bbbf3383
Avoid unnecessary OP_IfNull checks when doing a range query where there
...
is a constraint on the lower bound of the range.
FossilOrigin-Name: de08a7e7abbad9b94d0268d096ef4555d31c8b0c
2013-11-16 14:03:53 +00:00
drh
e6d058cd97
Simplification and performance improvement to the logic that factors
...
constant expressions ouf of inner loops.
FossilOrigin-Name: ee9353fdf3c8f19cd3c344ea8fb7c6d13cadd632
2013-11-16 13:55:34 +00:00
drh
143867516b
Fix testcase misc7-16 so that it works with the new UNIQUE constraint error
...
message format.
FossilOrigin-Name: c7f2ed9f44be3b66a542ee42c0db63bab8ffd2db
2013-11-16 12:56:46 +00:00
drh
85f8aa7907
Add ALWAYS and NEVER macros to currently unreachable but important branches in
...
sqlite3ExprCompare().
FossilOrigin-Name: cee835fe902e46f283257fb8ec9d9744c7d6dd77
2013-11-15 20:06:26 +00:00
drh
8e2ea000b5
Merge the operator comment fixes from trunk.
...
FossilOrigin-Name: 9f14f55c8ab77e73dbffb7a9c99422bef14cc17a
2013-11-15 19:00:20 +00:00
drh
40864a1401
Fix comments on the OP_Divide and OP_Remainder operators, especially the
...
"Synopsis:" comment, so that they agree with the actual implementation.
FossilOrigin-Name: cc17f1f05f15e9c62659a49c0656ff2b667bf701
2013-11-15 18:58:37 +00:00
drh
c2acc4e466
Changes to make the new constant expression factoring logic more general
...
and more testable.
FossilOrigin-Name: d10fb49a92f5f6e93093ae83544e5aec7984361a
2013-11-15 18:15:19 +00:00
drh
a0d6e3a501
Add test cases for INSERT INTO ... DEFAULT VALUES on tables with numeric
...
constants in CHECK constraints.
FossilOrigin-Name: 79ec485b548fcfc508c4d5fa32ed0604e1b0c5d9
2013-11-15 16:48:23 +00:00
drh
10d1edf0b6
Improvements to the Expr comparison routine to make it more general.
...
Improvements to unary-minus code generation so that it can make use of
a global constant register with a zero value.
FossilOrigin-Name: 835be656bb0e83c8108104869166aa9dd850d265
2013-11-15 15:52:39 +00:00
drh
776f3a2fa9
Add the --query option to the wordcount test program.
...
FossilOrigin-Name: 5960d11eba4fc6ca136331279689424d03bd6e76
2013-11-15 13:12:30 +00:00
drh
33cad2fb46
Simplify the range scan code generate while also avoiding an unnecessary
...
OP_Affinity opcode.
FossilOrigin-Name: 372686bfbb1da08b04bddb085e30da5dbc8b30d8
2013-11-15 12:41:01 +00:00
drh
7c89bed621
Merge EXPLAIN fixes from trunk.
...
FossilOrigin-Name: cd579727b107a07140b94f5839d193959d29e6db
2013-11-15 03:30:07 +00:00
drh
72dbffd726
Fix a typo in the "synopsis" for the OP_Lt opcode that causes an
...
incorrect comment to be added to EXPLAIN output.
FossilOrigin-Name: d99a30a25d6102c389f1fb5ec389c137168615e9
2013-11-15 03:21:43 +00:00
drh
602320e326
Another adjustment to the EXPLAIN indentation logic, in order to deal with
...
the sorter loop on a CREATE INDEX statement.
FossilOrigin-Name: cbe85cc2a991d89a6cca391ffa1be0582a684e49
2013-11-15 03:16:34 +00:00
drh
f30a969b80
Rework the logic that factors constant expressions out of inner loops, making
...
it both simpler and faster.
FossilOrigin-Name: 8dc5c76c766828d7c28090bec30ff48227e7b140
2013-11-15 01:10:18 +00:00
drh
01752bc805
Adjust the command-line shell EXPLAIN indentation logic to handle the
...
second loop of an UPDATE that reads out a RowSet.
FossilOrigin-Name: ea141a9b87dbb5fa1402bf7f6e36e89cc9de3cb3
2013-11-14 23:59:33 +00:00
drh
052e6a8a07
Remove an unused local variable.
...
FossilOrigin-Name: 10d59226382adcb8016fc2d927e5a0c0b36f3980
2013-11-14 19:34:10 +00:00
drh
400fcbad71
Simplification to the progress callback check. On branch removed.
...
FossilOrigin-Name: 24ef16548eebcdb9d8b40308f6a16dabf8f8d474
2013-11-14 00:09:48 +00:00
drh
e6400b9901
Make sure the progress callback is invoked prior to an SQLITE_ROW return if
...
it is overdue to be called.
FossilOrigin-Name: 21f59b04f74738d08ebad693646bbaea24dc45ef
2013-11-13 23:48:46 +00:00
drh
1f57794c92
Merge the skip-scan enhancement into trunk.
...
FossilOrigin-Name: b0bb975c0986fe01f1184c1d4888fe397174ad0f
2013-11-13 20:46:11 +00:00
drh
d24474475e
Import the "PRAGMA vdbe_eqp" enhancement and the enhanced EXPLAIN formatting
...
the shell from trunk. Fix a bug in skip-scan and add a test case to prevent
a regression.
FossilOrigin-Name: f668616a29686f3ce532731c534b168e536adbb5
2013-11-13 19:01:41 +00:00
dan
a98bf365fe
In the shell tool, if an "EXPLAIN" command is executed in ".explain on" mode, attempt to automatically indent the bodies of loops in the output VDBE program.
...
FossilOrigin-Name: e7d34ec6814ed4606a6d5d7f68c218ae4d25e666
2013-11-13 18:35:01 +00:00
drh
84e55a80db
Add the "PRAGMA vdbe_eqp" command, only available with SQLITE_DEBUG. Simplify
...
some of the other debugging logic.
FossilOrigin-Name: 8ce33f4c818e1c785a1c176f6f631b8184e1166b
2013-11-13 17:58:23 +00:00
drh
e084f40b37
Add VDBE comments to the beginning and end of skip-scan loops.
...
FossilOrigin-Name: 0c85d93b52311dee7980d977be6ed0dc70b060c1
2013-11-13 17:24:38 +00:00
drh
2e5ef4ed77
Improve the way that skip-scan loops are constructued. Add test cases.
...
Improved the scoring of skip-scan loops.
FossilOrigin-Name: 5e75ab93881b85801cb4ebf70f2063ff7c51ac19
2013-11-13 16:58:54 +00:00
drh
c2b23e7a98
Add test cases for skip-scan. Enhance "do_test" so that if the expected result
...
is of the form "/*..*/" or "~/*..*/" it treats the expected result as a glob
pattern rather than as a regular expression. Fix a bug in ANALYZE result
loading associated with WITHOUT ROWID tables.
FossilOrigin-Name: d3e6e9b2a74074c05429d3c341c23525504351ab
2013-11-13 15:32:15 +00:00
drh
cd8629e4bb
Add the ability to use an index even if the left-most columns of the index
...
are unconstrainted, provided that the left-most columns have few distinct
values.
FossilOrigin-Name: 27dd5993d1ae5625eb94bf406421eb390d001be9
2013-11-13 12:27:25 +00:00
drh
c181c26cba
Avoid an unnecessary OP_IfNull while doing an indexed search.
...
FossilOrigin-Name: 5196000930600d0cd931b87e864507791b9dab08
2013-11-13 08:55:02 +00:00
mistachkin
015a304f75
Adjust the SQLITE_MALLOCSIZE defines, primarily to make sure _msize gets used with MSVC when appropriate.
...
FossilOrigin-Name: 4e7e805e1139b2dc05d85e86e5c8254e5d361bf2
2013-11-12 21:37:04 +00:00
mistachkin
3aa4be39a9
Fix harmless compiler warning.
...
FossilOrigin-Name: ddacd10105c6df2d3a9d707947e72c62e88212eb
2013-11-12 21:10:02 +00:00
drh
5e6790cb15
Minor enhancements to the auxiliary information added to EXPLAIN output with
...
SQLITE_EXPLAIN_ENABLE_COMMENTS.
FossilOrigin-Name: 0d1328e33ca761eddcf8a50e8e83c997861e9047
2013-11-12 20:18:14 +00:00
drh
e54df42d87
Break out the structure and macro definitions of where.c into a separate
...
header file whereInt.h for easier editing and debugging.
FossilOrigin-Name: c44467124623733aac64096d605f16139b733a7f
2013-11-12 18:37:25 +00:00
dan
85963f5474
When possible, have FTS use 32-bit operations to read varints from the database.
...
FossilOrigin-Name: aa7ba302ed13aedde89b5bcbe9119799c0da8a42
2013-11-12 17:46:44 +00:00
drh
5c7917e4b4
A better (simpler) fix to the count(*) problem addressed in the previous
...
check-in.
FossilOrigin-Name: 0f924c6ef6cf2ac5a61aafa8dd8e3309b3970499
2013-11-12 15:33:40 +00:00
drh
abcc1941db
Make sure the count(*) optimization works correctly on WITHOUT ROWID tables.
...
FossilOrigin-Name: 91174779786be07d63f3c4a5277602ddc5f0ba26
2013-11-12 14:55:40 +00:00
dan
e3ab729a9c
Update test command [explain_i] to handle the opcodes used by virtual tables (VNext, VFilter etc.).
...
FossilOrigin-Name: 1b215ee3219750d3beda8f3628c8673efd517061
2013-11-12 12:30:09 +00:00
dan
ff4b23ba9e
Fix for [4065ac8595]: Do not order CROSS or LEFT joins, even if the right-hand-side is a virtual table.
...
FossilOrigin-Name: e2684ece455f53563ae6da7cbb5505d9a4a3076a
2013-11-12 12:17:16 +00:00
drh
f8396b201c
Fix an error message in the spellfix extension so that it conforms to the
...
style of error messages in the core.
FossilOrigin-Name: b896ae3d2787c370be3ff5d09da7d631a16d3a2a
2013-11-12 01:11:56 +00:00
drh
5d2f6c211e
Add a comment to the sqlite3_index_info structure indicating that the new
...
field is only available in SQLite 3.8.2 or later.
FossilOrigin-Name: 239648f8ccf057eb05841ce65b108da53fdbf0a4
2013-11-11 23:26:34 +00:00
dan
14ec33f73b
Fix typos in compile and run-time tests of the sqlite library version number in rtree.c.
...
FossilOrigin-Name: f58d57017199421167dae8ebc67db2f19be45082
2013-11-11 19:56:35 +00:00
dan
a9f5815b67
Add a way for virtual tables to return the expected number of rows for a scan (not just the overall cost) to SQLite. Have the rtree module make use of this.
...
FossilOrigin-Name: 5a3cfd747a85480d215784817c3821d87ecfa2f7
2013-11-11 19:01:33 +00:00
drh
4308e348d7
Remove unreachable code, replacing it in most cases with assert() or NEVER()
...
macros.
FossilOrigin-Name: 924d63b283a3d059838114c95d42c6feaf913529
2013-11-11 16:55:52 +00:00
mistachkin
d55bccd7cc
Fix issue with several memory allocation tests due to KeyInfo allocations now being shared.
...
FossilOrigin-Name: 569fedd6bb07bdd3430da8dc65de4a9fdfe204cc
2013-11-11 03:37:04 +00:00
drh
3da046d8ba
Convert several ALWAYS() macros in vdbe.c into assert() statements.
...
FossilOrigin-Name: acc40ff6b47595432ebc1b3ec71ac50384bec323
2013-11-11 03:24:11 +00:00
mistachkin
9939118083
Fix several harmless compiler warnings.
...
FossilOrigin-Name: e6ff492f0d475c395b82e2b3b294155674d4c6d1
2013-11-11 02:46:32 +00:00
mistachkin
055f16543b
Modify a HeapValidate assert in the Win32 native allocator.
...
FossilOrigin-Name: aaed7d1d3ba0aef9f99fb157d3704b9f279aef71
2013-11-11 01:42:10 +00:00
drh
af1c01c107
Fix a problem in OP_IdxDelete as used by REPLACE conflict resolution that
...
comes up due to recent enhancements that reduce the work required for
UNIQUE NOT NULL indices.
FossilOrigin-Name: 61d7d4753f36932293c0eb1ca893b17d18355ad3
2013-11-11 00:43:21 +00:00
mistachkin
080464948f
Fix typo in comment and remove superfluous blank line. No changes to code.
...
FossilOrigin-Name: 023233f16ec2e6f582a7491643036ba5cad9379c
2013-11-10 00:03:11 +00:00
mistachkin
9858bf2fb1
Fix compilation errors with some compilers that do not reference recent Windows SDK header files.
...
FossilOrigin-Name: a5805976f0e06ece2eeebd825f383a1ee88121fc
2013-11-09 23:55:18 +00:00
mistachkin
c6efe12d0d
Fix memory type mismatch when compiled with MEMDEBUG.
...
FossilOrigin-Name: 2c32bd6d4d5da2055633e8fb43ee184f729d8b91
2013-11-09 23:44:02 +00:00
drh
660760f8e6
Add the sqlite3_win32_compact_heap() function for cleaning up memory
...
allocations on Win32 system. Also cleanup the winGetTempname() function.
Changes to the Win32 VFS only.
FossilOrigin-Name: d06d9fdb6e6ac369035c825d9c30970115b3ba71
2013-11-09 22:08:10 +00:00
drh
6c41b61f62
Updates to documentation on sqlite3_last_insert_rowid(). No changes to code.
...
FossilOrigin-Name: a4c5804efc63ff993e93f8a7b6acb6bb0a19dd3e
2013-11-09 21:19:12 +00:00
mistachkin
dc7b05558a
Use the UNICODE_STRING_MAX_CHARS constant from WinNT.h.
...
FossilOrigin-Name: 3fefe4dd43539ec7e525ef58f0bfeffd31288ebd
2013-11-09 21:11:36 +00:00
mistachkin
fd4b90be1a
Furhter cleanup of the winGetTempname function.
...
FossilOrigin-Name: 674de36bcaafc1130b7603e69616c71fc8cd7de7
2013-11-09 21:10:47 +00:00
drh
eb091cdfc4
Updates to requirements marks. No changes to code.
...
FossilOrigin-Name: 8a0366285b94dc43d932736e7b1eedb71e241857
2013-11-09 19:47:15 +00:00
drh
d2fe3358cf
Throw an error if AUTOINCREMENT appears in a WITHOUT ROWID table.
...
Updates to API documentation to discuss WITHOUT ROWID.
FossilOrigin-Name: b1abb2b078d1cb9ec5fbd7f98221914b93632e9f
2013-11-09 18:15:35 +00:00
mistachkin
7f9d179884
Add more assert() statements and fix compilation issues when the Win32 native heap is not enabled.
...
FossilOrigin-Name: fbf8c3828327d19bbce0d7f6735e7577abfd54b3
2013-11-08 20:10:57 +00:00
mistachkin
5134a8178d
Disable use of HeapCompact on Windows CE as it is not available on all versions.
...
FossilOrigin-Name: e9694b877178572665048d1015ca033c469160e7
2013-11-08 19:51:12 +00:00
mistachkin
2eb0966ef2
Adjust the winMemInit return code handling used when resetting the Win32 native heap.
...
FossilOrigin-Name: 37853665e75fc92b4d15e6db0b3346722527e799
2013-11-08 18:52:45 +00:00
mistachkin
17bc3ff956
Minor corrections to logging for sqlite3_win32_compact_heap().
...
FossilOrigin-Name: 71347d021bea90ad7e4cc0d3e54940ce29b9ea69
2013-11-08 18:37:02 +00:00
mistachkin
e8f91053f6
Enhancements to the Win32 native heap integration.
...
FossilOrigin-Name: c54dc9672b686c8e323eac0c33cd90ea89d36364
2013-11-08 18:13:48 +00:00
drh
511717c645
Fix harmless compiler warnings.
...
FossilOrigin-Name: 0077c0772a884b54d81fa3733aac6f0c364ef1a8
2013-11-08 17:13:23 +00:00
drh
95a5bcbb00
Merge the Cygwin directory separator fix. Also fix a C++-ism in the
...
multiplexor code so that it will compile on MSVC.
FossilOrigin-Name: 830629d31d171155d90ff87ae8e70094d17bb2d3
2013-11-08 17:03:50 +00:00
drh
392ee21d1a
Performance improvement: Avoid unnecessary seeks on REPLACE INTO for a
...
WITHOUT ROWID table.
FossilOrigin-Name: fd11afa5f5c853dcac2290444b581a3fe1d4332d
2013-11-08 16:54:56 +00:00
drh
fc8d4f96b4
Performance improvements:
...
Avoid unnecessary seeks when doing a single-row UPDATE on a WITHOUT ROWID
table.
FossilOrigin-Name: 6f187a0fb1b09ebc4732c4afbf3c813f82e069f1
2013-11-08 15:19:46 +00:00
drh
81897bb14e
Merge change to drop the mutex on the multiplexor before entering the xRead
...
VFS call, in order to enhance parallelizability.
FossilOrigin-Name: 3c566e41e4c9c66960cc5a3ddee8556835237999
2013-11-08 12:14:50 +00:00
drh
ce60aa469a
Optimize out a NotExists/NotFound opcode that occurs in UPDATE processing
...
after constraint checks if there is no possiblity that the constraint checking
code might have moved the cursor.
FossilOrigin-Name: 74e3ee2ee6ea89af2c12dd0bce248467fd0f1310
2013-11-08 01:09:15 +00:00
drh
24f1985a25
On the --summary output of wordcount, add the a PRAGMA integrity_check and
...
a 64-bit checksum of the entire table.
FossilOrigin-Name: 1d1d13b89056903543c909b094030d205473fa82
2013-11-08 00:16:58 +00:00
drh
ac873261c4
Add many new options to the wordcount test program: --delete, --pagesize,
...
--cachesize, --commit, --nosync, and --journal.
FossilOrigin-Name: e938112d316ca31460f247cc104ca3ff1d60b4da
2013-11-07 23:23:27 +00:00
mistachkin
14eca4ef5d
Fix temporary directory separator handling for Cygwin.
...
FossilOrigin-Name: 9d870d5f0d8f02e5c91396a1f98b5ddb56b40b70
2013-11-07 22:11:55 +00:00
drh
00f91cf52f
Fix a compiler warning introduced by the previous check-in.
...
FossilOrigin-Name: 404bd98fb41f71d041932d68a908570995825ec1
2013-11-07 21:32:16 +00:00
drh
702ba9f2e3
Enable the WHERE_ONEPASS_DESIRED optimization for UPDATE operations on
...
WITHOUT ROWID tables.
FossilOrigin-Name: 215307985590c2f3f7aa0d5a0b7799155a506045
2013-11-07 21:25:13 +00:00
drh
0afa99e3e7
Add the --stats and --summary options to the wordcount.c test program.
...
FossilOrigin-Name: 8aa21e6791d408c8f018bd779e09cb7e7179f884
2013-11-07 19:43:21 +00:00
drh
699e3ad1b9
Increase the version number to 3.8.2.
...
FossilOrigin-Name: 9ad5b74c26c5a18068a2418a2092a05c226912c2
2013-11-07 18:40:39 +00:00
drh
9ac3c1ea40
Add the "wordcount.c" test program.
...
FossilOrigin-Name: f02ee5463084cef45ae412c51211b66de7e86baf
2013-11-07 18:37:31 +00:00
drh
b0e503409d
Add support for WITHOUT ROWID tables. This change also includes
...
(1) standardization of the error message returned from run-time constraint
errors, (2) improved EXPLAIN comments, (3) the SQLITE_ENABLE_EXPLAIN_COMMENTS
option, (4) the SQLITE_ENABLE_MODULE_COMMENTS option, and (5) a bug fix
(see [573cc27427]) in the handling of REPLACE on the rowid when secondary
indices use FAIL or IGNORE.
FossilOrigin-Name: c80e229dd9c1230abefbc707d4bf0b24315c6bb5
2013-11-07 16:08:10 +00:00
drh
41e13e1268
Make sure cached KeyInfo objects are only valid for a single database
...
connection. Clear all cached KeyInfo objects on any collating sequence
change.
FossilOrigin-Name: 55eea1782aead6a6aaf93f14d85486f8fd2209ad
2013-11-07 14:09:39 +00:00
drh
2ec2fb2269
Reference count the KeyInfo object. Cache a copy of an appropriate KeyInfo
...
for each index in the Index object, and reuse that one copy as much as possible.
FossilOrigin-Name: defd5205a7cc3543cdd18f906f568e943b8b3a2c
2013-11-06 19:59:23 +00:00
dan
93889d9335
Have the OP_NoConflict opcode set the VdbeCursor.seekResult variable. This speeds up subsequent OP_Insert and OP_IdxInsert opcodes.
...
FossilOrigin-Name: 474555002d45f8741faceea599c057eef4e7931e
2013-11-06 16:28:59 +00:00
dan
5c663c3002
Use ansi escape codes to use different colored text for opcode names in the output of [explain_i]: Red for opcodes that insert or delete b-tree elements, blue for opcodes that move cursors and green for the ResultRow opcode.
...
FossilOrigin-Name: 4be2b64b3e5237ee1fb156c06cffaf7d96f6c532
2013-11-06 14:52:40 +00:00
drh
b41392241e
Allocate extra stack space for UnpackedRecord objects, reducing the need
...
to malloc for them as often, and thereby get a performance improvement.
FossilOrigin-Name: a725a75f870d7d9b21946fbcc71a956492986ab0
2013-11-06 14:36:08 +00:00
drh
d9b7ec9348
Minor optimization to the OP_Halt opcode.
...
FossilOrigin-Name: d70c78814ba565a44628eab61a3a0a5dba56269a
2013-11-06 14:05:21 +00:00
drh
416846a362
Improved ORDER BY optimization for WITHOUT ROWID tables.
...
FossilOrigin-Name: 8f1709ff2d52d5ceca3da6a2a4e06da204d9e65a
2013-11-06 12:56:04 +00:00
drh
d4ddae985b
Disable the OR optimization for WITHOUT ROWID tables, since it relies on
...
the use of rowids.
FossilOrigin-Name: 6055dad2ba2f9256b1f2d0a9e32ca00f1b81b0cf
2013-11-06 12:05:57 +00:00
drh
79b9831cdd
Remove an incorrect test case from conflict2.test.
...
FossilOrigin-Name: 427612efc169c8ebe94a8b586d7abd0fcd43d0d0
2013-11-06 11:46:48 +00:00
drh
4ad8b90244
Remove an unused variable.
...
FossilOrigin-Name: e9c1e419b7227d86f2e1882cebf360116cdf1a13
2013-11-06 02:36:04 +00:00
drh
1282609b02
Make sure the query planner knows that the PRIMARY KEY index of a
...
WITHOUT ROWID table is always a covering index.
FossilOrigin-Name: 03e7019e14255dbeb85bb299569c82ef48ac4a98
2013-11-05 22:39:17 +00:00
drh
8d1b82e40b
Fix conflict handling for the case when the rowid uses REPLACE but other
...
unique constraints use FAIL or IGNORE.
FossilOrigin-Name: 573cc27427af297185f11aac8dce88ca31f471ca
2013-11-05 19:41:32 +00:00
drh
5a9a37b7b4
Fix a bug in secondary index initialization when the secondary index is
...
a superset of the PRIMARY KEY for a WITHOUT ROWID table.
FossilOrigin-Name: 52a3d885192c5d31f956c5ee17e29e2d1f3d5c9f
2013-11-05 17:30:04 +00:00
dan
6d8578bc8f
Remove an "explain" command from test script without_rowid1.test that was accidentally committed.
...
FossilOrigin-Name: 4b41d989e894b9214a9b973228ef8446356f9fbb
2013-11-05 16:56:11 +00:00
dan
427ebba10c
Unless the destination table is completely empty, disable the xfer optimization for WITHOUT ROWID tables.
...
FossilOrigin-Name: 3877c9f50582b51817dcf3cd75d836891a34e590
2013-11-05 16:39:31 +00:00
dan
7b3d1860af
Updates to the backcompat.test test script so that it works with really old (3.6.*) versions.
...
FossilOrigin-Name: ace7e7b64261aeabc9525d5d0cfebe0275c9ddf5
2013-11-05 15:02:39 +00:00
dan
e83267da54
Add tests for updates of without-rowid tables that use non-BINARY collation sequences for the primary key columns. And a minor bugfix to the same.
...
FossilOrigin-Name: 99b1fa4b1664a79eae1dddce2b9a848384cdb1d7
2013-11-05 14:19:22 +00:00
drh
f9c8ce3ced
Standardize the error messages generated by constraint failures to a format
...
of "$TYPE constraint failed: $DETAIL". This involves many changes to the
expected output of test cases.
FossilOrigin-Name: 54b221929744b1bcdbcc2030fef2e510618afd41
2013-11-05 13:33:55 +00:00
drh
00012df46d
Add the conflict2.test script. Fix issues discovered by this script.
...
FossilOrigin-Name: 294ed33756b06375e56c41f1088d42ee48adbdc8
2013-11-05 01:59:07 +00:00
drh
d269461c91
Add the index7.test script for testing partial indices with WITHOUT ROWID
...
tables. Fix bugs in ANALYZE located by that script.
FossilOrigin-Name: 79befe3ac1f676272b78423b9aa5dac41435420e
2013-11-04 22:04:17 +00:00
drh
da475b8dbc
Bug fixes in the INSERT constraint checker. Refactor the Rowid handling logic
...
for ANALYZE with STAT3/4.
FossilOrigin-Name: 1ea43c0f236792a3bc13e1cb330f5ff3402c2851
2013-11-04 21:44:54 +00:00
drh
c3e356fe10
Add another test case file for WITHOUT ROWID and fix the bugs that the new
...
test file uncovered.
FossilOrigin-Name: bc2a06eb8e57573d08e77800a7937eee5af3f035
2013-11-04 18:34:46 +00:00
drh
5838340b0e
Fix a problem with processing INTEGER PRIMARY KEY on a WITHOUT ROWID table.
...
FossilOrigin-Name: 89098e6d18dacd1554cf4471b5f035db85d1f327
2013-11-04 17:00:50 +00:00
drh
6546af1480
Correctly handle changing counting when inserting and deleting on
...
WITHOUT ROWID tables. Add more FOREIGN KEY test cases.
FossilOrigin-Name: d072bcd0a8692d590c13c2bf458454c10c12a3e2
2013-11-04 15:23:25 +00:00
drh
90e758ff1f
Correctly handle self-referential foreign keys on WITHOUT ROWID tables.
...
FossilOrigin-Name: af128862ab6008df9dda1ee90f93f9efd629e259
2013-11-04 13:56:00 +00:00
dan
d6dd5def4d
Fix a bug preventing FTS from correctly processing bracket tokens that are immediately preceded by characters that are neither whitespace or token characters.
...
FossilOrigin-Name: 49be646cd981f8ff0434cf90d2748afa30260017
2013-11-04 08:56:22 +00:00
drh
bd50a926ef
Improved comments on foreign key logic.
...
FossilOrigin-Name: 1315d9109c7105f4a62bb2d43ca6948d41245129
2013-11-03 02:27:58 +00:00
drh
2552d43f4c
Improved Synopsis on register comparison operators. Fix a bug on the
...
constraint check generator.
FossilOrigin-Name: a7a18b65fa34dfdf6117fa21db3e576f96876617
2013-11-02 22:29:34 +00:00
drh
63f0eedf10
Many new test cases added, that mostly work. Currently 18 errors in
...
without_rowid3.test. Also there is a hack marked by a /*FIXME*/ comment
on at fkey.c:547 that needs fixing.
FossilOrigin-Name: 39e32187b66405e00dbd44685f6cdd269c90f5e5
2013-11-02 22:09:48 +00:00
drh
ce95d11921
Change the "idx" name of the primary key index for WITHOUT ROWID tables in
...
sqlite_statN statistics tables to be the name of the table rather than the
fabricated index name (ex: sqlite_autoindex_xyz_1). This makes it consistent
with sqlite_master table.
FossilOrigin-Name: 4ee4d3106308508a58b80e54e0afb4afb42f510b
2013-11-02 19:34:38 +00:00
drh
ebe25af168
Update the ANALYZE logic so that it works with WITHOUT ROWID tables.
...
FossilOrigin-Name: 9075770e4030b35677fbbe291f3c3c4946937a9a
2013-11-02 18:46:04 +00:00
drh
c6bd4e4a36
Store the root page of the PRIMARY KEY index for a WITHOUT ROWID table in
...
the sqlite_master entry for the main table and omit the sqlite_master entry
for the PRIMARY KEY.
FossilOrigin-Name: b7544bb280f1c1c55135a9b35aeb85604fef94a3
2013-11-02 14:37:18 +00:00
drh
71b4ea83e0
Import the sqlite3_analyzer fixes from trunk.
...
FossilOrigin-Name: ac711459ff243e787ea5e9c01720dff75a5eda9b
2013-11-02 11:43:05 +00:00
drh
a46417151a
A pair of sqlite3_analyzer bug fixes: (1) quote strings in the SQL at the end
...
of the output. (2) Fix test_stat.c so that it no longer misses some overflow
pages on internal index pages.
FossilOrigin-Name: 42a11e7464ab1d97d603c7409f10710ad4f1f542
2013-11-02 11:34:58 +00:00
drh
1153c7b25d
Size KeyInfo objects so that IdxInserts always compare the correct number of
...
fields.
FossilOrigin-Name: 302a81390f039fc23eeb8510e95b9d9fa0b41edd
2013-11-01 22:02:56 +00:00
drh
7913e41f6d
Fix sqlite3_analyzer so that it works with WITHOUT ROWID tables.
...
Fix index generation for secondary indices that include fields from
the PRIMARY KEY.
FossilOrigin-Name: f9769d701c65770f4b8488f541c59e508393e6c2
2013-11-01 20:30:36 +00:00
drh
bc43ae3d0d
Additional UPDATE test cases for WITHOUT ROWID.
...
FossilOrigin-Name: 65384ae0f027d05cf9208faed56575870d63c486
2013-11-01 18:14:36 +00:00
drh
8a120f8b68
Fix an invalid cast operation in the WITHOUT ROWID parsing logic.
...
FossilOrigin-Name: 845153be36d5ca0ca9d930c56418fb080d906740
2013-11-01 17:59:53 +00:00
drh
1aae39cd26
Merge all changes from trunk, and disable a pair of corruption tests that are
...
no longer valid since sqlite_master.rootpage can now be NULL for tables.
FossilOrigin-Name: dd5d57b9a1b25fb6c9e20024e519b58630cf1fd0
2013-11-01 17:21:29 +00:00
drh
f8ffb27850
Change the interface to sqlite3GenerateConstraintChecks() for improved lucidity
...
and to fix issues in dealing with UPDATEs for WITHOUT ROWID tables. Make sure
iDataCur and iIdxCur are initialized when processing DELETEs of a VIEW.
UPDATE processing distinguishes between changes to ROWID and PRIMARY KEY.
FossilOrigin-Name: c525ac5630d6bcd51842cfc84f2c2c50be9cec1c
2013-11-01 17:08:56 +00:00
drh
f82b9afcba
Improved VDBE comments on the constraint checker. Fix a missing write
...
lock in the UPDATE logic.
FossilOrigin-Name: 3bed599e74d354bf1513e4fb0e8665376ba44d0b
2013-11-01 14:03:20 +00:00
drh
ccc79f021f
Some UPDATE statements now working in WITHOUT ROWID tables.
...
FossilOrigin-Name: 5c0eaea6a26b5c3310d96b3c896ac3068a3ebad1
2013-11-01 12:42:21 +00:00
drh
29f9774771
A couple of bug fixes.
...
FossilOrigin-Name: cdf00248cf8f7e3c2a3f2f5514273fbacc6fc8d9
2013-11-01 01:45:46 +00:00
drh
313619f572
Fix the Synopsis on OP_Concat. Added test_addop_breakpoint() during
...
SQLITE_DEBUG. Enhanced sqlite3VdbeChangeToNoop() to omit the instruction
if it is the most recent added. Continue to fix problems with UPDATE
and WITHOUT ROWID.
FossilOrigin-Name: 9b6d9e106aaa3c2efb33d234d26cf08cd3c967b9
2013-10-31 20:34:06 +00:00
dan
f52a4690b0
Fix a problem in os_unix.c causing compilation failure if SQLITE_DEBUG and SQLITE_MAX_MMAP_SIZE=0 are both defined.
...
FossilOrigin-Name: 090db8c81d8ca216277d11c8c4751c0a37801524
2013-10-31 18:49:58 +00:00
drh
ee0ec8e1db
Fix issues with quering from an auxiliary index that must refer back to the
...
PRIMARY KEY index of a WITHOUT ROWID table.
FossilOrigin-Name: cff1f55c52ff57557d9b728a5cd830a367091794
2013-10-31 17:38:01 +00:00
drh
6934fc7b6f
Improved comments and variable names in infrastructure routines of UPDATE,
...
DELETE, and INSERT.
FossilOrigin-Name: ad90e762e51384ac7c311f08a641419f03f6d3f0
2013-10-31 15:37:49 +00:00
drh
77f64bb7b9
Moving UPDATE towards the iDataCur/iIdxCur representation. Still not working
...
for WITHOUT ROWID, though.
FossilOrigin-Name: deacbd21b50cc8c63a1572d14a4bbc7af4052d37
2013-10-31 12:13:37 +00:00
drh
26198bb481
Refactor the INSERT, DELETE, and UPDATE code generators to distinguish between
...
the "data cursor" and the "first index cursor", which are no longer consecutive
in the case of a WITHOUT ROWID table.
FossilOrigin-Name: 1adfca6019847d37dee4a297669f29d5ca184066
2013-10-31 11:15:09 +00:00
mistachkin
293566eaf2
Update comments in the MSVC batch build tool.
...
FossilOrigin-Name: 0414bb73ef83332bec3d06471d431690356dbe13
2013-10-31 06:39:15 +00:00
mistachkin
99eef00d43
Enable some more tests on Windows.
...
FossilOrigin-Name: 72389c295bb240ec76746e289403b82e04189903
2013-10-31 06:13:57 +00:00
mistachkin
2744938e82
Fix harmless compiler warnings.
...
FossilOrigin-Name: 1a0a88657f54874703fc05f828ce29ad115d9f28
2013-10-31 06:11:10 +00:00
drh
6fbe41acf2
Continue working to get UPDATE operational for WITHOUT ROWID tables.
...
Fix PRAGMA integrity_check so that it works on WITHOUT ROWID tables.
FossilOrigin-Name: 0d4fea7462c0f61cd1c736cbcd7bea5ec2034d54
2013-10-30 20:22:55 +00:00
drh
72ffd09188
Make sure KeyInfo objects on multi-column indices of WITHOUT ROWID tables
...
have the correct nField and nXField values. Also, add the
SQLITE_ENABLE_MODULE_COMMENT compile-time option and the VdbeModuleComment()
macro and use it to label entry and exit points of some key routines.
FossilOrigin-Name: 6d9af6065fc0da8337aee2297a8da7511eecccf1
2013-10-30 15:52:32 +00:00
drh
5b843aa032
In the P4 column of the EXPLAIN listing, abbreviate "keyinfo" as just "k" and
...
"BINARY" as just "B".
FossilOrigin-Name: 72d45eb79b5d0505050cff57a00d725948b2a0c0
2013-10-30 13:46:01 +00:00
drh
4340831cc9
Enhance the timer in the shell to show wall-clock time in addition
...
to user and kernel CPU time.
FossilOrigin-Name: 908e2c2124baece578e7a665f42b6b483b8f1d64
2013-10-30 12:43:36 +00:00
drh
c7401d51c4
Add the "Esri Spatially-Enabled Database" file format to the magic.txt file.
...
FossilOrigin-Name: 8530a18f40c8f938da880306d6d9f762c2e4c6a7
2013-10-30 03:25:45 +00:00
drh
4af5bee41d
Merge EXPLAIN enhancements from trunk.
...
FossilOrigin-Name: 2fcac056074f0a23884ab5425003a7ca1d35c2a8
2013-10-30 02:37:50 +00:00
drh
c7379ce442
Add the SQLITE_ENABLE_EXPLAIN_COMMENTS compile-time option to enable extra
...
commentary in the EXPLAIN output. Formerly, this was only available with
SQLITE_DEBUG.
FossilOrigin-Name: e1a89b56f7173166bb9224e2e360fd67ad3399c3
2013-10-30 02:28:23 +00:00
drh
f63552b258
Enhanced display of register ranges in the auxiliary comments added to EXPLAIN.
...
FossilOrigin-Name: d6b0c39281d0751ecec04d7c19d9d2931d133e8e
2013-10-30 00:25:03 +00:00
drh
28b87d857b
Import the automatic comment generating changes from trunk.
...
FossilOrigin-Name: 8bb51da1305d5e35c7b75bbb176c21e04ea2a48a
2013-10-29 20:47:26 +00:00
drh
81316f8908
Automatically generated comments on many VDBE opcodes when in SQLITE_DEBUG
...
most. Comments derive from the "Synopsis:" field added to each opcode
definition in vdbe.c.
FossilOrigin-Name: 5f310c6a22b8bb5f860296074aee130c14101681
2013-10-29 20:40:47 +00:00
drh
0978d4ffb2
Improved comments on the constraint checking logic.
...
FossilOrigin-Name: 141a38a7a636e3e4255b59c27df4a1b3d6f26e97
2013-10-29 16:14:35 +00:00
drh
8075cc17d3
Merge recent fixes from trunk.
...
FossilOrigin-Name: 9f8191d1d833acaaf612fdff8cc6bd544c042986
2013-10-28 22:39:53 +00:00
drh
7afc8b0c3f
Formatting improvements to the WHERE-clause constraint display in the
...
wheretrace debugging logic.
FossilOrigin-Name: 3a9e3ed94bf617f00c48009b1a6d348a8f23a3cf
2013-10-28 22:33:36 +00:00
drh
70a0222f07
Add regression tests for ticket [c620261b5b5].
...
FossilOrigin-Name: 05a35b09b140fed0898afd36bc641e275545a35f
2013-10-28 20:38:52 +00:00
drh
e1a086e412
Do not use transitive WHERE-clause constraints on LEFT JOINs.
...
Fix for ticket [c620261b5b5dc].
FossilOrigin-Name: 9aac4e588cbce55c1098321bcd042d5b04036893
2013-10-28 20:15:56 +00:00
drh
f4e9cb065b
More wheretrace debugging support: Show a listing of all WHERE clause
...
terms (on wheretrace bit 0x100) and include important flags such as
TERM_VIRTUAL, WO_EQUIV, and EP_FromJoin.
FossilOrigin-Name: 92ccd705411ce3f64720ab5f34c7efc9cb46d5c9
2013-10-28 19:59:59 +00:00
drh
c1ba2e7a52
Bug fix and enhancements to the improved wheretrace logic that shows the
...
constraint expressions.
FossilOrigin-Name: 10f125f5da55eca15e68c74d62ab7d37bbbbfb5f
2013-10-28 19:03:21 +00:00
drh
989578e139
Improved "wheretrace" capabilities: Show the constraint expression if the
...
wheretrace flag has the 0x100 bit set and if compiled with
SQLITE_ENABLE_TREE_EXPLAIN.
FossilOrigin-Name: 710a18ac7916cb688955505d7d461b461f563155
2013-10-28 14:34:35 +00:00
drh
11e85273df
Work on the UPDATE and INSERT logic. This is an incremental check-in so that
...
can switch over to trunk to work on an unrelated issue there.
FossilOrigin-Name: 086ec2a177b24ad90d5d705a99d93aa0c1545217
2013-10-26 15:40:48 +00:00
drh
6f225d0d7f
Replace the OP_IsUnique opcode with OP_NoConflict. This code simplification
...
might be useful to move onto trunk even if this branch is never merged.
FossilOrigin-Name: e6650e16dd11327afd25961b2feb29ec8778c2ca
2013-10-26 13:36:51 +00:00
drh
d82b50212e
Minor refactoring of variable names and fixes to comments in insert.c.
...
FossilOrigin-Name: ae61a34378d3ed2f454ba8768029d6f5fef849e4
2013-10-26 00:58:34 +00:00
drh
ea22abe3d6
Progress toward getting UPDATE to work in WITHOUT ROWID tables.
...
FossilOrigin-Name: e557b7d80f1ede63427a31b16757bf5d8dbfb66d
2013-10-25 19:17:17 +00:00
drh
261c02d963
Basic DELETE operations now working on WITHOUT ROWID tables.
...
FossilOrigin-Name: 9eafafa31c4a2bbcf48418743e0fcb17c374e9a6
2013-10-25 14:46:15 +00:00
drh
ecb31b6304
Update the interface to the sqlite3GenerateRowDelete() utility so that it is
...
able to handle WITHOUT ROWID tables. The implementation still needs to be
completed.
FossilOrigin-Name: 85daf5174679630474b3bccf3d662d5d56bf00d5
2013-10-24 19:48:39 +00:00
drh
0578248b08
Add the ".open" command to the command-line shell.
...
FossilOrigin-Name: 21eccb919441bd111ba414dde3f00862822e2c99
2013-10-24 15:20:20 +00:00
drh
9eade087da
Delete PRIMARY KEY index entries last. Only construct the unique prefix of
...
an index key when deleting entries from an index.
FossilOrigin-Name: 0e56ba69f0fcd12a5166c32f6e4eacdcc29fba04
2013-10-24 14:16:10 +00:00
drh
acbbc5ba36
Remove an obsolete comment from the VDBE. No code changes.
...
FossilOrigin-Name: 53bb070c851db02c9d900cb041ab441895ddbfb7
2013-10-24 11:55:42 +00:00
drh
85c1c557d0
Correctly handle queries that use secondary indices of WITHOUT ROWID tables.
...
FossilOrigin-Name: d8bc8595301789d0e9de24c391808121905ab559
2013-10-24 00:18:18 +00:00
drh
dd9930ef20
Change the sqlite3OpenTable() utility to open the PRIMARY KEY index when
...
reading a WITHOUT ROWID table.
FossilOrigin-Name: 247f389930aededaa54ecb792748aa8d0ad6d57b
2013-10-23 23:37:02 +00:00
drh
4415628a4a
Construct secondary indices on WITHOUT ROWID tables.
...
FossilOrigin-Name: 2c028ddc85cb45746cad6ab0cefd99134fbd50d7
2013-10-23 22:23:03 +00:00
drh
11f9b033cc
Report an error when trying to resolve column name "rowid" in a
...
WITHOUT ROWID table.
FossilOrigin-Name: 36bcc9cb885523fba2f3b0d152de9e08073668c1
2013-10-23 17:39:41 +00:00
drh
55548273a3
Get VACUUM and the xfer optimization working with WITHOUT ROWID.
...
FossilOrigin-Name: 579815fff1737552d2077255862b8f4fd220927c
2013-10-23 16:03:07 +00:00
drh
ad124329ab
Some inserts and queries working for multi-column primary keys
...
and WITHOUT ROWID.
FossilOrigin-Name: b21d831b2aa55507dd9def2acb02cdbffddf10d1
2013-10-23 13:30:58 +00:00
drh
ec95c44175
Some simple inserts and queries working on WITHOUT ROWID tables.
...
FossilOrigin-Name: 3f8016dee24213ec83a02d71ad2698789cc3a818
2013-10-23 01:57:32 +00:00
drh
7f9c5dbfe9
Build internal data structures appropriately for WITHOUT ROWID tables.
...
FossilOrigin-Name: 35a3606071685aa5196951f4bdddb136589ea216
2013-10-23 00:32:58 +00:00
drh
bbbdc83b52
The Index object now has nKeyCol and nColumn. nColumn is the total number
...
of columns and nKeyCol is the number of key columns. Currently these always
differ by one. Refactor aiColumn[] to be of type i16 instead of int.
FossilOrigin-Name: a106ce86cd4afd1f81603826de77df1fb25e9ab5
2013-10-22 18:01:40 +00:00
drh
77e57dfbc8
Add a procedure to handle the messy details of allocating an Index object
...
from the heap.
FossilOrigin-Name: 45efc94f9a8169433ffcb4aa35760551c55df4c4
2013-10-22 14:28:02 +00:00
drh
42533337e2
Extra backwards-compatibility tests verify that UNIQUE and PRIMARY KEY
...
indices are created in the correct order. Other backwards-compatibility
tests already cover this, but it does not hurt to double up.
FossilOrigin-Name: 5ca0ea2e9b40a7fa133d2af8a2ecc676de7a8723
2013-10-22 10:23:26 +00:00
drh
8ea30bfcbc
Previous refactor is not going to be helpful because implied indices must be
...
created in the same order that they appear in the CREATE TABLE statement
for backwards compatibility. This is a much smaller change to clean up a
few loose ends.
FossilOrigin-Name: 824b549f9b42935609b283d51f6c386da89a08a7
2013-10-22 01:18:17 +00:00
mistachkin
dd19783225
Improve support for the SQLITE_OMIT_FLAG_PRAGMAS compile-time option.
...
FossilOrigin-Name: f1d8c3b07e61c5a8b39675d0d62876ca15e207f3
2013-10-21 23:17:23 +00:00
drh
ee68ccfbad
Drop the mutex on the multiplexor before entering the xRead VFS call.
...
FossilOrigin-Name: a00d2ed49c9f53263cd76ad41dad9e35e646ebb5
2013-10-21 13:15:55 +00:00
drh
5969da4a2c
Simplification of the syntax: Merely append "WITHOUT rowid" to the end of
...
the table definition.
FossilOrigin-Name: 131cc6e152abe1a2d48e6d8d40d2c2f8dbe723e7
2013-10-21 02:14:45 +00:00
drh
81eba73ebf
Experimental changes toward "index only" tables. Add the ability to specify
...
options on CREATE TABLE statements using the WITH clause modeled after
PostgreSQL and SQL Server. Only the "omit_rowid" option is currently
recognized and that option is currently a no-op.
FossilOrigin-Name: 0248ec5e6e3797575388f046d8c27f7445fe2a39
2013-10-19 23:31:56 +00:00
drh
05684271c6
Improved header comment with better instructions on the vfslog.c
...
extension.
FossilOrigin-Name: 4bd592c8f0e011e203443a6e88008a61d6926df5
2013-10-19 16:51:39 +00:00
dan
197bc20c48
Fix a bug causing an "malformed database schema error" error if a temp table with the same name as an existing table that has at least one temp trigger attached to it is created.
...
FossilOrigin-Name: 56dca4a65c3b14123272fa0cc5c15530c06fda28
2013-10-19 15:07:49 +00:00
drh
8f8b231239
Add the SQLITE_FCNTL_TRACE file control and generate it for OP_Trace
...
when compiled with SQLITE_USE_FCNTL_TRACE. Update vfslog.c to make
use of the new file control. Also update vfslog.c to log UNLOCK events
before the fact, rather than afterwards.
FossilOrigin-Name: e801f35a96d861a1e5f223655af4c8a6a7e356bc
2013-10-18 20:03:43 +00:00
drh
06d6efb661
Further enhance the vfslog extension to record the number of freelist pages
...
and the first freelist page in CHNGCTR-READ and CHNGCTR-WRITE records.
FossilOrigin-Name: 08157524ca816a81f3c341097e23982727eaa125
2013-10-18 17:42:35 +00:00
drh
2eebbf699e
In the vfslog extension for FILECONTROL records, show the pragma name for
...
SQLITE_FCNTL_PRAGMAs and the requested size for SQLITE_FCNTL_SIZE_HINT.
FossilOrigin-Name: f062969548da26850ceeb48d4283f6567f828887
2013-10-18 14:37:26 +00:00
drh
f05fba3afa
Version 3.8.1
...
FossilOrigin-Name: c78be6d786c19073b3a6730dfe3fb1be54f5657a
2013-10-17 12:57:35 +00:00
drh
b32652601c
Fix a typo in a requirements mark comment. No changes to code.
...
FossilOrigin-Name: e5a439cfa5c921187e4aa7050832ec2660fba13d
2013-10-16 23:58:21 +00:00
dan
14285b7067
Clear a valgrind error by zeroing the first 4 bytes of the temp-space allocation used by the b-tree module.
...
FossilOrigin-Name: 8651aba1865a8f82d21d3345f33fbd239fd9a042
2013-10-16 11:39:07 +00:00
drh
0353ed2136
Fix memory and resource leaks for WinCE and Cygwin, and a compiler warning
...
on windows with SQLITE_THREADSAFE=0.
FossilOrigin-Name: 9905cea9d45c90f2241f56dc32a25501476983bc
2013-10-16 11:31:51 +00:00
mistachkin
c216566ba5
Fix memory/resource leaks for WinCE and Cygwin.
...
FossilOrigin-Name: 2470d1bb08b2661bcfde7a605208eb6044836d5c
2013-10-16 09:49:10 +00:00
dan
a4bbc8b119
Add the "languageid" hidden column to fts4aux.
...
FossilOrigin-Name: 891df358e51075fb937f34952ce43bf51130b0d0
2013-10-15 19:06:17 +00:00
dan
cfe111b1f7
Changes to test code to make sure no server threads are left running after server1.test finishes.
...
FossilOrigin-Name: 1086e00bcaacc88ef2a9dda8a20698b0899ad2f7
2013-10-15 15:35:27 +00:00
drh
a703f50d7e
Fix an 8-byte alignment problem on the "crash test" harness (test code,
...
not in the core) that causes problems on Sparc.
FossilOrigin-Name: bcbc65030fa7c61f94100142e94ba2a5774f85b0
2013-10-15 14:29:32 +00:00
drh
a2617433a9
Fix harmless macro redefinition warnings in the totype extension.
...
FossilOrigin-Name: c9c1f8d6701b0a1bc939a7e35e565d4160dbf8d3
2013-10-15 11:58:34 +00:00
mistachkin
bc863b50ba
Fix harmless macro redefinition warnings in the totype extension.
...
FossilOrigin-Name: a38adeb7ffd77474754b66877d60717cdb3cb865
2013-10-15 10:43:04 +00:00
mistachkin
0593516fcc
Fix harmless compiler warning in the totype extension. Include all standard whitespace characters in totypeIsspace. Minor adjustments to style and comments.
...
FossilOrigin-Name: 73238f655a58c810876f46cc04eab1ac2d5b8ef7
2013-10-14 22:35:40 +00:00
drh
5f8cdac620
Move the tointeger() and toreal() functions out of core and make them into
...
a run-time loadable extension.
FossilOrigin-Name: 9f66dd7e3790c04f0ab724419f5381bd21f9ebad
2013-10-14 21:14:42 +00:00
dan
362d21614e
Fix a crash in FTS incremental phrase processing that can occur if the second or subsequent token is much more common in the dataset than the first.
...
FossilOrigin-Name: 0bf438fc30582a08fddfc3cec49366ee17ae2abe
2013-10-14 20:30:51 +00:00
drh
4398c9524f
Add implementations for the toInteger() and toReal() SQL functions.
...
FossilOrigin-Name: a0f7cbc068416cf55b86056f2ce7ee505c6cc3ea
2013-10-14 19:35:33 +00:00
dan
67896cef89
Fix for building with SQLITE_OMIT_FOREIGN_KEY.
...
FossilOrigin-Name: b8b5f6c8f646989bc62bb59416de9bca003a5896
2013-10-14 15:41:39 +00:00
drh
71d5338c5d
Update the foreign_key_check pragma so that when a parent table is undefined
...
it is treated as an empty table.
FossilOrigin-Name: 208b259ad73b51e7df163fee3d7ed2bd79767597
2013-10-14 14:30:02 +00:00
drh
0ae4f14e45
Corrects to comments on the STAT4 implementation.
...
FossilOrigin-Name: e06f74d32d44f281dd21908d401184f35f9455a4
2013-10-14 14:21:59 +00:00
drh
a7f4bf3f88
Make subroutines sampleCopy() and valueFromExpr() have file scope.
...
FossilOrigin-Name: 1660efbe46439734c7dc1674994ceb86a9b41d1a
2013-10-14 13:21:00 +00:00
drh
c0f1d0c697
Add a new application_id for GeoPackage version 1.0.
...
FossilOrigin-Name: 98ddfe45713775657e586f5a2499cf3c036f13dd
2013-10-14 10:46:05 +00:00