drh
a9c19f935c
Back out the new device capability. The determination of whether or not a
...
file has moved is now done strictly using a file-control.
FossilOrigin-Name: 9c59f5af7ac4908583fab85d37241f200c40f02d
2013-12-07 16:45:05 +00:00
drh
b959a017b6
Actually look at i-node numbers to determine whether or not the database
...
file has moved.
FossilOrigin-Name: 2b1884dc14f9a04a04eebb3245fbe0daaff399eb
2013-12-07 12:29:22 +00:00
mistachkin
091a81b91d
Add the SQLITE_READONLY_DBMOVED error code to the sqlite3ErrName() function.
...
FossilOrigin-Name: 7789f801d720db5394117e764675cd4bbe6b2da1
2013-12-06 19:58:32 +00:00
drh
3fee8a63c8
Only error out on a database file move when attempting to start a write
...
transaction. Assume read transactions are still safe. And make the error
SQLITE_READONLY_DBMOVED instead of SQLITE_IOERR_NODB.
FossilOrigin-Name: 28348f2ada98c616241a51aecb70b63e87e6ddbb
2013-12-06 17:23:38 +00:00
drh
1b1f30bb5e
Add code to detect if the database file is moved or deleted out from under
...
SQLite and return an SQLITE_IOERR_NODB.
FossilOrigin-Name: 8759a8e4d83b163e315eff316cf163f6ea42f2bb
2013-12-06 15:37:35 +00:00
drh
224f66fba3
Fix harmless compiler warnings and improve the MSVC makefile.
...
FossilOrigin-Name: c632567063d81c4be404ce58cbac0eff7412f565
2013-12-05 17:12:47 +00:00
drh
47676fedf6
Fix two potential (and apparently harmless) shift overflows discovered by
...
the -fcatch-undefined-behavior option of clang.
FossilOrigin-Name: e19eead8c9977ed4f00eac54c5bc7e90db78caa8
2013-12-05 16:41:55 +00:00
mistachkin
3f9cd2ae75
Fix harmless compiler warnings.
...
FossilOrigin-Name: a12d214ecccc5d3372dbcedc88705b0092363971
2013-12-03 22:33:35 +00:00
mistachkin
1fa85a15df
Add memory subsystem related defines to the compile-time options list.
...
FossilOrigin-Name: 52a44146dd7c5a7662545042045e23deab302c96
2013-12-03 22:32:48 +00:00
drh
7f59475fda
Remove a branch in STAT4 logic that is no longer reachable after
...
the previous change.
FossilOrigin-Name: eca7d3f1612c7a009a9e4ef89f76f9b7e275d1e6
2013-12-03 19:49:55 +00:00
drh
7190e07fc0
Fix a possible (and probably harmless) uninitialized variable in STAT3/4.
...
FossilOrigin-Name: 33ad4f91477907b7b3e5808c7ba11aacc9a83ba6
2013-12-03 19:16:06 +00:00
dan
b5f68b0c8c
Fix an alignment problem in the stat3/stat4 code affecting 32-bit platforms.
...
FossilOrigin-Name: 14f9bc79014e5762b88b9f0b98f4d47a8092d127
2013-12-03 18:26:56 +00:00
drh
9a01c16df8
Remove an unnecessary branch from the UPDATE logic - one that was also
...
unreachable except following an OOM on x64.
FossilOrigin-Name: 72f972771457b8c8d9f859238d6a72b43f41d2c3
2013-12-03 10:14:28 +00:00
dan
89bc021850
Add a "database_may_be_corrupt" directive to test file fuzz3.test. Reformat an assert() statement in vdbeaux.c to make its intent clearer.
...
FossilOrigin-Name: 9d8a0e132163f7adeaabbf6baba119e159addd41
2013-12-03 09:49:52 +00:00
drh
d5e4547084
Change some unreachable test conditions to NEVER().
...
FossilOrigin-Name: 7d99858bec699dface548c77649dfc50e7fb50d8
2013-12-03 02:52:11 +00:00
drh
47b927d2c3
Fix a harmless compiler warning on MacOS.
...
FossilOrigin-Name: 74328de1d720fb35a97b476034406ca17d35ff5f
2013-12-03 00:11:40 +00:00
drh
a256c1a4b3
Fix typos in the header comment on the sqlite3Atoi64() routine.
...
FossilOrigin-Name: c85e0c546ea6c6be46deea5c7a716b5fb553c7b4
2013-12-01 01:18:29 +00:00
drh
094b7587fc
Detect a corrupt UnpackedRecord and return SQLITE_CORRUPT prior to calling
...
sqlite3BtreeMovetoUnpacked().
FossilOrigin-Name: 55ec474db8935ef36fae30da5d11f5701c60c088
2013-11-30 12:49:28 +00:00
drh
b202366509
Change the name of the CORRUPTIBLE macro to CORRUPT_DB.
...
FossilOrigin-Name: f865be10e85a4063394a21827db2d854fc25960c
2013-11-29 15:39:36 +00:00
drh
09fe614372
Add a new sqlite3_test_control() that indicates that database files are
...
always well-formed. Use this during testing to enable assert() statements
that prove conditions that are always true for well-formed databases.
FossilOrigin-Name: 15e4f63d1f3cbcd0aa789fd3e460cd6e4d3338f9
2013-11-29 15:06:27 +00:00
dan
0d4a0cdf18
Remove an assert() condition that may not be true if the database file is corrupt. Update a test case in corruptC.test.
...
FossilOrigin-Name: 0bcf75516f59e49536f9e5c5cd542058ab61e2fc
2013-11-28 14:14:31 +00:00
drh
2c77be054a
Remove unnecessary local variables from sqlite3VdbeExec() in order to
...
reduce stack-space requirements of that routine.
FossilOrigin-Name: 81891288d9f281cf2ceb4cd701c0c3231b1bab19
2013-11-27 21:07:03 +00:00
drh
9338642ca6
Update documentation of sqlite3_column() for clarity. Update evidence marks
...
on test cases.
FossilOrigin-Name: ec2d47a1db2349d5c9b4fe465506e0e347f77921
2013-11-27 19:17:49 +00:00
drh
ac68ced162
Make sure the colWidth array is correctly initialized in the ".explain"
...
command of the shell.
FossilOrigin-Name: ceebcdcaf1acf409b77b4cc2903b4570001f098a
2013-11-27 13:24:18 +00:00
drh
c964c39fb0
Lower the threshold for using skip-scan from 50 to 18, based on experiments
...
that show that 18 is the approximate break-even point for a variety of
schemas.
FossilOrigin-Name: 83c0bb9913838d18ba355033afde6e38b4690842
2013-11-27 04:22:27 +00:00
mistachkin
0f7e08e0e2
Avoid using the GetVersionEx functions if they are considered deprecated.
...
FossilOrigin-Name: 0ea9e4722be10221c99cce5bc48d13c7b34e739f
2013-11-27 03:01:34 +00:00
drh
bbbb0e8053
Make sure the update hook is not invoked for WITHOUT ROWID tables, as
...
the documentation specifies. This bug was found while adding requirements
marks, so a few extraneous requirements marks are included in this
check-in.
FossilOrigin-Name: 0978bac6b8aee229d7a0d148546f50d380d06a06
2013-11-26 23:27:07 +00:00
dan
aa1776f093
Reduce the amount of code used to implement OP_SeekGe and similar.
...
FossilOrigin-Name: 8b12a15a2a8139d75f56a099f3f6af844da3ac9c
2013-11-26 18:22:59 +00:00
drh
0425f18959
Change tclsqlite3.c so that it never invokes ctype macros with signed
...
character arguments.
FossilOrigin-Name: c07caabf2396c84b2ccb0e9f98ae6279ce41c59d
2013-11-26 16:48:04 +00:00
drh
de1a8b8c69
Change the REAL-to-INTEGER casting behavior so that if the REAL value
...
is greater than 9223372036854775807.0 then it is cast to the latest
possible integer, 9223372036854775807. This is sensible and the way
most platforms work in hardware. The former behavior was that oversize
REALs would be cast to the smallest possible integer, -9223372036854775808,
which is the way Intel hardware works.
FossilOrigin-Name: 6f53fc7106658d44edf63068f9a8522fa5a7688b
2013-11-26 15:45:02 +00:00
mistachkin
dad19c3204
Better support for UTF-8 paths on Cygwin.
...
FossilOrigin-Name: 9954327c0febc0ece46f62e05976330a1b82b48f
2013-11-26 00:28:50 +00:00
mistachkin
202ca3e06b
Add SQLITE_CONFIG_WIN32_HEAPSIZE option to configure the maximum isolated heap size on Windows.
...
FossilOrigin-Name: 914e6c9d88828b66e8385c4a264702471faa34cf
2013-11-25 23:42:21 +00:00
drh
0b9dadacd8
Change a while-loop into a do-loop in sqlite3VdbeRecordCompare() and add
...
an assert() to verify that the do-loop really is appropriate. This gives
about a 10% performance boost in that routine, or a 0.9% boost overall.
FossilOrigin-Name: 011a6be439eb884c944a3318bf631bed3135f8ec
2013-11-25 22:24:36 +00:00
mistachkin
af8641bd45
Clarify docs for the SQLITE_CONFIG_WIN32_HEAPSIZE option.
...
FossilOrigin-Name: 51e876074af4e34ba01ed122e3bcc042243c9e88
2013-11-25 21:49:04 +00:00
drh
d16546da78
Remove a NEVER() from a branch that is now reachable during OOM faults.
...
FossilOrigin-Name: 18bdcb05c26860643f53a6b9e85f84109a3ebe5a
2013-11-25 21:41:24 +00:00
drh
9b2fc61d25
Return an SQLITE_CORRUPT error if the content size field of a table record
...
extends off the end of a page.
FossilOrigin-Name: b48c4e402125fb8d2208d358f6e9bbc351f3a49d
2013-11-25 20:14:13 +00:00
drh
ebf10b1fb4
Uses shifts rather than division for arithmetic on the cell indices, since
...
those indices are always non-negative.
FossilOrigin-Name: 5bf2a3feeb2c83671bf3edeb20a549239e6873bf
2013-11-25 17:38:26 +00:00
drh
17566ee243
Optimize the skipping of the payload size field when doing a binary search
...
for a rowid.
FossilOrigin-Name: 55e5bfa231dd52a7cf9ec982967da4963867b9e5
2013-11-25 16:52:59 +00:00
drh
d2022b0118
Arrange for sqlite3BtreeMovetoUnpacked() to always leave the cursor cell
...
parse cache invalidated. This fixes issues with previous check-ins on this
branch and also runs faster.
FossilOrigin-Name: a74675607fe041e37a58a3ec287131de0e5090c3
2013-11-25 16:23:52 +00:00
drh
bb933ef6e7
More optimizations to sqlite3BtreeMovetoUnpacked(). But there are failures
...
in TH3. Committing this intermediate state to facilitate bisecting.
FossilOrigin-Name: f80497be446f84d2000e454e32d717887a7d0cee
2013-11-25 15:01:38 +00:00
drh
d793f44723
More improvements to sqlite3BtreeMovetoUnpacked() performance.
...
FossilOrigin-Name: 88680698231b7141401f7166e3aff8dbc6008030
2013-11-25 14:10:15 +00:00
drh
ec3e6b10f4
Performance improvements in sqlite3BtreeMovetoUnpacked().
...
FossilOrigin-Name: d0fb7acea7cbfe6f2d84782a28bb51675a06576f
2013-11-25 02:38:55 +00:00
mistachkin
5bbb7198d1
Better support for UTF-8 paths on Cygwin.
...
FossilOrigin-Name: 484162b6e5a8ad9385fe2eb2a5254d13d7b0bc36
2013-11-24 23:18:21 +00:00
drh
0c2df17691
The MEMSYS5 algorithm does not have to return the block with the lowest
...
address. Any block of the appropriate size will do. Use the first block
found on the freelist for the appropriate size for a performance improvement.
FossilOrigin-Name: 12e612e8e7c4a6f83acf0daf5608151fb5ec1575
2013-11-24 00:46:00 +00:00
drh
9948e95674
A much simpler fix is to simply change MEMSYS5 so that it takes any free
...
block of the appropriate size (the first on the list of free blocks) rather
than searching for the one with the smallest address. This is also faster
than using the min-heap algorithm. Need to research to verify that the
allocator still satisfies the Robson proof, however.
FossilOrigin-Name: 8191b512122c13d7fa61d8e5487652f13ec172f7
2013-11-23 22:45:12 +00:00
mistachkin
ac1f10458b
Add experimental sqlite3_config option to control the native Win32 heap size.
...
FossilOrigin-Name: f09f11e94b5a7c2e51d99c3700d2acd2f3903de9
2013-11-23 00:27:29 +00:00
mistachkin
20b859530b
Fix harmless compiler warning.
...
FossilOrigin-Name: f336c18fb72ab90e93640b12ac540d41accc7658
2013-11-22 21:32:44 +00:00
drh
0a30592c1e
Fix a harmless clang warning in the command-line shell.
...
FossilOrigin-Name: 3d47a556f0074e39b880186fb7661b1b8955f742
2013-11-21 23:37:02 +00:00
drh
501932ca68
Changes some offset and amount parameters from "int" to "u32" to avoid
...
harmless signed/unsigned comparison warnings.
FossilOrigin-Name: 4e8c5d0795cb7c603182bfa70f3855d654f0997e
2013-11-21 21:59:53 +00:00
drh
d673cddad6
Do not reuse factored constants that might have had their encodings changed.
...
FossilOrigin-Name: 487f20366ce77f0c90865d10d5aaedd95af98694
2013-11-21 21:23:31 +00:00