1
0
mirror of https://github.com/sqlite/sqlite.git synced 2026-01-06 08:01:16 +03:00
Commit Graph

6919 Commits

Author SHA1 Message Date
drh
8225d66be6 Use sqlite3MallocSize() to get the actual size of the memory allocation
used for lookaside cache and increase the size of the cache to use the
full allocation.

FossilOrigin-Name: 0e53ecad9468d0a13d155a4462551d4c234a7d5c
2011-11-10 02:24:11 +00:00
drh
e73c91496f Minor changes needed to restore full branch test coverage.
FossilOrigin-Name: bc10a753579b65ba4604867204b7b3d8383f3ac7
2011-11-09 16:12:24 +00:00
drh
3b42abb35b A negative value N for the cache_size pragma adjusts the number of cache
pages to use approximately N kibibytes of memory.

FossilOrigin-Name: b3faa680aedc94ed8aa2819228c0d304b181cc51
2011-11-09 14:23:04 +00:00
drh
6a8ab6d9cb For the mem1.c system malloc implementation, use the malloc_usable_size()
function if the HAVE_MALLOC_USABLE_SIZE macro is defined.  Update autoconf
to look for that function when configuring.

FossilOrigin-Name: 2e8ab3cedfebc33a831837792b523d1aa7cdc6b7
2011-11-09 01:53:25 +00:00
drh
e5c40b18e3 Update the API documentation for the new pcache2 interface. Change the
order of parameters on the xCreate method of pcache2.

FossilOrigin-Name: 4da7095683ec821414e255419d63a24dbd9d726d
2011-11-09 00:06:05 +00:00
dan
22e21ff4fc Experimental change to the pcache interface to allow page buffers to be allocated separately from their associated container structures.
FossilOrigin-Name: c275c9d323cb1dccb031b199d413ac3a0b244fea
2011-11-08 20:08:44 +00:00
drh
5802464316 Make the unix VFS tolerant of read() calls that return less than the
requested number of bytes.

FossilOrigin-Name: a210695abcfa5cb04279edfd04824d881b7c4ada
2011-11-07 18:16:00 +00:00
drh
a46739eae0 Amplify the restriction on commit-hooks that they cannot recursively
run SQL on the same database connection.

FossilOrigin-Name: 4fe5b73115a8b44950767f1b528107261d7312c9
2011-11-07 17:54:26 +00:00
drh
bf3f5f8d5c Change the default file format from 1 to 4. This means that, unless
PRAGMA legacy_file_format=ON is used first,
new databases will not be readable by versions prior to 3.3.0 (2006-01-10).

FossilOrigin-Name: a35f52b1ad22c2ad49fb1083f892b92c72da348c
2011-11-07 13:05:23 +00:00
dan
f673e09ef5 Move function sqlite3PagerClearCache() out of the "ifndef SQLITE_OMIT_WAL" block and into an "ifndef SQLITE_OMIT_VACUUM" block.
FossilOrigin-Name: 5dbfaed8c3e09ea35033dacf6faa3d6a0202cc68
2011-11-06 05:06:13 +00:00
drh
ccdf1baebf Update the xfer optimization code so that the xfer optimization can be used
with INTEGER PRIMARY KEY ON CONFLICT ... as long as the destination table
is initially empty.  Improvements to the comments on the xfer optimization.
New test cases added.

FossilOrigin-Name: e3f368cd5ef66a56fd4bd05a77276039e26b9e0e
2011-11-04 14:36:02 +00:00
dan
d28286181d Change a memcpy() in sqlite3FileSuffix() to memmove() on the grounds that the source and destination may overlap.
FossilOrigin-Name: 5e1d247e5b3b5dcf6763f01002e996786db48152
2011-11-04 12:05:52 +00:00
drh
9ef6bc427a Use mkdir() and rmdir() rather than open() and unlink() to create the lock
files with the unix-dotlock VFS.  The change is backwards compatible and,
we are told, works better on some network filesystems.

FossilOrigin-Name: e2f08426d7a84a2ac6148f485b7af377201a175b
2011-11-04 02:24:02 +00:00
drh
6ac7a58b14 Enhance the shell so that the ".schema" command works with case insensitive
LIKE patterns even with PRAGMA cache_sensitive_like=ON.

FossilOrigin-Name: b06bf3b3605a3c39cdfbb76c9a9f6b5202bb95ec
2011-11-04 00:35:56 +00:00
drh
e7224a011b Make sure the INSERT INTO ... SELECT statement works correctly even when
the destination table contains an INTEGER PRIMARY KEY ON CONFLICT... column.
Ticket [676bc02b87176125].

FossilOrigin-Name: 6f9898db7ff0730cc03f561f9c32ef3dee7e5d81
2011-11-04 00:23:53 +00:00
drh
76c67dca68 Fix a typo in a comment. No code changes.
FossilOrigin-Name: 6635cd9a7714b681dd8aa96e90be462a40d10178
2011-10-31 12:25:01 +00:00
dan
3b504df151 Add a test for [48f29963] that does not depend on FTS.
FossilOrigin-Name: fb15f5458eb3e17ce9795c09bffe1224fea0eecd
2011-10-29 15:29:43 +00:00
drh
0d1ee483ec Fix some code formatting in sqlite3Ext.h to avoid lines longer than 80
characters.

FossilOrigin-Name: 3ec20c3020e1bb5ec2815848af75cf4847a218e5
2011-10-29 12:42:31 +00:00
dan
341cadee54 Avoid attempting to call savepoint related methods on deleted sqlite3_vtab objects. Fix for [48f299634a].
FossilOrigin-Name: 3565fcf898960d7a23d23a2f363b039b2e29447b
2011-10-29 11:43:04 +00:00
drh
81bdd6db54 Avoid reporting a NOMEM error if a memory allocation fails while copying
the error message from a prepared statement into the database connection.

FossilOrigin-Name: dcb78793474e533c3e4f5c6389ba3c997f062eee
2011-10-29 01:33:24 +00:00
dan
029ead645d If an error occurs within sqlite3_step() on a statement prepared using sqlite3_prepare_v2(), transfer both the error code and error message to the database handle before sqlite3_step() returns (so that they are available via sqlite3_errcode() and sqlite3_errmsg(). Prior to this commit, only the error code was transfered. The error message was not available until after either sqlite3_reset() or sqlite3_finalize() had been called on the statement handle.
FossilOrigin-Name: 8f88cc4e616b4b30ed349f89e148f782da5cb6c4
2011-10-27 15:19:58 +00:00
drh
7abc54021c Avoid a harmless reference to an uninitialized variable following an
error in FTS3.  This is not a bug.  The change is to silence a valgrind
warning.

FossilOrigin-Name: d980c5b22fd700afb3cac5de5501c9350f2f589e
2011-10-22 21:00:46 +00:00
drh
74e7c8f51f Purge lingering references to SQLITE_STAT2 from the code and test scripts.
FossilOrigin-Name: aed2bf7a3c828a7191389b3f8235a9387977b476
2011-10-21 19:06:32 +00:00
drh
f9b22ca416 Remove stale requirements marks from the query planner.
FossilOrigin-Name: 76de9914bed11abda3898928633ad09d5a284f84
2011-10-21 16:47:31 +00:00
dan
1a83bc5b1a If an error occurs while writing to the database file during a VACUUM, discard the contents of the in-memory cache. This is required as if the database is a zipvfs database, the contents of the cache may be inconsistent with respect to the database as stored on disk.
FossilOrigin-Name: 07159e84b40b01fa40cac5fad1f433888e5984f8
2011-10-21 14:27:32 +00:00
drh
d337c5bde8 Fix an issue with finding the access permissions of journal files when
8+3 filenames are in use.

FossilOrigin-Name: 2b35c5144ddcc2ed6d0fcaa8c0ba5d20b9487be7
2011-10-20 18:23:35 +00:00
drh
d76b64e1c6 Fix comments on SQLITE_CONFIG_HEAP so that they do not interfere with the
requirements scanner.

FossilOrigin-Name: a3151ce15c256219646013d695b6e162e306cef8
2011-10-19 17:13:08 +00:00
drh
98655a696e Fix the virtual table rename logic so that it works even if the database
encoding is something other than UTF8.
Ticket [8290242b2a9a81683]

FossilOrigin-Name: d65f63531c3f8e3e55e656f049240714a3d7433f
2011-10-18 22:07:47 +00:00
drh
a2153f75c3 Fix an uninitialized variable in OR-clause processing.
FossilOrigin-Name: 54aecd929867606d14a062b501abbfb6f5f05e37
2011-10-18 19:14:33 +00:00
drh
e802c5da01 Improved handling of USING and NATURAL JOIN in 3-way and higher joins.
Ticket [3338b3fa19ac4ab]

FossilOrigin-Name: 551ce407bd77149865423511bd52eba2f404161a
2011-10-18 18:10:40 +00:00
drh
057fc817d7 Change the OP_JournalMode implementation so that it works even if a
substitute sqlite3PagerFilename() that might return NULL is used.

FossilOrigin-Name: 491ff5fb2504173d6905e38b8ea35737338aaa84
2011-10-17 23:15:31 +00:00
drh
57db4a7509 Avoid 32-bit integer overflow when evaluating the exponent of a floating point
value during ascii to binary conversion.

FossilOrigin-Name: 4becc47eb4d48686faca4f61e93e5f379b227fcc
2011-10-17 20:41:46 +00:00
drh
2458a2e742 Performance improvement for ascii to floating-point conversions with very
large exponents.

FossilOrigin-Name: 59bb999c8ba5e4ee7a4e388fc724b8606136d60c
2011-10-17 12:14:26 +00:00
drh
30ddce6ff4 Added the tool/warnings-clang.sh script. Changes so that there are no
warnings with either gcc or clang even including FTS4 and RTREE and
both with and without SQLITE_THREADSAFE=0.

FossilOrigin-Name: 39408702a989f907261c298bf0947f3e68bd10fe
2011-10-15 00:16:30 +00:00
drh
b07028f71c Add assert() statements and eliminate needless variable assignments in order
to get the clang scan-build utility to report zero problems against the
SQLite core.  Clang's static analysis did find one real problem - but it was
in the command-line shell, not in the SQLite core.

FossilOrigin-Name: 60fee9574b0125705787e33c16f116cf188c8323
2011-10-14 21:49:18 +00:00
drh
df901d34e5 Simplifications to the upper() and lower() SQL functions.
Updates to documentation on sqlite3_bind_text() and sqlite3_result_text()
to make it clear that users should not try to create strings with
embedded NULs and that if they do the result of expression on those strings
is undefined.  Ticket [57c971fc74524a]

FossilOrigin-Name: 9984cc20ca70b7fb39c0b99580a1317a7b0c9c85
2011-10-13 18:00:11 +00:00
drh
c522731b88 An improved fix for the page_count and quick_check problem previously
patched at [150592b4b4d8637]

FossilOrigin-Name: c3cb7f4fad725d5fa4d5acd9da63fc4538ce8e13
2011-10-13 17:09:01 +00:00
drh
b2acc3b145 Provide a complete prototype for isatty() in the command-line shell sources.
FossilOrigin-Name: 8bf13b036a77af9984f8f3d3a93da589fafd773f
2011-10-13 16:36:29 +00:00
drh
56197954dd Change the command-line shell to do the ".dump" inside of a SAVEPOINT
rather than a transaction, since this allows it to be run from within
a transaction.

FossilOrigin-Name: 6df7343b4c3de9ad8221180dc959dbbdf54733c7
2011-10-13 16:30:13 +00:00
drh
36f7dd3f0b Enable large-file support for fopen() and friends in the command-line shell.
Ticket [92af7da36b6fbd]

FossilOrigin-Name: eeeba4f0d2207ec26c60a405e2705e5d40022dbb
2011-10-13 16:02:17 +00:00
drh
6b93c9ae24 Make sure the query optimizer for aggregate queries knows that expressions
(x='a') and (x='A') are different.  Ticket [fa7bf5ec94801e7e]

FossilOrigin-Name: e43da426e66e6b63d5ed9610a6308aba0089313b
2011-10-13 15:35:52 +00:00
drh
5d16a9a6c6 Make sure the page_count and quick_check pragmas work properly even when
their names are capitalized.  Fixes a problem reported on the mailing list.

FossilOrigin-Name: 150592b4b4d86372e70332d4f69e41a04c4c54c3
2011-10-13 14:41:22 +00:00
drh
134c4ff698 Make sure all non-API functions in os_win.c have file scope.
Ticket [35c54c874987]

FossilOrigin-Name: 17e4fde5c541f1bba723386938b6123b2431bffc
2011-10-13 14:05:32 +00:00
drh
58c803b7f0 Do the ".dump" command inside of a transaction to prevent other processes
from modifying the database while the dump is underway.
Ticket [2466653295e65]

FossilOrigin-Name: 1c00d5454c85dfddb6c628c3742b4ddeaad6423a
2011-10-13 13:34:04 +00:00
drh
b87a666315 Fix a harmless compiler warning introduced into os_unix.c by one of the
recent changes.

FossilOrigin-Name: 4bf4d5ebfbf5d157a8bf3a3817e2ce350f25af0e
2011-10-13 01:01:14 +00:00
drh
2f464a045b If errors are encountered while processing the ".dump" command in the
command-line shell, print error messages as comments in the output and
ROLLBACK at the end rather than committing.
Ticket [ee19e690ec9a5a2]

FossilOrigin-Name: 8a8dcd6bd043d82dc04b6ad0614c64d20ace8e5f
2011-10-13 00:41:49 +00:00
drh
52dbea883f Be sure to allocate plenty of space for error messages coming out of
sqlite3_load_extension(), so that filenames and procedure names are
not truncated.  Ticket [7d32c69b50f89d]

FossilOrigin-Name: af8bcdd951c31f69966942d67833da30f6b121bf
2011-10-13 00:11:36 +00:00
drh
cb5e4dbf4e The sqlite3_overload_function() interface returns an error if it is unable
to create the overload function.  Ticket [20f9d4fbbff3a3]

FossilOrigin-Name: d5b6b374c5225d21c386fb3d6507d3938296e759
2011-10-12 23:49:49 +00:00
drh
3170225f19 The date/time functions return NULL if the xCurrentTime or
xCurrentTimeInt64 VFS methods fail.
Ticket [0b803bff856c644c]

FossilOrigin-Name: c96651dd6ceadd51c9e1f4d942177d3c128c47b4
2011-10-12 23:13:43 +00:00
drh
c3c8dac741 Suppress a compiler warning that occurs with SQLITE_OMIT_VIRTUALTABLE.
FossilOrigin-Name: 6bedb49d68f2960a6fc4701d02e177789abf9099
2011-10-12 19:04:07 +00:00