]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge latest fixes and enhancements from trunk into apple-osx.
authordrh <drh@noemail.net>
Tue, 16 Dec 2014 00:29:06 +0000 (00:29 +0000)
committerdrh <drh@noemail.net>
Tue, 16 Dec 2014 00:29:06 +0000 (00:29 +0000)
FossilOrigin-Name: 2c1d8ddab23b36dbdd30ff82401925f97ffc5d76

14 files changed:
1  2 
main.mk
manifest
manifest.uuid
src/btree.c
src/main.c
src/os_win.c
src/pragma.c
src/prepare.c
src/sqlite.h.in
src/sqliteInt.h
src/test1.c
src/vdbeapi.c
test/lock5.test
test/pragma.test

diff --cc main.mk
Simple merge
diff --cc manifest
index 1b2dbb0d781a9a238e23ab3f5beb41f81823d070,012153429fa54ecc25b48064c334b52e56072d59..fc060595c1e9b2ee85a3f9c65688492a25d8bb59
+++ b/manifest
@@@ -1,7 -1,7 +1,7 @@@
- C Increase\sthe\sdefault\sPMA\ssize\sfrom\s10\sto\s250\spages\sand\sprovide\sthe\nSQLITE_SORTER_PMASZ\scompile-time\soption\sto\schange\sthis\sdefault.\s\sAdd\nneeded\smutex\scall\swhen\sclearing\sthe\sKeyInfo\scache\sin\sshared-cache\smode.
- D 2014-12-09T15:01:07.090
 -C Enhanced\s"stress2"\stesting\sin\sthe\sthreadtest3.c\stest\sprogram.
 -D 2014-12-16T00:20:07.236
++C Merge\slatest\sfixes\sand\senhancements\sfrom\strunk\sinto\sapple-osx.
++D 2014-12-16T00:29:06.447
  F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 -F Makefile.in 6c4f961fa91d0b4fa121946a19f9e5eac2f2f809
 +F Makefile.in 4551c03de49c2a4d400016f9007df2528d79e3cd
  F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
  F Makefile.msc 10720782f88648bf2b5dcedf4c1524b067d43e47
  F Makefile.vxworks 034289efa9d591b04b1a73598623119c306cbba0
@@@ -155,7 -152,7 +155,7 @@@ F ext/userauth/userauth.c 5fa3bdb492f48
  F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
  F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
  F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60
- F main.mk 38606b15b2fcbf2ed6222decebda345270d75dc9
 -F main.mk 9f8c54fe62b60e0a24a2e65cfc8d2add063dda07
++F main.mk 29f7eb2f663c0bc93b36afe30a05ea0b19078eaa
  F mkopcodec.awk c2ff431854d702cdd2d779c9c0d1f58fa16fa4ea
  F mkopcodeh.awk c6b3fa301db6ef7ac916b14c60868aeaec1337b5
  F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83
@@@ -176,10 -173,10 +176,10 @@@ F src/auth.c b56c78ebe40a2110fd361379f7
  F src/backup.c 7ddee9c7d505e07e959a575b18498f17c71e53ea
  F src/bitvec.c 19a4ba637bd85f8f63fc8c9bae5ade9fb05ec1cb
  F src/btmutex.c 49ca66250c7dfa844a4d4cb8272b87420d27d3a5
- F src/btree.c e8325955bd7f6e9e55b695b8e56f541b7637e831
 -F src/btree.c 92f745ccd18099973beb28e25fce80148545429e
++F src/btree.c ecb04166882bb1a968cc6c8985bfe22c7bad3c99
  F src/btree.h e31a3a3ebdedb1caf9bda3ad5dbab3db9b780f6e
  F src/btreeInt.h 3363e18fd76f69a27a870b25221b2345b3fd4d21
- F src/build.c 67bb05b1077e0cdaccb2e36bfcbe7a5df9ed31e8
+ F src/build.c 162d84e4833b03f9d07192ef06057b0226f6e543
  F src/callback.c 7b44ce59674338ad48b0e84e7b72f935ea4f68b0
  F src/complete.c c4ba6e0626bb94bc77a0861735f3382fcf7cc818
  F src/ctime.c df19848891c8a553c80e6f5a035e768280952d1a
@@@ -195,10 -192,10 +195,10 @@@ F src/hash.h c8f3c31722cf3277d037139097
  F src/hwtime.h d32741c8f4df852c7d959236615444e2b1063b08
  F src/insert.c 5b9243a33726008cc4132897d2be371db12a13be
  F src/journal.c b4124532212b6952f42eb2c12fa3c25701d8ba8d
 -F src/legacy.c ba1863ea58c4c840335a84ec276fc2b25e22bc4e
 +F src/legacy.c 9c17d86e06522c261307f0eb6bcb1254c8b04a59
  F src/lempar.c 7274c97d24bb46631e504332ccd3bd1b37841770
- F src/loadext.c de741e66e5ddc1598d904d7289239696e40ed994
- F src/main.c 02f8f92211f8a277b60a42bfcee3765311c030f1
+ F src/loadext.c 86bd4e2fccd520b748cba52492ab60c4a770f660
 -F src/main.c 48e0410a661c629471ca9061d4153245cc9f853b
++F src/main.c 8e1b6b45e15c22f087417c20c2727ff12cbae1e2
  F src/malloc.c 740db54387204c9a2eb67c6d98e68b08e9ef4eab
  F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645
  F src/mem1.c faf615aafd8be74a71494dfa027c113ea5c6615f
@@@ -216,33 -213,32 +216,33 @@@ F src/os.c 5822c2b843a77219bba1e28887cd
  F src/os.h 3e57a24e2794a94d3cf2342c6d9a884888cd96bf
  F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04
  F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa
 -F src/os_unix.c fb587121840f690101336879adfa6d0b2cd0e8c7
 -F src/os_win.c ecb04a0dad2fa6fa659931a9d8f0f3aca33f908a
 +F src/os_unix.c 2af3813fd2df6f5d016d1dfef541d2c9e98fd600
- F src/os_win.c 1a38ad1288b4b263c85d124093b8a6f59702925b
++F src/os_win.c 76068f9daea55e09e242fe88474d84a44cb2e544
  F src/os_win.h 09e751b20bbc107ffbd46e13555dc73576d88e21
 -F src/pager.c 7a5c5bc0e29b9b16834f5558a9d5d22bbae59a08
 -F src/pager.h d1eee3c3f741be247ce6d82752a178515fc8578b
 +F src/pager.c 0bfd3ceb7254cca749866f852412984f81c2389d
 +F src/pager.h 78ba46ce1f98b9a9791f4b39e52aedd6ed988472
  F src/parse.y 5dfead8aed90cb0c7c1115898ee2266804daff45
  F src/pcache.c ace1b67632deeaa84859b4c16c27711dfb7db3d4
  F src/pcache.h b44658c9c932d203510279439d891a2a83e12ba8
  F src/pcache1.c facbdd3ecc09c8f750089d941305694301328e98
- F src/pragma.c 0de5c12a996108c3ffd4ce0a6be7a1d2e5ae5450
- F src/prepare.c 307a3ddc2f087df85114c5e4bfcc4a55c9970cde
 -F src/pragma.c c93be505649183b2d80082c2eef1a56879dabfe6
 -F src/prepare.c 173a5a499138451b2561614ecb87d78f9f4644b9
++F src/pragma.c 8ed75925574e21827668228374c6152cbdb77ed2
++F src/prepare.c 01740b0d6b8f5c6da421a86c300464ff5b53e167
  F src/printf.c 9e75a6a0b55bf61cfff7d7e19d89834a1b938236
  F src/random.c ba2679f80ec82c4190062d756f22d0c358180696
  F src/resolve.c f6c46d3434439ab2084618d603e6d6dbeb0d6ada
  F src/rowset.c eccf6af6d620aaa4579bd3b72c1b6395d9e9fa1e
 -F src/select.c f377fb8a5c73c10678ea74f3400f7913943e3d75
 +F src/select.c 4f48f3b05e5c8aa272a13b79645a0b308caef9dc
  F src/shell.c 45d9c9bd7cde07845af957f2d849933b990773cf
- F src/sqlite.h.in 58d18cf47b056ba56ed2c566c783026bc742ea2c
 -F src/sqlite.h.in 116dc731361549ee3fc79dcebace11b57d24dcfd
++F src/sqlite.h.in debf15893171b7ae385b8c2adaf9341271c2b12e
  F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad
 +F src/sqlite3_private.h a81a9c5f97c095cc3e86914a05f8fabe0011f4a1
  F src/sqlite3ext.h 17d487c3c91b0b8c584a32fbeb393f6f795eea7d
- F src/sqliteInt.h be4da0e05d15aa60ce50994c51856e31e4ee405c
 -F src/sqliteInt.h d36da9a07130cae13cbfee0986bf20028cb01465
++F src/sqliteInt.h 5d511f0bd57361999f1fbe7672ed75f3bcc1c2c4
  F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d
  F src/status.c 81712116e826b0089bb221b018929536b2b5406f
  F src/table.c f142bba7903e93ca8d113a5b8877a108ad1a27dc
- F src/tclsqlite.c 0a874655dd39a9875e39c5d3c464db662171d228
- F src/test1.c 6ee15f0a993b33514879560d18ba42f0bd4410a4
+ F src/tclsqlite.c c6a21c64da1490e14d53cdc2062d1e2e57942622
 -F src/test1.c 56e33bf6b1827c6ca7520c189131ddd778fb2267
++F src/test1.c d1d7f6fb79bfe8c1e0e2e419f7963090f0082bd7
  F src/test2.c 98049e51a17dc62606a99a9eb95ee477f9996712
  F src/test3.c 1c0e5d6f080b8e33c1ce8b3078e7013fdbcd560c
  F src/test4.c 9b32d22f5f150abe23c1830e2057c4037c45b3df
@@@ -295,22 -291,22 +295,22 @@@ F src/update.c 3c4ecc282accf12d39edb8d5
  F src/utf.c fc6b889ba0779b7722634cdeaa25f1930d93820c
  F src/util.c 3b627daa45c7308c1e36e3dbaa3f9ce7e5c7fa73
  F src/vacuum.c 9b30ec729337dd012ed88d4c292922c8ef9cf00c
 -F src/vdbe.c 1a9e671c9cfc259e4d2affc71f7df4a4c00a842c
 +F src/vdbe.c 9f43973c08d115f5fbe46fe30663e536018d7b43
  F src/vdbe.h 6fc69d9c5e146302c56e163cb4b31d1ee64a18c3
  F src/vdbeInt.h 9bb69ff2447c34b6ccc58b34ec35b615f86ead78
- F src/vdbeapi.c 55cd14500f305264983952b816d3d3ce91501b3a
 -F src/vdbeapi.c 4bc511a46b9839392ae0e90844a71dc96d9dbd71
 -F src/vdbeaux.c 6f7f39c3fcf0f5923758df8561bb5d843908a553
++F src/vdbeapi.c ad6b1bde19d27ec5b278af4a8182ff60fdae5bc3
 +F src/vdbeaux.c 6f91a25abf07dbbda79c155e5ae8860816dcef13
  F src/vdbeblob.c 4af4bfb71f6df7778397b4a0ebc1879793276778
  F src/vdbemem.c 31d8eabb0cd78bfeab4e5124c7363c3e9e54db9f
- F src/vdbesort.c db015e20a77b25eca4d1e125815f4998a3ca1354
+ F src/vdbesort.c c150803a3e98fbc68bd07772cbbd4328a0a7212d
  F src/vdbetrace.c 7e4222955e07dd707a2f360c0eb73452be1cb010
  F src/vtab.c c08ec66f45919eaa726bf88aa53eb08379d607f9
 -F src/wal.c 847692349eb6e1fb8543dbc97e69ddbfa4cc7ea7
 -F src/wal.h df01efe09c5cb8c8e391ff1715cca294f89668a4
 +F src/wal.c 75f2d8b18c846910406da9700e7dd4fc67b76030
 +F src/wal.h 6b3a67ecd7172dcc9f18fc9cd4d76dc4c2166e68
  F src/walker.c c253b95b4ee44b21c406e2a1052636c31ea27804
- F src/where.c e914fdb9159bb36af4a673193bbda08aaf9e5a73
+ F src/where.c d46de821bc604a4fd36fa3928c086950e91aafb1
  F src/whereInt.h d3633e9b592103241b74b0ec76185f3e5b8b62e0
 -F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
 +F test/8_3_names.test 05034aadccd2253ffe6cbefb06662b8aa4600f77
  F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2
  F test/aggnested.test b35b4cd69fc913f90d39a575e171e1116c3a4bb7
  F test/alias.test 4529fbc152f190268a15f9384a5651bbbabc9d87
@@@ -695,13 -693,12 +697,13 @@@ F test/lock.test 87af515b0c4cf928576d0f
  F test/lock2.test 5242d8ac4e2d59c403aebff606af449b455aceff
  F test/lock3.test f271375930711ae044080f4fe6d6eda930870d00
  F test/lock4.test e175ae13865bc87680607563bafba21f31a26f12
- F test/lock5.test 84971f57f31f44144d2cc2fadaf3f21c927ce3c2
 -F test/lock5.test c6c5e0ebcb21c61a572870cc86c0cb9f14cede38
 -F test/lock6.test ad5b387a3a8096afd3c68a55b9535056431b0cf5
++F test/lock5.test 1f1e0fd1670deef8c0a76e8f895bd5e124133ca4
 +F test/lock6.test 83434ae8ca1d1c5e2eaf74d4e44aa24ab62b291c
  F test/lock7.test 49f1eaff1cdc491cc5dee3669f3c671d9f172431
  F test/lock_common.tcl 0c270b121d40959fa2f3add382200c27045b3d95
 +F test/lock_proxy.test 95be9c32d79be25cf643b4e41a0aa0e53aa21621
  F test/lookaside.test 93f07bac140c5bb1d49f3892d2684decafdc7af2
 -F test/main.test 39c4bb8a157f57298ed1659d6df89d9f35aaf2c8
 +F test/main.test 3991157c720c2b2b9ec27254d940f06ab81aab84
  F test/make-where7.tcl 05c16b5d4f5d6512881dfec560cb793915932ef9
  F test/malloc.test 96939d2d1a6f39667bbebe5bc27c6525f2ab614e
  F test/malloc3.test e3b32c724b5a124b57cb0ed177f675249ad0c66a
@@@ -785,7 -782,7 +787,7 @@@ F test/pcache.test 488061b5dd685df2234d
  F test/pcache2.test a83efe2dec0d392f814bfc998def1d1833942025
  F test/percentile.test b98fc868d71eb5619d42a1702e9ab91718cbed54
  F test/permutations.test 4e12d43f4639ea8a0e366d9c64e0009afe2eb544
- F test/pragma.test 1666a0a9fb910b7f45d0c3f413d54c1d997be3cc
 -F test/pragma.test aa16dedfe01c02c8895169012f7dfde9c163f0d5
++F test/pragma.test 7d7823c30925e6c18da6bf7bb4436b762188527f
  F test/pragma2.test aea7b3d82c76034a2df2b38a13745172ddc0bc13
  F test/printf.test ec9870c4dce8686a37818e0bf1aba6e6a1863552
  F test/printf2.test b4acd4bf8734243257f01ddefa17c4fb090acc8a
@@@ -1231,7 -1232,8 +1237,7 @@@ F tool/vdbe_profile.tcl 67746953071a9f8
  F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
  F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
  F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
- P 8a9b43f930de9c789b230909233eee64ad1db93d b05340fe3cd5f1676a55023228dc8d1a92de5936
- R 459846a9088bf83459128c7ec2ff80a6
 -P 5b1b697040116048e464b3ebab8395fe088e389a 5648af96d8e2521c5b0cca19f1358374d032394d
 -R 64bec50dd05bb00af986c569d5edb044
 -T +closed 5648af96d8e2521c5b0cca19f1358374d032394d
++P 6e2da589ad562e0e412eb6572a8681225259b46e ae43539e62e76676a3daf561b629a1b9b4e2d2c9
++R 062b153fdb4b740458fab0b4a751757b
  U drh
- Z 5aa3333e205b6c4facb3ed20507b268f
 -Z 1075019e3631a6f364d3a72648c7dd6d
++Z d8403ec8372c85631fe585acadb7f151
diff --cc manifest.uuid
index b8071350288d7169bc928783eb5a9266e324eda2,209ef7a57a651b3648ddcedf4d309ea4d5c5fd1b..70ebb18565f037b89f838b2981e4951a943e9b85
@@@ -1,1 -1,1 +1,1 @@@
- 6e2da589ad562e0e412eb6572a8681225259b46e
 -ae43539e62e76676a3daf561b629a1b9b4e2d2c9
++2c1d8ddab23b36dbdd30ff82401925f97ffc5d76
diff --cc src/btree.c
Simple merge
diff --cc src/main.c
Simple merge
diff --cc src/os_win.c
Simple merge
diff --cc src/pragma.c
Simple merge
diff --cc src/prepare.c
Simple merge
diff --cc src/sqlite.h.in
Simple merge
diff --cc src/sqliteInt.h
Simple merge
diff --cc src/test1.c
Simple merge
diff --cc src/vdbeapi.c
Simple merge
diff --cc test/lock5.test
index 202ee9038bca9e3b94e3ef145034940ec87d9874,99214afb19b487c9c1fe3086d7f38d02c4f6cc8a..7e20f455d3450f19fb8edc01c0a33bbfc78eccb2
@@@ -106,77 -106,78 +106,77 @@@ if {[catch {sqlite3 db test.db -vfs uni
    return
  }
  
 -do_test lock5-flock.1 {
 -  sqlite3 db test.db -vfs unix-flock
 -  execsql {
 -    CREATE TABLE t1(a, b);
 -    BEGIN;
 -    INSERT INTO t1 VALUES(1, 2);
 -  }
 -} {}
 -
 -# Make sure we are not accidentally using the dotfile locking scheme.
 -do_test lock5-flock.2 {
 -  file exists test.db.lock
 -} {0}
 -
 -do_test lock5-flock.3 {
 -  catch { sqlite3 db2 test.db -vfs unix-flock }
 -  catchsql { SELECT * FROM t1 } db2
 -} {1 {database is locked}}
 -
 -do_test lock5-flock.4 {
 -  execsql COMMIT
 -  catchsql { SELECT * FROM t1 } db2
 -} {0 {1 2}}
 -
 -do_test lock5-flock.5 {
 -  execsql BEGIN
 -  catchsql { SELECT * FROM t1 } db2
 -} {0 {1 2}}
 -
 -do_test lock5-flock.6 {
 -  execsql {SELECT * FROM t1}
 -  catchsql { SELECT * FROM t1 } db2
 -} {1 {database is locked}}
 -
 -do_test lock5-flock.7 {
 -  db close
 -  catchsql { SELECT * FROM t1 } db2
 -} {0 {1 2}}
 -
 -do_test lock5-flock.8 {
 -  db2 close
 -} {}
 -
 -#####################################################################
 -
 -do_test lock5-none.1 {
 -  sqlite3 db test.db -vfs unix-none
 -  sqlite3 db2 test.db -vfs unix-none
 -  execsql { PRAGMA mmap_size = 0 } db2
 -  execsql {
 -    BEGIN;
 -    INSERT INTO t1 VALUES(3, 4);
 -  }
 -} {}
 -do_test lock5-none.2 {
 -  execsql { SELECT * FROM t1 }
 -} {1 2 3 4}
 -do_test lock5-none.3 {
 -  execsql { SELECT * FROM t1; } db2
 -} {1 2}
 -do_test lock5-none.4 {
 -  execsql { 
 -    BEGIN;
 -    SELECT * FROM t1;
 -  } db2
 -} {1 2}
 -do_test lock5-none.5 {
 -  execsql COMMIT
 -  execsql {SELECT * FROM t1} db2
 -} {1 2}
 -
 -ifcapable memorymanage {
 +# Only run the flock tests on a local file system
 +if { [path_is_local "."] } {
 +
 +  do_test lock5-flock.1 {
 +    sqlite3 db test.db -vfs unix-flock
 +    execsql {
 +      CREATE TABLE t1(a, b);
 +      BEGIN;
 +      INSERT INTO t1 VALUES(1, 2);
 +    }
 +  } {}
 +
 +  # Make sure we are not accidentally using the dotfile locking scheme.
 +  do_test lock5-flock.2 {
 +    file exists test.db.lock
 +  } {0}
 +
 +  do_test lock5-flock.3 {
 +    catch { sqlite3 db2 test.db -vfs unix-flock }
 +    catchsql { SELECT * FROM t1 } db2
 +  } {1 {database is locked}}
 +
 +  do_test lock5-flock.4 {
 +    execsql COMMIT
 +    catchsql { SELECT * FROM t1 } db2
 +  } {0 {1 2}}
 +
 +  do_test lock5-flock.5 {
 +    execsql BEGIN
 +    catchsql { SELECT * FROM t1 } db2
 +  } {0 {1 2}}
 +
 +  do_test lock5-flock.6 {
 +    execsql {SELECT * FROM t1}
 +    catchsql { SELECT * FROM t1 } db2
 +  } {1 {database is locked}}
 +
 +  do_test lock5-flock.7 {
 +    db close
 +    catchsql { SELECT * FROM t1 } db2
 +  } {0 {1 2}}
 +
 +  do_test lock5-flock.8 {
 +    db2 close
 +  } {}
 +
 +  #####################################################################
 +
 +  do_test lock5-none.1 {
 +    sqlite3 db test.db -vfs unix-none
 +    sqlite3 db2 test.db -vfs unix-none
 +    execsql {
 +      BEGIN;
 +      INSERT INTO t1 VALUES(3, 4);
 +    }
 +  } {}
 +  do_test lock5-none.2 {
 +    execsql { SELECT * FROM t1 }
 +  } {1 2 3 4}
 +  do_test lock5-flock.3 {
 +    execsql { SELECT * FROM t1 } db2
 +  } {1 2}
 +  do_test lock5-none.4 {
 +    execsql { 
 +      BEGIN;
 +      SELECT * FROM t1;
 +    } db2
 +  } {1 2}
 +  do_test lock5-none.5 {
 +    execsql COMMIT
-   }
++  } {}
    do_test lock5-none.6 {
      sqlite3_release_memory 1000000
      execsql {SELECT * FROM t1} db2
Simple merge