1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-21 09:00:59 +03:00
Commit Graph

13138 Commits

Author SHA1 Message Date
drh
e56dd3ad7b Fix comment typos in the where.c module. No code changes.
FossilOrigin-Name: 1e0b77cf0edf3d26f76d83aa5466e9ec0e60a710
2013-08-30 17:50:35 +00:00
drh
f46af73720 If the cost of two whereLoop objects is the same in every way except that
one has fewer expected output rows than the other, then choose the one with
fewer output rows.

FossilOrigin-Name: 79e458ef7acfddbc189163e3e958da529becb130
2013-08-30 17:35:44 +00:00
drh
77a3fdc1b0 Add the SQLITE_MINIMUM_FILE_DESCRIPTOR compile-time option, for control over
exactly which low-numbered file descriptors SQLite will use.

FossilOrigin-Name: ba5190534330a25722eeb7ea9c42da7a6d146014
2013-08-30 14:24:12 +00:00
drh
5128d009c6 Improvements to the robust_open() logic in the unix VFS so that if an attempt
is made to open a repository on file descriptors 0, 1, or 2, and blocking
that file descriptor by opening it on /dev/null fails, then the open will
fail.

FossilOrigin-Name: d9c018f8155ab48df8e0e02519bba50588fe49fc
2013-08-30 06:20:23 +00:00
drh
35a0379a05 Change the unix VFS so that it refuses to open a database file using
a file descriptor less than 3.

FossilOrigin-Name: 66dddda06898abbf97fe0ac6a10ce1527ca8605e
2013-08-29 23:34:53 +00:00
drh
0c9a8e345e Never leave an open file descriptor pointing into the middle of the
database file if the file descriptor number is 2 or less.

FossilOrigin-Name: 3426673e4659eb68dbd14a3e41d4620d748432db
2013-08-29 21:26:26 +00:00
drh
5f9742e0ff Merge from trunk: (1) Recent bug fixes (2) STAT4 support (3) win32-longpath
support.

FossilOrigin-Name: e7ebc8f74fe91dee26f952fdf49e427b45448667
2013-08-29 15:08:38 +00:00
dan
8bff07a55f Restore fix [f15591f802], which was accidentally clobbered by the stat4 merge.
FossilOrigin-Name: d4b6ad3333cc3bad500c2ebf7a6ea552b6762b69
2013-08-29 14:56:14 +00:00
dan
cd40abb297 Candidate fix for [9f2eb3abac]: Have the whereShortCut() planner ignore indexes with more than four columns.
FossilOrigin-Name: c1152bdcbb5ac185f743015fff63769effa81b4b
2013-08-29 10:46:05 +00:00
mistachkin
09dee52885 Prevent the implementation of the toreal() SQL function from being 'optimized' by MSVC.
FossilOrigin-Name: 047bd1c24553b00ccf12d7745bb4c46820b91f5e
2013-08-29 01:17:24 +00:00
mistachkin
60883e5401 Fix boundary case for the toreal() SQL function.
FossilOrigin-Name: abe82c634ccda7d62687df5917d18a9d6e411142
2013-08-29 01:01:11 +00:00
mistachkin
312404ef76 Merge updates from trunk.
FossilOrigin-Name: ffc6e682836cdf275189427109f8af2aeb423bcd
2013-08-28 18:56:04 +00:00
drh
e4f9b9b7c0 Add the win32-longpath VFS allowing windows filenames up to 32K characters in
length.  Remove unused code when -DSQLITE_MAX_MMAP_SIZE=0.  Fix some
compiler warnings on windows.

FossilOrigin-Name: 12d0a8859de0a9d823997cfeccc77bd572cb6d13
2013-08-28 18:18:12 +00:00
mistachkin
3259fe7910 Fix a couple comments.
FossilOrigin-Name: 945cb89ecb92a6c2075b3e58ce1ba3d419b1b6ca
2013-08-28 17:59:38 +00:00
drh
d41d39f24d In the query optimizer, when converting BETWEEN and LIKE/GLOB expressions
into simpler forms for processing, be sure to transfer the LEFT JOIN markings.
Fix for ticket [bc878246eafe0f52c].

FossilOrigin-Name: caab361ebee5f5c3fdafd9b1abe3d1ab7c5b4db9
2013-08-28 16:27:01 +00:00
drh
868ccf2679 Fix an off-by-one error that causes a quoted empty string at the end of
a CRNL-terminated line of CSV input to be misread by the shell.

FossilOrigin-Name: b5617e4fdadc4cded93c985008e90982dd48bc3b
2013-08-28 13:33:40 +00:00
drh
6d57bbfe25 Label a certain branch as NEVER() only for non-STAT3/4 builds.
FossilOrigin-Name: b5ccf6e995ac2fe010f49d46d40b487ddbd28e5a
2013-08-28 11:43:49 +00:00
mistachkin
3741827ea1 Support database file names longer than 260 characters using the new 'win32-longpath' VFS variant.
FossilOrigin-Name: 37e85e444cde18f061049437980b965d4485f43c
2013-08-28 05:49:39 +00:00
mistachkin
b324bc79e9 Make names of private functions in the Win32 VFS consistent. Fix comment typo in Win32 mutex implementation.
FossilOrigin-Name: c3b82c5bf97cfb35544c5b1fbcdf7b9c4827d1cf
2013-08-28 02:37:29 +00:00
mistachkin
533fb6de5b Remove hard-coding of the directory separator in the Win32 VFS. Fixes to OSTRACE macros.
FossilOrigin-Name: fc98092f4bd42d64059024f09547904c1d70a517
2013-08-28 02:26:48 +00:00
mistachkin
f64188910d Fix several harmless compiler warnings. Fix a couple compiler issues with the shell.
FossilOrigin-Name: 8917e9f9a0802cbfb6f33e2ab1c2f98e4df5babd
2013-08-28 01:54:12 +00:00
drh
1435a9a126 Adjust ANALYZE for improved test coverage. Use the SQLITE_ENABLE_STAT3_OR_STAT4
macro (created in sqliteInt.h) to conditionally include code, instead of 
a boolean specifying both macros separately.

FossilOrigin-Name: 67a9a392edd62ef5a5a1ad3010b20a39b285793d
2013-08-27 23:15:44 +00:00
drh
9fecc546cb Reduce the amount of code run and memory used for ANALYZE in the common case
where neither STAT3 and STAT4 are enabled.

FossilOrigin-Name: 9d1424c91a21ed740aca53e437b8f7c1f0823c03
2013-08-27 20:16:48 +00:00
drh
59b08dd449 In the ANALYZE command implementation make statInit() a 2-value function
since the 3rd parameter was always the same constant.

FossilOrigin-Name: 959bb5acdc3b4e2b481e3c38f20867131bfc9dbc
2013-08-27 14:14:14 +00:00
mistachkin
4496a2329a Preparation for further Windows path name handling changes.
FossilOrigin-Name: ec99224b0c9cf1ccd64b3dc93252556d888e93a3
2013-08-26 23:18:57 +00:00
drh
2f53b90665 Merge the STAT4 capability into trunk.
FossilOrigin-Name: a32af0abe5fa6d570604fa3534e8230d5b6042fc
2013-08-26 23:18:06 +00:00
mistachkin
31706a2d94 Change MAX_PATH related defines to use character lengths where WCHARs are used.
FossilOrigin-Name: 0a497083e915520c0807cb6611264b1a35ff62b7
2013-08-26 20:45:50 +00:00
mistachkin
09b404419a Merge updates from trunk.
FossilOrigin-Name: 9d6860098f96efc7ea60e2d6116fb7d0e2685a55
2013-08-26 19:36:18 +00:00
dan
4dd5144366 Fix for builds with both SQLITE_OMIT_WAL and SQLITE_MAX_MMAP_SIZE=0 defined.
FossilOrigin-Name: edd5dbdc3239fc88799b822941603fcc828ecbb6
2013-08-26 14:30:25 +00:00
mistachkin
e49d98fb0a Several modifications to the use of the MAX_PATH macro on Windows to improve consistency.
FossilOrigin-Name: bda4c47df8e80b4cc9e8aac8fd74482869f96107
2013-08-24 23:55:01 +00:00
mistachkin
b5ca3cbcd3 Fix a couple compilation issues on Unix.
FossilOrigin-Name: 25b029d8f32440a94ef8af45153423f6702d7431
2013-08-24 01:12:03 +00:00
mistachkin
e98844f723 Unify the result of PRAGMA mmap_size when mmap support is disabled.
FossilOrigin-Name: 032c31593d6f569842830cac6222362be68b2084
2013-08-24 00:59:24 +00:00
dan
9f0656d8c5 Merge recent trunk changes.
FossilOrigin-Name: 6cc54de88bba00e07fac9de36caac216d94bf070
2013-08-23 17:54:46 +00:00
drh
feb56e0e17 Adjust #ifdefs to get SQLITE_OMIT_AUTOMATIC_INDEX and SQLITE_OMIT_PAGER_PRAGMAS
to build.

FossilOrigin-Name: ed310201628cf79c0f57674ae7478ee6738b1c6e
2013-08-23 17:33:46 +00:00
drh
32683532f0 Merge in minor bug fixes and performance tweaks from trunk leading up to
the version 3.8.0 release.

FossilOrigin-Name: 831492dca8bcfb1a1f83a8bb15de9cc94f29f07e
2013-08-22 15:07:08 +00:00
drh
cc04afdad0 Defer the creation of automatic indices until the index is actually used.
FossilOrigin-Name: 0775501acf152dcbf4dd039f4511f3d8c4330d85
2013-08-22 02:56:28 +00:00
drh
b00fc3b14e Simplify the btreeGetPage() routine so that it uses a single flag parameter
in place of two boolean parameters.

FossilOrigin-Name: 617e23ec283d3147fc3fd29c474ccedf4915cdc7
2013-08-21 23:42:32 +00:00
drh
9d1ab0794e Minor performance tweaks to the pager.
FossilOrigin-Name: 9ae1f9ce7ea6beaeddc3711080b3796e05acc4f8
2013-08-21 22:54:55 +00:00
drh
cf5ff12105 Refactor the sqlite3_randomness() implementation for improved performance.
FossilOrigin-Name: 4144dffb57b5ed791d7a6d2f26fab5e7dc77fbd1
2013-08-21 22:09:25 +00:00
drh
b49bc86a1a Simplification to the StrAccum object and the sqlite3StrAccumAppend()
method that also results in slightly better performance.

FossilOrigin-Name: 700dbbea8647e0fdaee6d0aba3d3dd8ebfbac04a
2013-08-21 21:12:10 +00:00
drh
e7ecdfabd2 Update sqlite3MemCompare() to try common cases first, for a modest speed
improvement.

FossilOrigin-Name: b25bac79191975149d88fe34618c74354de62c5e
2013-08-21 19:13:53 +00:00
dan
016f7811f2 If a virtual table xSync() returns an error message, copy it into a buffer allocated by sqlite3DbMalloc() before transfering it to Vdbe.zErrMsg.
FossilOrigin-Name: 854ba3049005adf033e07e6740a36e63f2a56758
2013-08-21 17:35:48 +00:00
drh
13c77bf86b Performance enhancement in btreeParseCellPtr().
FossilOrigin-Name: a17190a2296e8cd5e59524ff5914fc5ea3560697
2013-08-21 15:52:22 +00:00
dan
36e78309de Candidate fix for [d666d600a6].
FossilOrigin-Name: 781592f32c8e1dcd59954c17211cf61349d1c0b1
2013-08-21 12:04:32 +00:00
dan
e934e633a5 Fix an invalid assert() in where.c. Also a crash that can occur in the EXPLAIN QUERY PLAN code under obscure circumstances.
FossilOrigin-Name: ef192abb82c2fc31135f875d7a19908d67c076b0
2013-08-20 17:14:57 +00:00
drh
d0aa2f3afd Ignore IS NOT NULL and NOT NULL constraints on NOT NULL columns.
FossilOrigin-Name: e476408e3c5ba5f3ba5e98ff264167c163d72e3f
2013-08-20 17:00:55 +00:00
drh
90bf3d7422 Merge performance enhancements and compiler warning fixes from trunk.
FossilOrigin-Name: 3e4033285deb417bd72c008917729dbf3bf4e90d
2013-08-20 13:02:16 +00:00
mistachkin
98ab33a82f Add test cases for tointeger() and toreal() functions. Fixes for several tests.
FossilOrigin-Name: 5e1e9fd5e4f189836442baa42244be00de13ff0f
2013-08-20 09:26:38 +00:00
drh
9b47ee3f09 Performance optimizations in the VDBE and especially to the OP_Next and
related opcodes and in the sqlite3BtreeNext() and sqlite3BtreePrevious()
routines.  This is a cherrypick of [6f99b54aedeb], [d2efea1682a7], and
[d78c5d89de4b].

FossilOrigin-Name: 7f72fc4f47445a2c01910b268335873de9f75059
2013-08-20 03:13:51 +00:00
drh
db1c12b79f Fix compiler warnings and boundary cases for the tointeger() and toreal()
functions.

FossilOrigin-Name: 4438b9865826446721b7aa09295fe335bf2fafb7
2013-08-20 02:07:50 +00:00