Commit Graph

9446 Commits

Author SHA1 Message Date
drh 43fe25fcef Continued progress on generating good WhereLoop objects for the new query
planner.

FossilOrigin-Name: 15cc8a16482777d8e138c4d0863faf8d54fef33a
2013-05-07 23:06:23 +00:00
drh f1645f0843 Inserting a few WhereLoop objects without leaking memory. Costs are
not correct.  Inequality and IN constraints are not implemented.

FossilOrigin-Name: e8881a8b2f25f38bc8ff77619f96f38fe530d13b
2013-05-07 19:44:38 +00:00
drh c01b7306ae Make sure the ORDER BY collating sequences are compatible with the
comparison collations before using the merge algorithm for compound
SELECT statements.  Candidate fix for ticket [6709574d2a8d8].

FossilOrigin-Name: fc3630cdef6e2cdbfb4e7b373d1a094753e55016
2013-05-07 17:49:08 +00:00
drh 1ba00291a3 In the command-line shell, output the elements of the schema in the order
that they appear in the sqlite_master table.  This is necessary in some
cases to make the schema parsable.

FossilOrigin-Name: e5b3cd747bb0b484e38b8611a81925e2cc144435
2013-05-06 21:01:06 +00:00
drh 151b7d5bad In the command-line shell, make sure the output of dot-commands goes to
the same redirected output stream as the result of queries.
Ticket [2f96536e7ff7dba]

FossilOrigin-Name: b72d365920dbe45e61d8b1cff708a8858c2b3e33
2013-05-06 20:28:54 +00:00
drh 2722898c6c Make sure the authorizer callback gets a valid pointer to "ROWID" for the
column-name parameter when doing an UPDATE that changes the rowid.
Fix for ticket [0eb70d77cb05bb2272].

FossilOrigin-Name: 26a59bb88d4082758eb281b365b57f9a0c059d89
2013-05-06 13:22:50 +00:00
drh 1c8148fffb In where.c, make findTerm() a wrapper around methods to a new WhereScan object
which is capable of finding all suitable matching terms, not just the first.
This check-in includes some prototype functions for building WhereLoop objects.

FossilOrigin-Name: dd92b8fa929badaf2f79e8a00c83667a9d589096
2013-05-04 20:25:23 +00:00
drh bce5beee18 Allocate meta(8) in the header as the "application ID" and add the
"PRAGMA application_id" command to query and set it.

FossilOrigin-Name: b2efe4f225adc5f4c2e3080bf459cc52fff82e18
2013-05-03 15:23:24 +00:00
dan 32c12fe2bb Minor fixes for compilation with SQLITE_OMIT_WAL defined.
FossilOrigin-Name: b81e87e72b976e7157a53a50abc5422e2a6c4c39
2013-05-02 17:37:31 +00:00
drh f1b5f5b855 Begin inserting some experimental code for the next generation query planner.
FossilOrigin-Name: ccaf4c3f7e1ec45e058d594d9b5c26818a37722a
2013-05-02 00:15:01 +00:00
drh b8a67ec827 Preserve the application-ID across VACUUM. Updates to the magic number
file.

FossilOrigin-Name: 4a190bea18e156b6fa4dc9f21c3ad32409049603
2013-05-01 20:36:23 +00:00
drh 4ee09b4bcc Allocate 4 bytes of unused header space for an "Application ID". Add
the "PRAGMA application_id" command to set and query this identifier.
Add the "magic.txt" file to show how the posix file command might use
this application id.

FossilOrigin-Name: 28c9e7fdee2471a3026ee05ff591194d5f398131
2013-05-01 19:49:27 +00:00
drh a309552e2c Do not use a transitive constraint to an IN operator where the RHS is a
constant if there exists a direct == operator to another table in an outer
loop.

FossilOrigin-Name: faedaeace9c7ed9a8aaf96700caee09db0c0c061
2013-05-01 17:58:35 +00:00
drh 5c10f3b38e Avoid redundant constraint checking due to transitive constraints.
FossilOrigin-Name: 329478cbed06f93652de50abdb31a6b41af02b9e
2013-05-01 17:22:38 +00:00
drh 9a1eccb621 Update the documentation to explain that when the 3rd parameter to
sqlite3_bind_text() and friends is NULL the result is to bind a NULL
SQL value.  Ticket [19b44e35753ba]

FossilOrigin-Name: bd92de0e8d922b96513c5d431493800dda7e7562
2013-04-30 14:25:32 +00:00
drh 3c449c6b6b Make sure extra parentheses around subqueries in the FROM clause are harmless.
Ticket [28c6e830f239ea5].

FossilOrigin-Name: 1c79569226db3d5a73e65a35877635ea8b478866
2013-04-30 14:06:57 +00:00
mistachkin dd08ca0ff9 Add the #ifdefs for sqlite3ErrName() to sqliteInt.h as well.
FossilOrigin-Name: 400fc4c37ff34e84f5a129a083a567bda840278e
2013-04-30 07:58:15 +00:00
mistachkin 10269dc676 Define the sqlite3ErrName() function only when necessary. More robust handling of unknown return codes.
FossilOrigin-Name: e47cd314371c2be6e00d96392b3892a7f3015f98
2013-04-30 07:54:42 +00:00
mistachkin e84d8d3219 More refinements to Windows OSTRACE usage. Replace all usage of sqlite3TestErrorName() with sqlite3ErrName() and add missing return codes.
FossilOrigin-Name: 05ba5e23fcc5da416d47a8ad5e667ed6a0c7a34a
2013-04-29 03:09:10 +00:00
mistachkin f2c1c99f15 Initial work on reforming usage of OSTRACE by the Windows VFS.
FossilOrigin-Name: b347b5d1a01301f44e6fd20ee03a9529ffd25788
2013-04-28 01:44:43 +00:00
drh c5797545de Untested fix for building on VxWorks.
FossilOrigin-Name: f14d55cf358b0392d3b8cd61dc85f43a610a8edf
2013-04-27 12:13:29 +00:00
drh a13090fee9 Fix a formatting typo in a comment. No changes to code.
FossilOrigin-Name: 7a97226ffe174349e7113340f5354c4e44bd9738
2013-04-26 19:33:34 +00:00
dan 8e4714b303 Avoid unnecessarily reseting the pager cache after committing a transaction that takes advantage of the SQLITE_IOCAP_ATOMIC related optimization.
FossilOrigin-Name: c47144e98c0a0f9e09780c945de10c57b6a495ea
2013-04-26 18:36:58 +00:00
dan 77b428aa33 Avoid using posix_fallocate() in WAL mode, as it is not supported by all file-systems.
FossilOrigin-Name: 1bbb4be1a25947f75b2b0c6f368199016b6f7de3
2013-04-26 17:00:52 +00:00
dan 47a2b4a0b0 Avoid using posix_fallocate() in WAL mode, as it is not supported by all file-systems.
FossilOrigin-Name: 9c7523dabf4aee609287732ce787c9b9a9087e7f
2013-04-26 16:09:29 +00:00
drh 9ea88b2b48 Update documentation with new hyperlinks. No changes to code.
FossilOrigin-Name: 640eb54ad6aac9bc7109cba167389a9bcec3f21e
2013-04-26 15:55:57 +00:00
drh 2bba8c249a Reduce the default SQLITE_MAX_MMAP_SIZE slightly so that it fits in a
signed 32-bit integer.

FossilOrigin-Name: 460752b8575320163d2659bb7ff24aff41e2bb66
2013-04-26 12:08:29 +00:00
drh ea41dc44c5 Added the nextchar.c extension. Minor changes to the spellfix.c extension
so that it can be appended to an amalgamation and compiled without duplicating
symbols.

FossilOrigin-Name: 56b9a417f5451631f11c5206d625f11472ee65f9
2013-04-25 19:31:33 +00:00
drh c140a6b40d Merge the std-ext branch into trunk. This merge adds several new extensions
to the ext/misc folder, including transitive_closure, ieee754, and amatch,
and it convers some older src/test_*.c file into extensions in the ext/misc
folder.

FossilOrigin-Name: bbe607c7d17c50b667990360e2ccfab8dd22f161
2013-04-25 16:52:19 +00:00
drh 8416fc7fc7 Added the transitive_closure, ieee754, and amatch extensions.
FossilOrigin-Name: 84018099c8715b982cd24ce9221f93c7379e8c08
2013-04-25 16:42:55 +00:00
drh b7045ab2ed Move the test_spellfix.c module to ext/misc/spellfix.c.
FossilOrigin-Name: de556add10150140981a2e34b3712e96a7c262e3
2013-04-25 14:59:01 +00:00
drh e50db1c5d2 Convert the fuzzer virtual table into a loadable extension and move it
to the ext/misc/fuzzer.c file.

FossilOrigin-Name: c8c69307f60c1d07ac666ae3797b7e3f286fd491
2013-04-25 14:31:46 +00:00
drh 24b6422dcb Make test_wholenumber.c into a loadable extension and move it to
ext/misc/wholenumber.c.

FossilOrigin-Name: efcc9dd012b5f193324dfc2ee9c2410c16fc1b3b
2013-04-25 11:58:36 +00:00
drh aa87f9a68b Make sure the affinity and datatype of sub-subqueries are initialized
prior to subqueries as the latter relies on the former.

FossilOrigin-Name: 39b4e6ff9316cc78ea88349091e195b8104d1e9e
2013-04-25 00:57:10 +00:00
drh ed17167e1d Fix a simple comment typo. No changes to code.
FossilOrigin-Name: f136bd95824dc95b9e6acdc4d55db263ba13fbaa
2013-04-24 13:50:09 +00:00
drh 248f2be91a Make "test_regexp.c" into a loadable extension and move it over to
ext/misc/regexp.c.  Add the "load_static_extension" command for testing
purposes.

FossilOrigin-Name: 860fc393bff27045e0593c3c51bf5577accd0b79
2013-04-23 20:10:13 +00:00
drh da8caa0b2d Fix harmless compiler warnings.
FossilOrigin-Name: 1a1cf5aa86734c832d845e07780262a178188d56
2013-04-22 23:38:50 +00:00
drh d99aaf10df Do not allow a virtual table to cancel the ORDER BY clause unless all
outer loops are guaranteed to return no more than one row result.
Candidate fix for ticket [ba82a4a41eac1].

FossilOrigin-Name: 49cfa14fceeef2d55b449eb927c283ce6f650c07
2013-04-22 19:56:12 +00:00
drh b9830a1454 Enhanced documentation for the SQLITE_CONFIG_SQLLOG mechanism and the
test_sqllog.c demonstration file.  No changes to code.

FossilOrigin-Name: 206caf21f6f6963aa38a9aa0f6ea11c7230bb726
2013-04-22 13:51:09 +00:00
drh 0c41d22920 Use transitivity to move constraints into the outer loops of a join whenever
possible, thereby reducing the amount of work that needs to occur in
inner loops.

FossilOrigin-Name: 5f4907e1c6230e3dd904bd99e1c48c576c669f63
2013-04-22 02:39:10 +00:00
drh 08ef8d7311 Make the SQLITE_EXTENSION_INIT1 and SQLITE_EXTENSION_INIT2 macros into
no-ops if the extension is statically linked.

FossilOrigin-Name: 86eb3eed4c70730dba0e319f243f8cb4fa8de06c
2013-04-19 01:23:06 +00:00
drh c288e442e3 Experiments in making loadable extensions easier to program. The
shared library filename tries various operating-system specific extensions
if the bare library name does not work.  And the entry point is derived
from the filename is the legacy entry point name "sqlite3_extension_init"
is not found.

FossilOrigin-Name: 6cfa1d73d79b9f0be8157f0a37c264dd95b031c8
2013-04-18 22:56:42 +00:00
drh a956af67e1 Fix a compiler warning in sqlite3_compileoption_used().
FossilOrigin-Name: e9f9d84b223b69d36688cd7a4c7c696bfda8a1ad
2013-04-18 03:10:43 +00:00
drh 83b5bfc7d3 Do not suppress the ORDER BY clause on a virtual table query if an IN
constraint is used.  Fix for ticket [f69b96e3076e].  Testing done on
TH3 using cov1/where37.test.

FossilOrigin-Name: 61b2a7be3b9c04bf45bffa93a7d3a480fc5c947a
2013-04-18 02:55:54 +00:00
drh 7a411f441b In the command-line shell, allow a dot-command to occur after a
multi-line c-style comment.

FossilOrigin-Name: e2c94ab930f0e5a6dbe8cdd34ebb8cfeeedca56c
2013-04-17 17:33:17 +00:00
drh 4670f6d5f6 Improvements to some of the comments that are used to render documentation
concerning loadable extensions.  No changes to code.

FossilOrigin-Name: 76f4e31245fd1676a4520a2f7488bca6eb981e4a
2013-04-17 14:04:52 +00:00
drh 99b390827b Update the command-line shell to give an exit code of 0 when the ".quit"
command is run from the command-line.

FossilOrigin-Name: 467e218120d63d0f34c447f7324bac1364ac0eac
2013-04-17 12:19:48 +00:00
drh d16d0bc58b Omit sqlite3_compileoption_used() entries that are not explicitly stated
on the compiler command-line, except keep SQLITE_THREADSAFE around so that
there is always at least one compilation option.

FossilOrigin-Name: 109d6767d2626741db1d15ed55e699ac3184a536
2013-04-16 18:24:34 +00:00
drh 50287f5c0c Remove the unused SQLITE_CURDIR macro.
FossilOrigin-Name: 16f7ba4afaa69f6150b4defd4ddf5800f5d23084
2013-04-16 14:58:52 +00:00
drh 0f2340132f Disable memory-mapped I/O when the codec is enabled.
FossilOrigin-Name: 340cca3079cd7aac2f51071435666e9e00ed8bd5
2013-04-16 14:52:47 +00:00