Commit Graph

9561 Commits

Author SHA1 Message Date
drh
ed1fddf462 Clean up obsolete comments in printf.c.
FossilOrigin-Name: 97ef4f5013731fa3a0f72451b7e8c9aec5523104
2011-10-12 18:52:59 +00:00
drh
8a575d9aa9 Clarify a comment and fix a code formatting issue in btree.c.
FossilOrigin-Name: 4f1a558d0013fbf3fe00bdf5883e61a1f3779831
2011-10-12 17:00:28 +00:00
drh
f0693c8928 Put in code to defend against signed/unsigned character problems
in the command-line shell.

FossilOrigin-Name: b94a80a832777f0e639f6a81fcfe169bf970a8c0
2011-10-11 20:41:54 +00:00
drh
338ec3e18e Add a couple of asserts trying to make the operation of
sqlite3SelectNew() clearer.

FossilOrigin-Name: b21b1c7bc490b193da8d8a277489eb875a507e30
2011-10-11 20:14:41 +00:00
drh
3ec4a0c1a5 Change the behavior of the readonly_shm=1 query parameter so that it never
attempts to open the -shm file read/write.

FossilOrigin-Name: f1364004836078378e4005ab3eb9c0a04e3d4ce7
2011-10-11 18:18:54 +00:00
drh
59eedf7925 Remove all precision and width limits from formatting fields in the
sqlite3_mprintf() family of functions. Malloc for space as necessary.
The prevents a stack overflow on very large numbers using %f.

FossilOrigin-Name: 1f843fb383583ee7ef51c13b8a820744e450101a
2011-10-11 17:54:54 +00:00
drh
67855877ff Fix requirements marks associate with STAT3.
FossilOrigin-Name: 9325c1a8c413dfbf0381190d8347f0a446ae5f5b
2011-10-11 12:39:19 +00:00
drh
36c0632127 Enhance sqlite3_analyzer so that it is able to deal with multiplexed databases
that have 8+3 filenames.

FossilOrigin-Name: e5169f9a5b7e20b8adaf6ebb7868a64e44fd7321
2011-10-10 16:06:35 +00:00
drh
9471406cf2 Fix a typo in a comment for PRAGMA journal_mode. Also amplify that same
comment.

FossilOrigin-Name: c8ff2a484005ca48c52407db9f4a9a7d9f747158
2011-10-10 12:04:14 +00:00
drh
385e52f60c All the soft_heap_limit to be exceeded by 10% in test cases.
FossilOrigin-Name: 4be9dccc711c9ad252e2cbd99bbcbe43247503a1
2011-10-08 21:39:11 +00:00
dan
f4ba109356 Add the SQLITE_DIRECT_OVERFLOW_READ compile time option.
FossilOrigin-Name: 2ab14a846727857175eac7961b7338c4d3b417ca
2011-10-08 14:57:07 +00:00
drh
08ccfaa1b1 Change the ANALYZE command so that it no longer tried to delete unused
sqlite_stat2 and sqlite_stat3 tables.  Change the DROP TABLE command so
that it is able to drop those tables.

FossilOrigin-Name: 589f3f5652e3674d3203f8bd32784a46b5ed530c
2011-10-07 23:52:25 +00:00
drh
9734e6e1f4 Make sure sqlite3_data_count() behaves as documented, even for
EXPLAIN QUERY PLAN queries.

FossilOrigin-Name: d4f95b3b6e9f4a4072606af5daa17ea7c645382e
2011-10-07 18:24:25 +00:00
drh
be7beab5f4 Improved handling of OR terms in the WHERE clause with multi-column indexes.
FossilOrigin-Name: b23ae131874bc5c621f0f5ea8d76fce1ec089cc2
2011-10-07 17:52:40 +00:00
drh
0a61df670e Add testcase() macros to ensure good test coverage.
FossilOrigin-Name: 5c132592820e9dc2355e26ea14e155c797c335b3
2011-10-07 17:45:58 +00:00
dan
c5f20a0061 Add the SQLITE_FCNTL_OVERWRITE file-control. Used by SQLite to indicate to the OS layer that the current transaction will overwrite the entire file.
FossilOrigin-Name: 1da87fcdacfa7d277c3ee98e410a9ea8b529c368
2011-10-07 16:57:59 +00:00
drh
85ae206e69 More test cases for the OR optimization.
FossilOrigin-Name: 4997d8b81cd3ea7c708911bfece00020d11224f9
2011-10-07 16:08:28 +00:00
drh
9ef61f4f4e Prevent infinite recursion of in the query planner for some pathological
test cases by disabling OR-clause processing upon first recursion.

FossilOrigin-Name: 9fca05eac503d712886a05d03794f76c61fb39ed
2011-10-07 14:40:59 +00:00
drh
8871ef5afd Begin an effort to enhance the query planner to do a better job with OR terms
in the WHERE clause.  This change allows ANDs outside of the OR to be factored
into the OR terms if that is helpful in finding better indices.

FossilOrigin-Name: 876bd21aaac444c7e056730e35696a74e9a1af0a
2011-10-07 13:33:10 +00:00
drh
f3259997c0 Enhance the sqlite3_data_count() routine so that it can be used to determine
if SQLITE_DONE has been seen on the prepared statement.

FossilOrigin-Name: 9913996e7b0f94ba1c51200b61433193002f3638
2011-10-07 12:59:23 +00:00
drh
a624fd5038 Add the --pageinfo and --stats options to the sqlite3_analyzer utility.
FossilOrigin-Name: baa80c7bc31900decae0d8e6090b30fcde377492
2011-10-05 19:46:03 +00:00
drh
b770894ec7 Update the sqlite3_analyzer utility program to provide more details about
the compression performance of ZIPVFS database files.

FossilOrigin-Name: fa5ed53296d45a5f963d20fb361555c432e0f31b
2011-10-05 18:18:13 +00:00
dan
2cf7e0a712 Fix test code related to reporting the size of overflow pages in zipvfs databases.
FossilOrigin-Name: ad7c9eed8bbd607babce4f5965f587c873e7bc02
2011-10-05 17:36:27 +00:00
drh
c47167a6a8 When finding the appropriate file permissions for journal files with
SQLITE_ENABLE_8_3_NAMES, ignore "-" characters in the name of the
containing directory.

FossilOrigin-Name: 328cc1867ffbbf1c953dfd843649f5f209c8e6ec
2011-10-05 15:26:13 +00:00
dan
deb9473250 Change FTS4 so that if both the content=xxx option and column names are specified, the virtual table assumes that the named columns correspond to columns of table xxx.
FossilOrigin-Name: 289ee43179369fce2fde50870d72c445e184e896
2011-10-05 15:11:30 +00:00
dan
8361b189c9 Fix a problem with IO error handling in the rebuild-index code.
FossilOrigin-Name: c6ba81fcad32192674bd510e607f787adc1f7038
2011-10-05 06:07:00 +00:00
dan
49fc336438 Improve test coverage of fts3.c.
FossilOrigin-Name: 0f439944ab49a5691615bc170fdcf652055573df
2011-10-04 19:41:50 +00:00
dan
cc5b81464a Add tests to check that modifying the schema of an FTS content table does not cause a crash in the FTS module. Also disable the deferred token optimization for content=xxx FTS tables.
FossilOrigin-Name: be86c7061b68f403730bf63ea1f7dc0d9ceb0a3b
2011-10-04 16:37:35 +00:00
dan
d8e454e19a Add experimental 'content' option to FTS4.
FossilOrigin-Name: 1d27ea741f61c624e18bdc6a3b1c2d8574a64ddc
2011-10-04 11:22:59 +00:00
drh
d4b0ff9926 Merge the STAT3 changes into trunk.
FossilOrigin-Name: 774d0842bcce8862f2aac371f1689536ed234a0a
2011-10-03 15:30:33 +00:00
mistachkin
c756dedace Update MSVC makefile to allow targets to be built with support for ICU.
FossilOrigin-Name: eb5da5e1dbe9c198095036827318fb381441cbd0
2011-10-02 05:23:16 +00:00
dan
1696124db7 Disable the xfer optimization if "PRAGMA count_changes=1" is configured. Ticket [c48d99d690].
FossilOrigin-Name: 9ddfe1e41300413bc9af7e5ce0ec9d1daf9136b1
2011-09-30 12:01:01 +00:00
drh
7b075e3a1c In the shell, allow arbitrary table names on the ".import" command.
Ticket [d1d84037b90a449].

FossilOrigin-Name: f4dd32d30ed54f847319664cf749fd0b92b4af3f
2011-09-28 01:10:00 +00:00
drh
4c9f129d60 Enhance the stat VFS to report out the total size of all pages used by
a table, even if the ZIPVFS compression backend is in play.  Update
the sqlite3_analyzer logic to use these new outputs.

FossilOrigin-Name: 19b8eaaf70db82d401d33beb7fd36045d5e8326f
2011-09-28 00:50:14 +00:00
drh
f08f3843b7 Changes to sqlite3_analyzer to try to avoid integer overflow problems
when linking against older versions of TCL.

FossilOrigin-Name: 8c846311a0cd510bbf9361213bb60764e9b797aa
2011-09-27 13:40:26 +00:00
dan
64b41c7132 Changes to the analyzer script to make it work with zipvfs databases.
FossilOrigin-Name: d82cffab6acafcf9d91fea4ac47cad73f6f09775
2011-09-26 19:32:47 +00:00
drh
3051dc1c7f If an open as read/write fails, do not try to reopen as read-only if in
exclusive access mode.

FossilOrigin-Name: 263c5fb2802f8c84835e42fc66acb1065b7e42b9
2011-09-25 17:49:26 +00:00
drh
497ffc4c5d If an open as read/write fails, do not try to reopen as read-only if in
exclusive access mode.

FossilOrigin-Name: 4a153f010037db83107314269b240c0ece8430f8
2011-09-25 17:47:58 +00:00
dan
a682a6b578 Fix misc3.test so that it works with OMIT_MERGE_SORT builds.
FossilOrigin-Name: 87946c627f7230bea3739fd6aeec3e56115a3f93
2011-09-24 09:54:14 +00:00
dan
5209132a48 Fix some test files so that they work with SQLITE_OMIT_WAL builds.
FossilOrigin-Name: a38668dcff0a4d241d959ea19330ad43295d757d
2011-09-24 05:55:36 +00:00
drh
c78e6e4c4b Add SQLITE_DBSTATUS_CACHE_HIT and _MISS to the ".stat" command in the shell.
FossilOrigin-Name: d279e1a309909a0897b6082753a0fadb5066c31a
2011-09-23 18:58:23 +00:00
drh
0bab6c3ef7 Add the -DBUILD_sqlite option to the compiler when building testfixture.exe
using the configure script.

FossilOrigin-Name: 15a13b6c59ddf145c3fc860d993a7fa5587a0799
2011-09-23 16:34:49 +00:00
drh
790a55171e Merge the latest trunk changes into the stat3-trunk branch.
FossilOrigin-Name: 0beb88a92c8f75231df120bef54616c7e4bb68c8
2011-09-23 14:40:31 +00:00
drh
567211ed0e Testability enhancements.
FossilOrigin-Name: be44928cf2a3c063c8228b769d90947acbfad1ef
2011-09-23 13:59:33 +00:00
drh
369980189b Fix typos in the format description comment of analyze.c.
FossilOrigin-Name: 74e27fad339a2d7899c1f42805e615128929f07a
2011-09-23 13:25:03 +00:00
drh
2b9cf669d8 Remove the restriction on the number of entries per index in sqlite_stat3.
FossilOrigin-Name: 374343c8ad53829c4ad715ed623d16635797de9a
2011-09-22 20:52:56 +00:00
drh
5c62486cd8 Fix an issue in ANALYZE when STAT3 is disabled but both sqlite_stat2 and
sqlite_stat3 tables exist.  Also add testability tweaks to the STAT3 code.

FossilOrigin-Name: 3ca7e449e2e20d95e516cf7fe87bfa0b51c07086
2011-09-22 18:46:34 +00:00
dan
40f048f54b Remove a redundant (and undefined) "forcedelete" command from corruptE.test.
FossilOrigin-Name: 6d8d4e1694694c3e961fc1922f732d1da40caa6f
2011-09-22 15:31:30 +00:00
dan
b5126dde0d Remove the SQLITE_PAGECACHE_BLOCKALLOC compilation option.
FossilOrigin-Name: 4eb4689834b538b9eeec5a5803528260e1aff78d
2011-09-22 14:56:31 +00:00
dan
58ca31c905 Add the SQLITE_DB_STATUS_CACHE_HIT and MISS options. For querying the number of cache hits and misses on a per-connection basis.
FossilOrigin-Name: 5100b6e9dc5107f0f835d0aac26fe6d4938ffc73
2011-09-22 14:41:16 +00:00
drh
0fe0c466ca Update the version number to 3.7.9.
FossilOrigin-Name: 14e28eb9546906b33eb03e596ad104c8ca049d6c
2011-09-22 00:56:38 +00:00
drh
93c6384ca6 Fix an uninitialized variable and a misuse of memcpy().
FossilOrigin-Name: ee110d5a4a6f29400bb632a9a18c7dcd04638657
2011-09-22 00:28:55 +00:00
mistachkin
9a55e31f4d Integrate build changes for sqlite3_analyzer into the MSVC makefile. Also, more cleanup of build files, including sqlite3_analyzer, for all makefiles.
FossilOrigin-Name: af1c5718292c0326b785416b7109eafefaeb59a7
2011-09-22 00:06:44 +00:00
drh
565621a57e Minor tweaks to the TCL code for sqlite3_analyzer.
FossilOrigin-Name: 3a261f383f11d839d3a23d454b4422298bef9c88
2011-09-21 20:10:42 +00:00
drh
8d43aa10cb Remove unnecessary dependencies from the sqlite3_analyzer targets in
makefiles.

FossilOrigin-Name: 0bd8fd352d290637d8c4d4fb76e8dd28f0149fa0
2011-09-21 18:29:49 +00:00
drh
c42cdce5e0 Fix the sqlite3_analyzer target in the configure-generated Makefile.
FossilOrigin-Name: 256cdbdc810cae23388ccf73583c591304294dbb
2011-09-21 17:04:21 +00:00
dan
0ae479dff2 Change the way the sqlite3_analyzer executable is built.
FossilOrigin-Name: 05e3cced8a884e8bca6f208d2f09e335d3929eac
2011-09-21 16:43:07 +00:00
drh
d3ed73406c Pull in the latest changes from trunk. Update the STAT3 documentation.
FossilOrigin-Name: 63fc3e4bea6a7f5dc34b2af83f30458eb10b8fe0
2011-09-21 00:09:41 +00:00
drh
9d56acdcfc Minor comment change in the description of the different memory allocator
options.  No changes to code.

FossilOrigin-Name: 36be31ff0af7f811fe2c6f7e26f058cffb7257e1
2011-09-19 20:56:59 +00:00
drh
72949adc95 Merge in all changes through the 3.7.8 release.
FossilOrigin-Name: 9607600b6ca9b546dd248982fd8e8d64f708be5c
2011-09-19 20:36:42 +00:00
drh
1335f8c21f Version 3.7.8 release candidate
FossilOrigin-Name: 3e0da808d2f5b4d12046e05980ca04578f581177
2011-09-19 14:49:19 +00:00
drh
432e0bc6dc Increase the default lookaside cache line size from 100 to 128 bytes.
FossilOrigin-Name: db019465036171fcad31181bec7d6ac185f50430
2011-09-19 13:01:53 +00:00
dan
73ac46da31 Remove a stray merge-sort related change from pager.c and pager.h.
FossilOrigin-Name: 69823ed163049d6fa1e24a9810c3c99f2a8fdd46
2011-09-19 11:57:34 +00:00
drh
168f9f5aa3 Add a new script to build an amalgamation that omits FTS3/4 and RTREE.
FossilOrigin-Name: b31a7d7db9040d8eedaf1ecd89ea0033f579d0f1
2011-09-17 17:29:20 +00:00
mistachkin
f1c40f4fd4 Make sure the file structure is zeroed prior to calling the VFS to open a file.
FossilOrigin-Name: 29c4d0dd43d41650e54824afd70dd40f1b91cc86
2011-09-17 15:34:50 +00:00
drh
dfd2d9f6c9 Fix a problem with SQLITE_OMIT_TRACE that was introduced by the recent
OP_Once change.

FossilOrigin-Name: 96be3f7b59b3ed4703b907e29db629df34b2b56f
2011-09-16 22:10:57 +00:00
mistachkin
c377f3106b Fix #if's in winSync to avoid compiler warnings about unused local variables. Also, update version numbers in the MSVC makefile.
FossilOrigin-Name: 2e66e41457422449ac5918b16be443e737dfb149
2011-09-16 20:43:44 +00:00
mistachkin
a3b2ff5182 Silence harmless compiler warning about redefinition of the _CRT_SECURE_NO_WARNINGS macro by shell.c.
FossilOrigin-Name: 690220717f3d92d4fb7bd72226fc8d5f38f5fbcf
2011-09-16 20:16:36 +00:00
drh
5c4e5e53fe Merge all the latest trunk changes into the experimental STAT3 branch.
FossilOrigin-Name: 51908c8f2bc6c086570f7493a29b096f0a40ce34
2011-09-16 19:29:58 +00:00
drh
a464c23429 Remove unreachable branches from the previous change. Add additional
test cases.

FossilOrigin-Name: cf51ef8ab8a610ddf64f66970dd689fe1df405b8
2011-09-16 19:04:03 +00:00
drh
8850177924 When analyzing the right-hand side of IN operators to see if the IN operator
can work with an index, be sure to decend into nested subqueries.
Fix for ticket [1a1308d2538d7]

FossilOrigin-Name: 0156f10e23daca0e2504cd293a67ed0233d254d0
2011-09-16 17:43:06 +00:00
drh
7157e8eac1 Further streamlining of the subquery materializer. New test cases for
ticket [002caede898a]

FossilOrigin-Name: ff8b76b25b42497a7374de56c6a8f34cbe70cd6a
2011-09-16 16:00:51 +00:00
drh
ffd5075d7c Merge the [002caede898] fix into trunk.
FossilOrigin-Name: 95708ae2235658c3a49679e2fe252a058793366a
2011-09-16 01:38:53 +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
drh
5b6a9ed495 Materialize subqueries using a subroutine and invoke that subroutine
prior to each use of the subqueries manifestation.  Fix for
ticket [002caede898aee4]

FossilOrigin-Name: 4b8357ee3c4ccdbd34e0cd077efd84cca677f496
2011-09-15 23:58:14 +00:00
drh
4327aeaafd Adding test case for ticket [002caede898]
FossilOrigin-Name: 62dfc51a495be017605cf315d72e2db91bfa28f7
2011-09-15 19:39:42 +00:00
mistachkin
ac43e1a6a5 Cleanup/fix error handling when no arguments are supplied to the SQLite analyzer.
FossilOrigin-Name: 3fc566ac5dfce314ee414a3fb79daeeed6d0f179
2011-09-15 00:40:11 +00:00
mistachkin
0fe5f95c7f Remove 'const' from a variable that might actually be written when an OOM error occurs. Also, fix a couple MSVC/Win32 compiler warnings.
FossilOrigin-Name: 3035dc1c7398791d550f4c02774ef7f961b4bb02
2011-09-14 18:19:08 +00:00
drh
244b632cf7 Remove unused parameters from internal routines in vdbesort.c. This is
an additional simplification made possible by recent optimizations.

FossilOrigin-Name: a1f3aeeb0988c848d40ce8f6da6e902935a997e2
2011-09-14 13:41:40 +00:00
drh
59ebc99161 Remove code from vdbesort.c that was made unreachable by the recent
sqlite3VdbeRecordUnpack() optimizations.

FossilOrigin-Name: 607aba6cd7020973200fa376cf8df55360165266
2011-09-14 13:23:21 +00:00
drh
5a9f90b574 Merge the latest trunk changes into the stat3-trunk branch.
FossilOrigin-Name: 11ca4ed8bf850dae1a24b7182f70039f32bd8dd1
2011-09-13 19:09:28 +00:00
dan
f9556a1a3d Allocate the correct size for the output buffer in fts3DoclistOrMerge(). Fix for [56be976859].
FossilOrigin-Name: 07788c0f7f3740c1c280f6ce4dc68401c30bae6e
2011-09-13 19:08:43 +00:00
mistachkin
649591af23 Cleanup pdb/ilk files generated by the MSVC makefile.
FossilOrigin-Name: a9db247b752bcda0131b8f01c6f0182f3101d154
2011-09-11 10:14:37 +00:00
dan
42acb3e597 Fix a minor performance regression in btreeMoveto().
FossilOrigin-Name: d0712dfb24867a807c9cddcc12bd0aebe1d3e085
2011-09-05 20:16:38 +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
19c88c1a99 Fix a compiler warning about an unused parameter in the merge-sort code.
FossilOrigin-Name: 6b657ae75035eb10b0ad640998d3c9eadfdffa6e
2011-09-04 01:27:00 +00:00
drh
c2bb3282f1 Improve the testability of the merge-sort logic.
FossilOrigin-Name: b5179baf87aa00ed5cecbdcaa65bee10e112a9e9
2011-09-04 01:11:46 +00:00
drh
d40807ddef Performance improvements to the external merge-sorter. Keep content on an
in-memory linked lists rather than an ephemeral table prior to spilling to
disk.  Use the external merge-sorter to implement ORDER BY and GROUP BY
in addition to CREATE INDEX.

FossilOrigin-Name: 4c43e8b2d2c1d8dcba3cd1c3f2ec4e19ab419430
2011-09-03 17:07:26 +00:00
drh
04a962fe02 Simplification and performance tweaks in vdbeSorterMerge().
FossilOrigin-Name: 99e34bdce4ccca15b79159b03b96787e7a7ff85b
2011-09-03 16:42:38 +00:00
dan
8b1ea14f8c Reduce the number of VdbeRecordUnpack() calls made in vdbesort.c.
FossilOrigin-Name: 666c2c3cff51dac2ba5689b75705d99c3705673b
2011-09-03 14:36:13 +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
drh
34163c6831 Remove some dead code. Fix a faulty assert(). Improve some variable names.
FossilOrigin-Name: a9a64592cf88580cb254fb0aac65a2f2085976ec
2011-09-02 21:42:33 +00:00
dan
7733a4db4b Combine two malloc calls in vdbesort.c.
FossilOrigin-Name: cf48ad8353e28339d00f448bb729e10a7f2aad72
2011-09-02 18:03:16 +00:00
dan
7f72114547 Reduce the number of malloc() calls made when creating an index on more than 2 columns.
FossilOrigin-Name: 065b0c9858da0ebb41722f3c56bdaf62f28b2f2c
2011-09-02 15:41:33 +00:00
mistachkin
9747a6063b Remove unused local variable.
FossilOrigin-Name: 61bda876af6df3170263d41d2933168305de58d2
2011-09-02 15:08:28 +00:00
dan
9fed558df9 If all data being sorted fits in memory, avoid writing any data out to temporary files in vdbesort.c.
FossilOrigin-Name: 71075673c625f243969c3f34c73f28f378924007
2011-09-02 11:45:31 +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
1c9d835d49 Use OP_SorterOpen instead of OP_OpenEphemeral to implement GROUP BY.
FossilOrigin-Name: ebf819aaa555bd79fddfc0a6f9827a2539095d6c
2011-09-01 16:01:27 +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
96862072b8 Avoid using uninitialized variables after failures in the merge sort code.
FossilOrigin-Name: 2869ed28299b1c9f355ecc24635830f7f1249126
2011-08-31 23:57:22 +00:00
drh
20f8e13b44 Formerly, we enabled fdatasync() on linux only. But now we learn that
fdatasync() is not supported on Android.  So we disable fdatasync() on
Linux too.  It can be reenabled at compile-time for those who really need it.

FossilOrigin-Name: 70b5b309568ac55565558d5456aca1e431cfd26b
2011-08-31 21:01:55 +00:00
drh
5a201fb41d Add the SQLITE_MAX_SCHEMA_RETRY compile-time option to the set of options
understood by "PRAGMA compile_options;" and by the 
"sqlite_compileoption_used()" function.

FossilOrigin-Name: 1b124af40a8fa4d3094f24a9213096b66411b8f9
2011-08-31 20:47:50 +00:00
drh
1b1e8a8be6 The server1.test script should only run if mutexes are functional.
Fix to the #ifdef change of check-in [9e6a4c1473].

FossilOrigin-Name: 6489848590db7088d965b7fa7feabc8c66e2e2b1
2011-08-31 19:40:58 +00:00
drh
fd53231c85 Always include the unixShm.id field, even when not debugging.
FossilOrigin-Name: 07803476206b8cde60ccc320b9ccdc0d48a41d65
2011-08-31 18:35:34 +00:00
drh
7730c4457e Only create the sqlite3OSTrace global variable if compiling with
SQLITE_TEST.

FossilOrigin-Name: 9e6a4c1473a4cb061a88f6a437a2828368b3ddc8
2011-08-31 18:04:54 +00:00
drh
4515a45b8c Backslash escaping is not working right in tostr.awk on the latest ubuntu.
The easiest fix is to simply not use any backslashes in the spaceanal.tcl
script.

FossilOrigin-Name: df550066657cb41bad34ac8e722b8148ab7eabfb
2011-08-31 17:46:50 +00:00
drh
e42a9b431b Add checks to make sure cells in corrupt database files
do not overflow a page when doing autovacuum.
Problem detected by valgrind.

FossilOrigin-Name: d0b347b412376d22e9f0770ac083dafb5e480dd0
2011-08-31 13:27:19 +00:00
drh
0ee469c9a8 Enable the thread test logic to work with the SQLITE_HAS_CODEC compile-time
option.

FossilOrigin-Name: 20ddfb4780b87953718f3a8e67b777dcff0e3b5e
2011-08-30 19:52:32 +00:00
drh
307ff30b54 Change the build process so that it does not require the unix "sort"
command.  This avoids confusion between ms-sort and mingw-sort on
windows systems.

FossilOrigin-Name: f1bd5bbae505068d24bfd9cc6bab6a8b8940bad6
2011-08-30 01:29:04 +00:00
mistachkin
d589a5444b Make sure SQLITE_FCNTL_SIZE_HINT a no-op if the chunk size is not greater than zero.
FossilOrigin-Name: 88b763e8d73fafa1538b08af28b1c8b723b39c61
2011-08-30 01:23:34 +00:00
drh
e0a59cf0e1 Fix a total unimportant file descriptor leak in lemon. This is to silence
warning messages.

FossilOrigin-Name: e95cf2c576dda656c0f31eeec3d98e911b9003a1
2011-08-30 00:58:58 +00:00
drh
bc2be0c770 Fix a buffer overrun in test logic. No impact on the core SQLite.
FossilOrigin-Name: 49cd60e38bd8df9d736ced95e0ace6efea95ca7d
2011-08-30 00:53:50 +00:00
dan
54bbe7f15e Fix a broken assert() statement in select.c.
FossilOrigin-Name: ad78ef2b3a20e3c3191fba232cbae70656210cf5
2011-08-29 18:24:27 +00:00
drh
2f7820d8b5 Back out [05c9832e5f6eb] since it was causing a performance regression with
no obvious benefit.

FossilOrigin-Name: 639cc85a911454bffdcccb33f2976c683953ae64
2011-08-29 11:56:14 +00:00
drh
d4b708f671 Merge performance enhancements into trunk.
FossilOrigin-Name: 5a00d24b279424d257781ec3f1227e72a5d56f57
2011-08-29 03:08: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
drh
5a077b741f Small performance improvement to OP_Column.
FossilOrigin-Name: b6b73a747ad8d0f026074e41c2a4adc529ec2674
2011-08-29 02:16:18 +00:00
drh
e6f43fc4f8 About a 3% improvement in the performance of OP_Column.
FossilOrigin-Name: edff9d4a995095e555fcc9aec4c56f4bcaa1557e
2011-08-28 02:15:34 +00:00
drh
4a6f3aabca Correctly display P4_ADVANCE values on opcode traces. Mark an always-taken
branch in OP_Column as such.

FossilOrigin-Name: 087dc96086fe4e45da93ab6a0d5dda34c932ce97
2011-08-28 00:19:26 +00:00
dan
a205a486d2 Experimental changes to improve the performance of OP_Next.
FossilOrigin-Name: 1a249845251199c00817893add300a1a654b4df9
2011-08-27 18:48:57 +00:00
drh
3d4435b234 Fix several harmless compiler warnings and a documentation bug.
FossilOrigin-Name: 5454d0fe227b7c1f0e7715b6c08f97019628fc4c
2011-08-26 20:55:50 +00:00
drh
009a5f811b Merge the stat3-enhancement branch with trunk, but keep the resulting merge
in a separate branch for now.

FossilOrigin-Name: 63f2c7859fa6e5d0e2cdd218ff52a3ec2d44c61d
2011-08-26 13:16:33 +00:00
mistachkin
25d054fabd Update compiler error message regarding the choice of memory allocator defines.
FossilOrigin-Name: 1dada5158215d1816edb69ff2610f9d2259ce19d
2011-08-26 11:25:02 +00:00
mistachkin
d2f496aab5 Merge Win32 native heap support into trunk.
FossilOrigin-Name: 5238a74987507f27af4080e2842f53e049b5b111
2011-08-26 11:18:44 +00:00
mistachkin
4d60be5e30 In the MSVC makefile, allow symbols to be enabled without NDEBUG defined. Also, for the win32lock test, make sure the database is closed prior to shutdown.
FossilOrigin-Name: 5ed7633d41b99929309a7e13d37375a4fdae43b3
2011-08-26 05:40:31 +00:00
mistachkin
7da32b5841 Disable checking the winMemData structure signature when compiled with NDEBUG.
FossilOrigin-Name: 50edc2f9141bd13277119afd129387029ebe5c01
2011-08-26 01:45:50 +00:00
mistachkin
155892cccc Allow the Win32 native heap flags to be overridden at compile-time.
FossilOrigin-Name: 1c2ecec8e7320bc5b532b3107005fb7f0370f25c
2011-08-26 01:32:24 +00:00
drh
2a5d9908f9 Create a new pager type, PAGER_SORTER, for use in the external merge sort.
Such pagers are always held in memory but do report when they are under
memory pressure by calling pagerStress.

FossilOrigin-Name: c71d73201d950355862dd8d5de142c9673888755
2011-08-26 00:34:45 +00:00
drh
c5dbffe741 Reorder some of the branches in backup.c in order to make the code
easier to test.

FossilOrigin-Name: 2c443d47ecee7b43a89f0a4bf299c46c66e3f80d
2011-08-25 20:18:47 +00:00
dan
4b2704021a Replace an assert() that a condition may not occur in backup.c with code to handle that condition, which can occur.
FossilOrigin-Name: 472c74b3452c5a07dfb006010441232b09599ad5
2011-08-25 19:28:47 +00:00
drh
860e332cdc Fix harmless compiler warnings in test code. No changes to the core.
FossilOrigin-Name: 16f83fec77668c021694fbb189b415bd3b90adc8
2011-08-25 18:54:46 +00:00
drh
d7f6e906db Disable external merge source when SQLITE_TEMP_STORE==3. Add documentation
to the OP_OpenSorter opcode.

FossilOrigin-Name: 5a690486811379cea40c6ed48b2902f421234832
2011-08-25 18:01:28 +00:00
dan
ee140c4d71 Fix the SQLITE_DISABLE_DIRSYNC compile time option.
FossilOrigin-Name: 6deb3ea1f080324ea23ebdc9008753fbbc4063e2
2011-08-25 13:46:32 +00:00
mistachkin
f2d25f2005 Add comments for the various debug levels. When debugging, disable optimizations. Prevent the win32lock tests from spinning forever.
FossilOrigin-Name: 401859236b0d97bde82b11f32efce6eb9d490941
2011-08-25 04:09:12 +00:00
drh
26541c9a00 Fix an file separator character issue with test_quota.c that was causing
it to fail on windows.

FossilOrigin-Name: ddb8d3e80df868bda0704feed31171fa055432b5
2011-08-25 03:38:31 +00:00
mistachkin
753c544495 In the MSVC makefile, support several levels of debugging, each one building on the previous. Also, add comment about the SQLITE_WIN32_MALLOC_VALIDATE macro.
FossilOrigin-Name: 4257e9b7ca78feb03df08fde56da947ae64c5c6f
2011-08-25 02:02:25 +00:00
drh
31e8097658 Cherrypick the [d4f6437f8d] change so that SQLITE_FCNTL_SIZE_HINT is always
honored and never undone by memory pressure on windows.

FossilOrigin-Name: 67ff8d27f6aa6e0beff1f6b72a997b30a9647879
2011-08-25 01:58:17 +00:00
drh
b6020c4eef Add the sqlite3_quota_file() interface to test_quota.c.
FossilOrigin-Name: 2b7fe8e5b74c3504edd0e3ff78096e357ee1b47c
2011-08-25 01:42:12 +00:00
mistachkin
4458bc8e3e Make sure that SQLITE_FCNTL_SIZE_HINT on Windows does not shrink the file.
FossilOrigin-Name: d4f6437f8de82482dfaa4c084f4221e89e21eb00
2011-08-25 01:16:42 +00:00
drh
e4cf0b3106 Add the SQLITE_EXTRA_INIT macro.
FossilOrigin-Name: a3220f36c164dd2edf085c07ea08d617d8438812
2011-08-25 00:14:41 +00:00
mistachkin
468690ef60 Add error logging to native Win32 heap support.
FossilOrigin-Name: 7fca5a284cded6d7531060da6e99a57aed50cf8f
2011-08-24 17:42:22 +00:00
mistachkin
1b186a9947 Experimental work to allow SQLite to use the native Win32 heap API.
FossilOrigin-Name: bf3d0ab53829350637283442f75071fe6d925245
2011-08-24 16:13:57 +00:00
drh
2d1017e47f Updates to the sqlite3_mem_methods documentation.
FossilOrigin-Name: 988998fe7b0a21ed113b67f812e51f357045bef4
2011-08-24 15:18:16 +00:00
drh
88caeac774 Fix some harmless compiler warnings.
FossilOrigin-Name: 46f5a68bfa4199a4bd398030bf88bfbb4df3d5ca
2011-08-24 15:12:08 +00:00
drh
796af156c7 Changes to test_quota.c to make quota groups persistent even after files
are closed.  Files remain a part of the quota group until they are
deleted.

FossilOrigin-Name: 04111ce980df9692b7fe65a36105e7de9627a3bb
2011-08-24 01:25:55 +00:00
drh
8115d5feaa Simplifications to the SQLITE_PAGECACHE_BLOCKALLOC logic. Reduce the number
of difficult-to-reach branches.

FossilOrigin-Name: d5d835fe8352cb2009133246d4ed1cd310803f75
2011-08-23 23:41:40 +00:00
drh
1ee6f74046 If the application-defined openDirectory() function returns SQLITE_CANTOPEN,
then silently ignore the error.  This allows the chromium sandbox to disallow
opening of directories without causing errors.

FossilOrigin-Name: 880b51150aaed804005f5062b4dd2fa0ffafa147
2011-08-23 20:11:32 +00:00
dan
422faae0ae Change the way the "crash" VFS (test6.c) handles SQLITE_FCNTL_SIZE_HINT.
FossilOrigin-Name: 40dd8a60be0ca79e0d0bf3a2b5a43f13c02b4971
2011-08-23 19:46:02 +00:00
dan
67e10d1fd3 Have the "crash" VFS used by the tcl tests (test6.c) handle SQLITE_FCNTL_SIZE_HINT internally, instead of passing it directly through to the underlying VFS. This is important if the crash VFS is simulating non-default device characteristics such as SQLITE_DEVCAP_SEQUENTIAL or ATOMIC.
FossilOrigin-Name: fac8bc8f3450a6ce74c9250acb0608e940ffb54d
2011-08-23 16:41:06 +00:00
drh
1b53d7d75a Ifdef out routines in pcache1.c that are used only
when SQLITE_PAGECACHE_BLOCKALLOC is defined.

FossilOrigin-Name: 0da292da3bc867a5c6e29384f325581ea06bbd20
2011-08-23 13:27:48 +00:00