1
0
mirror of https://github.com/sqlite/sqlite.git synced 2026-10-25 09:59:22 +03:00
Commit Graph

7475 Commits

Author SHA1 Message Date
drh
90315a2417 Make the openDirectory routine in os_unix.c overrideable so that it can
be turned into a harmless no-op for the chromium sandbox.

FossilOrigin-Name: 6b236069e1ea3c99ff0a007a790d4baebda70b13
2011-08-10 01:52:12 +00:00
drh
0059eae367 In os_unix.c, do not open the directory containing the database file when
the database file is opened.  Instead, wait until time to fsync() the
directory.  And do not report an error if the open fails, since some
systems (Ex: AIX and a chromium sandbox) are unable to open and fsync
directories.

FossilOrigin-Name: 713b1b7dc1296e9cee42aeaad8c85528155f721d
2011-08-08 23:48:40 +00:00
drh
036ac7fa90 Allow the unlink() system call to be overridden in os_unix.c.
FossilOrigin-Name: 8d1b5c3ac027ac00d57a250aad45230a09645617
2011-08-08 23:18:05 +00:00
dan
bf09093f64 Remove redundant parameter from vdbeSorterInitMerge() in vdbesort.c.
FossilOrigin-Name: eec8c0df075d3a54ad71a2854b170f3ed307d068
2011-08-08 19:26:13 +00:00
dan
5279112ea3 Add fault-injection and other tests (and fixes) to improve coverage of vdbesort.c.
FossilOrigin-Name: 0e6defa6aa540b413ea3f4bb6dcd86364d547067
2011-08-08 16:44:25 +00:00
drh
a5ae4c330b Remove relevant elements from the sqlite_stat2 table when doing a DROP
INDEX or DROP TABLE.

FossilOrigin-Name: 3c8f97ae527e380bf2583c7cf8ceac9509f29bfe
2011-08-07 01:31:52 +00:00
dan
01204728f1 Fix a problem with building large indexes introduced by the previous commit.
FossilOrigin-Name: 038ec9ea92f7661358580d999adc400da14d47f0
2011-08-06 15:09:33 +00:00
dan
1e74e602ec In temp files used for merge sorting, store the size of each packed-memory-array at the start of the array itself. This is to avoid having to store the offsets of all arrays in the (potentially very large) file in main-memory.
FossilOrigin-Name: 8051c1767c4386b0f14a66742d9fac41e001eb07
2011-08-06 12:01:58 +00:00
dan
f834eff2f0 Minor internal changes to vdbesort.c. Also, default to merging lists together 16 at a time.
FossilOrigin-Name: 9ddc324a34dbf97acef92eef21f8a35f63db4c5b
2011-08-05 11:49:12 +00:00
dan
f25eef9882 Fix a comment in vdbesort.c.
FossilOrigin-Name: db8518cab8e329b1dbe4cd6c81b21ef3ea69fcb1
2011-08-04 18:43:37 +00:00
dan
c6e734554f Change to using packed-memory-arrays instead of b-trees when performing an offline merge-sort for CREATE INDEX. This makes it easier to control the number of disc seeks required when merging.
FossilOrigin-Name: a4770d079c1b236eb54751e75a44cccc997c6b93
2011-08-04 12:14:04 +00:00
drh
f9042e9682 Merge the winopen-retry-logic branch into trunk. The biggest change here
is to test scripts, which should now use such as copy_file and
delete_file from tester.tcl rather than the raw file commands of TCL.

FossilOrigin-Name: b90c28be3840169651022ef36cd7cf416bc22305
2011-08-03 22:06:39 +00:00
drh
52043d7d45 Update the OP_Move opcode to shift the pScopyFrom pointer of aliases when
compiled with SQLITE_DEBUG.  Ticket [d63523637517386191].

FossilOrigin-Name: a2135ad13049c170b33315a949b1544e6a136183
2011-08-03 16:40:15 +00:00
mistachkin
176f1b47e5 Correct subtle timing issues in the win32lock test cases and in the lock_win32_file Tcl command. Also, eliminate superfluous MSVC compiler warnings.
FossilOrigin-Name: 7baf02946e14eb889d864984ff3b3822aad8a3c9
2011-08-02 23:34:00 +00:00
drh
ba2019ffae Merge the latest trunk changes into the winopen-retry-logic branch.
FossilOrigin-Name: 8bef97a0eb2f56d0ac374d97e97e0a44c7f99aee
2011-08-02 19:42:38 +00:00
dan
7fe6270b4d Minor fixes to vdbesort.c code in preparation for a major rework.
FossilOrigin-Name: 7f339c0e2655310d7530041c379b082d49ce8c7f
2011-08-02 10:56:22 +00:00
drh
b4256996c4 Make sure IS NOT NULL constraints work on virtual tables.
Fix for ticket [6c14288a473ceff].

FossilOrigin-Name: a55f4ab99952a731e4cd8f6ef17389062e5ed4c5
2011-08-02 01:57:39 +00:00
mistachkin
fda06befd5 Add retry logic for AV defense to winOpen. Also, refactor test suite to allow the key Tcl file operations (e.g. copy and delete) to be retried.
FossilOrigin-Name: 9007586fdabed8dbcc78581ea9821cfd1f9a4c8c
2011-08-02 00:57:34 +00:00
mistachkin
5b7f786e7e Merge changes for the new sqlite3_file_control() that will cause the -wal and -shm files to persist after the last database connection closes.
FossilOrigin-Name: 1b56677bdfb102d070a2057a65ba424fec81131d
2011-07-28 20:48:38 +00:00
mistachkin
4e6b49b409 Remove redundant sub-expression from retry loop invariant in winAccess. Also, make check for SQLITE_ACCESS_READWRITE formally correct.
FossilOrigin-Name: 93079a92c49edf72eb289f352cd5ed7ab2faaff3
2011-07-28 19:16:41 +00:00
mistachkin
e75a717dc8 Fix conditional for retry logic in winAccess and add missing call to logIoerr.
FossilOrigin-Name: 8a145863d1a8711953ae72d706404fb96f6fec06
2011-07-28 07:34:44 +00:00
drh
58384f1720 Use osStat() instead of stat() consistently in os_unix.c
FossilOrigin-Name: 9109128cb5640d687251dfbefa2fd998063cd9fb
2011-07-28 00:14:45 +00:00
drh
253cea5c6f Test cases added. Fix the query mode.
FossilOrigin-Name: a9d8794ae949df570466a84836882bc8bed95c7c
2011-07-26 16:23:25 +00:00
drh
f0b190d94c Prototype change for a new sqlite3_file_control() that will cause the
-wal and -shm files to persist after the last database connection closes.

FossilOrigin-Name: e34c553bf04761e86f3bd72f91439c05886caa5c
2011-07-26 16:03:07 +00:00
drh
7d2dc7156c Enable the SQLITE_FCNTL_SIZE_HINT on unix even if SQLITE_FCNTL_CHUNK_SIZE
has not been set.

FossilOrigin-Name: 05c9832e5f6eb705f1dce4e65cf4e2d56512ff6b
2011-07-25 23:25:47 +00:00
drh
5d22e41f2d Merge the winAccess retry logic from the anti-antivirus branch
into the trunk.

FossilOrigin-Name: 08d0e8799e1441ef063b1cdf9e4107071a0f81ca
2011-07-23 13:54:34 +00:00
drh
11cce77042 In the multiplexor, close auxiliary files before deleting them when doing
a truncate.

FossilOrigin-Name: 6fb7cfc2efb32dd5c8921a90b853390bc44d4794
2011-07-23 13:11:02 +00:00
drh
fdf6db12a4 Add retry logic for AV defense to winAccess(). Also allow OS tracing to be
enabled by a compile-time option.

FossilOrigin-Name: a6b85c73406caa3bf0585341c8ebc9897a1884f4
2011-07-22 21:25:57 +00:00
drh
b51bf43966 Compile with the SQLITE_ENABLE_8_3_NAME macro set to 2 to force 8+3 filenames
to be on all the time.

FossilOrigin-Name: ae83dac70173fecf203bf7e9f7bcb189d3e48f08
2011-07-21 21:29:35 +00:00
drh
e6deb20458 All multiplexor chunk sizes up to 4GiB. Disable the multiplexor if the
chunk size is set to 0.

FossilOrigin-Name: 83191ad6f31536b0c1929938e1fbeb4cf6121ab0
2011-07-21 20:59:58 +00:00
drh
0a0ca697d8 For an existing multiplexed database, try to set the chunk size automatically
based on the sizes of the preexisting pieces.

FossilOrigin-Name: 427a9a5120a68bfa12fec97cfd02eb9b28b3fa6b
2011-07-20 17:59:38 +00:00
drh
877eeb3b56 All the SQLITE_OPEN_URI flag to propagate down into the VFS.
FossilOrigin-Name: 29866f9598502a007816410fade34f1d0952dea0
2011-07-20 17:13:30 +00:00
drh
f3717af48d When the multiplexor opens an auxiliary file, it now persists the name of that
file until it is closed, as it should.  Remove the limit on the number of
auxiliary files used by the multiplexor.

FossilOrigin-Name: 1ffa542bf913200a18ef77447aec4fc3ca1ed618
2011-07-20 16:35:31 +00:00
drh
8efdb73256 Formatting changes on the multiplexor code - make sure no lines exceed 80
characters.  No logical changes.

FossilOrigin-Name: ed5f0aad6b21066bacd01521e82c22e96991f400
2011-07-19 18:29:00 +00:00
dan
33067e7393 In os_unix.c, check if the ESTALE macro is defined before using it.
FossilOrigin-Name: 87017410f2fc3f2ae15ef06714563ba9ad4350c7
2011-07-15 13:43:34 +00:00
drh
bf4ec555fa Do not try to use STAT2 to refine the row estimate of a query that
uses a unique or nearly-unique index.

FossilOrigin-Name: efffc49baf38698ed3de05d16b4261bf405d42d7
2011-07-13 18:31:10 +00:00
drh
d0cdf012a2 Added the SQLITE_FCNTL_WIN32_AV_RETRY file control for configuring the
retry counts and delays in the windows VFS.

FossilOrigin-Name: 7aaf0a6ae1238129e07eb191ca3f043df445e27a
2011-07-13 16:03:46 +00:00
dan
a20fde64eb Experimental support for speeding up CREATE INDEX commands using an offline merge sort.
FossilOrigin-Name: 30dbf0feab0323250404e0741ac2716bcb6b0cbe
2011-07-12 14:28:05 +00:00
mistachkin
dc9e9587c6 Revise logic in winDelete to check the file prior to attempting to delete it.
FossilOrigin-Name: 36f11acc531a524407e03c797a6a1bcf88bad809
2011-07-12 14:02:47 +00:00
drh
a32ad8434e Improvements to the logging that occurs on an antivirus I/O retry.
FossilOrigin-Name: ff0ff75c3559f5bbe29c73204cc8ff1cb80f42cb
2011-07-12 13:51:05 +00:00
drh
52564d7002 Update the anti-virus retry logic for DeleteFile(). Invoke sqlite3_log()
for each anti-virus retry.  Make the retry delay configurable at
compile-time.

FossilOrigin-Name: 89f1848d7f7d98b4f7da9218f99ed90d22dd43a8
2011-07-12 11:04:18 +00:00
drh
80084ca8e8 Update the TCL commands for setting windows manditory locks.
Add test cases for manditory lock delays under windows.

FossilOrigin-Name: 03af4c175c6ba303ec0a5be25fd42771e38f7347
2011-07-11 23:45:44 +00:00
drh
5d9ef0a612 Change the windows backend to retry read and write requests if the encounter
ERROR_LOCK_VIOLATION and ERROR_SHARING_VIOLATION errors - which we think
sometimes happens due to agressive anti-virus software.

FossilOrigin-Name: c20aca06610407c197ea50ea77c2591aacf2252a
2011-07-11 18:17:56 +00:00
drh
ec661058dd Fix harmless compiler warnings on unix.
FossilOrigin-Name: 90b1aea17400bbda5ebc8ae4eb4e12127519e42e
2011-07-09 16:17:18 +00:00
drh
f1d3e32909 In where.c::findIndexCol - make sure that the Expr.op is TK_COLUMN before
accessing the Expr.iColumn and Expr.iTable fields.  Also fix a couple of
unreachable branches.

FossilOrigin-Name: 418a4da2a96cf33055f18c9a667754fad2111cf3
2011-07-09 13:00:41 +00:00
drh
6f25e89d27 Change the default chunk size on test_multiplex.c to 2147418112 bytes
(formerly 1073741824 bytes) and make the default configurable at compile-time
using SQLITE_MULTIPLEX_CHUNK_SIZE and at run-time using the "chunksize"
URI query parameter.  Add support fo test_multiplex to the shell.

FossilOrigin-Name: e305b5a931374e2a1d2e66ea0a1248b9d4aecb19
2011-07-08 17:02:57 +00:00
dan
da79cf0cc9 Fix for [54844eea3f]: Do not create automatic indexes on correlated sub-queries.
FossilOrigin-Name: 9f14fa56ba31afe3de8b0cf26ed09573a2cc2283
2011-07-08 16:10:54 +00:00
drh
a9b1b91436 Extend the SQLITE_TESTCTRL_OPTIMIZATIONS option to disable DISTINCT
optimizations.

FossilOrigin-Name: 18501dd1a8aa8299c091c36e35b9a10a29d4467b
2011-07-08 13:07:02 +00:00
dan
e7152dc76b Add a target to main.mk that will fail if the amalgamation contains any exported symbols that do not begin with "sqlite3_". Run this target from within releasetest.tcl. Add "static" to a couple of private functions in mem3.c.
FossilOrigin-Name: a68b6580c7d436c896a644a475cdba33c2c8d6e6
2011-07-07 08:19:16 +00:00
dan
b0a43057fb Expose the value of compile time symbol SQLITE_MAX_DEFAULT_PAGE_SIZE to test scripts.
FossilOrigin-Name: 335736637c4ac3fe56a44fe01d4c037aaefa916a
2011-07-06 09:36:59 +00:00