From: drh Date: Thu, 5 Jun 2014 12:53:41 +0000 (+0000) Subject: Merge in the 3.8.5 release changes and the FTS integrity-check fix. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=59967e2d2e3e2e3fb9b78e3d9a36b3d8089a8b87;p=thirdparty%2Fsqlite.git Merge in the 3.8.5 release changes and the FTS integrity-check fix. FossilOrigin-Name: 2dbdfa51703bade30b66730191e4fb286edc500b --- 59967e2d2e3e2e3fb9b78e3d9a36b3d8089a8b87 diff --cc manifest index 15b303b4c5,fa19abb656..4696921304 --- a/manifest +++ b/manifest @@@ -1,7 -1,7 +1,7 @@@ - C Merge\strunk\schanges\sinto\sthe\sapple-osx\sbranch. - D 2014-05-29T20:36:56.002 -C Fix\sa\sproblem\sthat\swas\scausing\sthe\sFTS4\sintegrity-check\scommand\sto\sfail\sif\sthe\stable\shad\sone\sor\smore\s"notindexed"\scolumns. -D 2014-06-05T11:15:56.350 ++C Merge\sin\sthe\s3.8.5\srelease\schanges\sand\sthe\sFTS\sintegrity-check\sfix. ++D 2014-06-05T12:53:41.995 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f -F Makefile.in dd2b1aba364ff9b05de41086f74407f285c57670 +F Makefile.in 444faa7b5c5b3189fa674ff42be94d87a37eba9d F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 F Makefile.msc 52911c6bfeaf9b40f47ef4615ab66d98ab0f2b3d F Makefile.vxworks 034289efa9d591b04b1a73598623119c306cbba0 @@@ -208,33 -205,32 +208,33 @@@ F src/os.c 25df79baf4bec87f75a2c4e995d6 F src/os.h 60d419395e32a8029fa380a80a3da2e9030f635e F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04 F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa -F src/os_unix.c ae4b5240af4619d711301d7992396e182585269f -F src/os_win.c 8dbf6c11780fe2eb96c1f289e664d0c7b2911d37 +F src/os_unix.c 6a54dad9ffb25faaa81604a3eebedeb04da9b639 - F src/os_win.c 26d49ff484b8bd59037122151d545734b5cd3466 ++F src/os_win.c 43b075157eb17440a1813a14332fc8623d7c4554 F src/os_win.h 057344a6720b4c8405d9bd98f58cb37a6ee46c25 -F src/pager.c f6bb1fa6cdf2062f2d8aec3e64db302bca519ab8 -F src/pager.h ffd5607f7b3e4590b415b007a4382f693334d428 +F src/pager.c d878c40eb8c75e9ae79b00cc80ad9710679f9a31 +F src/pager.h 8feb18f845951ab37e1f65a319b2da24185173ac F src/parse.y 22d6a074e5f5a7258947a1dc55a9bf946b765dd0 F src/pcache.c d8eafac28290d4bb80332005435db44991d07fc2 F src/pcache.h a5e4f5d9f5d592051d91212c5949517971ae6222 F src/pcache1.c 102e6f5a2fbc646154463eb856d1fd716867b64c -F src/pragma.c 810ef31ccfaa233201dcf100637a9777cc24e897 -F src/prepare.c 677521ab7132615a8a26107a1d1c3132f44ae337 +F src/pragma.c 039578fb7d7cad90a5a2269651ad3b1ad98451cc +F src/prepare.c 954f80160f120ca715ffa5db5549c3262abb335e - F src/printf.c e5a0005f8b3de21f85da6a709d2fbee76775bf4b + F src/printf.c af06f66927919730f03479fed6ae9854f73419f4 F src/random.c d10c1f85b6709ca97278428fd5db5bbb9c74eece F src/resolve.c 273d5f47c4e2c05b2d3d2bffeda939551ab59e66 F src/rowset.c a9c9aae3234b44a6d7c6f5a3cadf90dce1e627be - F src/select.c 2e621e9aa6da9c24a06359e0ddb1b7354e47f9f7 - F src/shell.c 33f6c0bc0e32eae099f7c2b79cfa7515b4b4702c - F src/sqlite.h.in 1581bfade051f90dcd28b44c6b04fbf326bec4db -F src/select.c 6762c62e11b504aa014edceab8886495165e3a77 ++F src/select.c a34db38f97bd8fe768d0bd9315397457c98be185 + F src/shell.c 98ce7f52445aa0c2eac3d4553a4cdcbb6402a670 -F src/sqlite.h.in a98eb3e8c86c934ea6f5bcfc6b69653dde2f4ed4 ++F src/sqlite.h.in 69c7d92c615945a7053cb899c6ae6a6a0fc36cca F src/sqlite3.rc 11094cc6a157a028b301a9f06b3d03089ea37c3e +F src/sqlite3_private.h a81a9c5f97c095cc3e86914a05f8fabe0011f4a1 F src/sqlite3ext.h 886f5a34de171002ad46fae8c36a7d8051c190fc -F src/sqliteInt.h fccdc735c27b3dc12322fec7cdad8bc76be8d00b +F src/sqliteInt.h 6b40bb90f547ef70d78cf43d9d1b4e5656e9eb1b F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d F src/status.c 7ac05a5c7017d0b9f0b4bcd701228b784f987158 F src/table.c 2cd62736f845d82200acfa1287e33feb3c15d62e F src/tclsqlite.c e87c99e28a145943666b51b212dacae35fcea0bd - F src/test1.c 472c069b3e1abd30972cddee330225ff5b70ac25 -F src/test1.c 4edf8810c86d77ae7ac6d56d563965a9beeea2ce ++F src/test1.c f9d10a5bab1eb1b10f6f5049b68a2662a8986b6d F src/test2.c 98049e51a17dc62606a99a9eb95ee477f9996712 F src/test3.c 1c0e5d6f080b8e33c1ce8b3078e7013fdbcd560c F src/test4.c 9b32d22f5f150abe23c1830e2057c4037c45b3df @@@ -295,12 -291,12 +295,12 @@@ F src/vdbemem.c 6fc77594c60f6155404f3f8 F src/vdbesort.c 44441d73b08b3a638dcdb725afffb87c6574ad27 F src/vdbetrace.c 6f52bc0c51e144b7efdcfb2a8f771167a8816767 F src/vtab.c 21b932841e51ebd7d075e2d0ad1415dce8d2d5fd -F src/wal.c 76e7fc6de229bea8b30bb2539110f03a494dc3a8 -F src/wal.h df01efe09c5cb8c8e391ff1715cca294f89668a4 +F src/wal.c 29854e652a9d7dc0d7a87ff1a9dbffac0aaf2e16 +F src/wal.h 6b3a67ecd7172dcc9f18fc9cd4d76dc4c2166e68 F src/walker.c 11edb74d587bc87b33ca96a5173e3ec1b8389e45 - F src/where.c b3be5eb4193b6327c4a02fe91411df503fe770e8 - F src/whereInt.h 6804c2e5010378568c2bb1350477537755296a46 + F src/where.c a7d59dd5d5bf6d6ab905fb549567a0a11376de25 + F src/whereInt.h 929c1349b5355fd44f22cee5c14d72b3329c58a6 -F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2 +F test/8_3_names.test 05034aadccd2253ffe6cbefb06662b8aa4600f77 F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2 F test/aggnested.test 45c0201e28045ad38a530b5a144b73cd4aa2cfd6 F test/alias.test 4529fbc152f190268a15f9384a5651bbbabc9d87 @@@ -748,11 -743,11 +748,11 @@@ F test/pagerfault2.test caf4c7facb914fd F test/pagerfault3.test 1003fcda009bf48a8e22a516e193b6ef0dd1bbd8 F test/pageropt.test 6b8f6a123a5572c195ad4ae40f2987007923bbd6 F test/pagesize.test 1dd51367e752e742f58e861e65ed7390603827a0 -F test/pcache.test b09104b03160aca0d968d99e8cd2c5b1921a993d +F test/pcache.test 488061b5dd685df2234d690370285c9b4813377b F test/pcache2.test a83efe2dec0d392f814bfc998def1d1833942025 F test/percentile.test b98fc868d71eb5619d42a1702e9ab91718cbed54 - F test/permutations.test d8946218493c77806ec1029df473d8ed4ad9aef6 + F test/permutations.test bc474bafb022cc5014ef3a9c3d5ab61d6d6f587c -F test/pragma.test adb21a90875bc54a880fa939c4d7c46598905aa0 +F test/pragma.test 8ee8929dd652a5753d9cd72dbcbcb9b152bd6fd8 F test/pragma2.test aea7b3d82c76034a2df2b38a13745172ddc0bc13 F test/printf.test ec9870c4dce8686a37818e0bf1aba6e6a1863552 F test/printf2.test bed79b4c3e5da08ba88ad637c0bf62586843cfb1 @@@ -1178,7 -1173,7 +1178,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 54b5fa77e9b2ae447fd25cbdb9abfe37f2226504 8f916ed1e185ac728e00624d90e1d7bd2dda4469 - R 2814407c1e56278568cb201abee6bef2 -P b1ed4f2a34ba66c29b130f8d13e9092758019212 -R 377d24b74ba4106b5f52a423e2a5cf2f -U dan -Z 2cd68ab7b6aef503eef49b559771fe52 ++P b9fad4490c437a2c49cf86cc1c068433d6d2866b 7123bb2605216396f65db5d156431b3613f313b5 ++R 2d60ed1c1f6422e4ada671a141ef9856 +U drh - Z ff5da8f06de1c70f7fc6ed02bdf0d70d ++Z ae31fcbcc5589199902d82aecc34d93c diff --cc manifest.uuid index 8042d90400,67f786fd6a..5470adcc1a --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - b9fad4490c437a2c49cf86cc1c068433d6d2866b -7123bb2605216396f65db5d156431b3613f313b5 ++2dbdfa51703bade30b66730191e4fb286edc500b diff --cc src/sqlite.h.in index 5b83da8af3,21ab67a4c2..95c67ee0d9 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@@ -966,10 -971,7 +972,11 @@@ struct sqlite3_io_methods #define SQLITE_FCNTL_HAS_MOVED 20 #define SQLITE_FCNTL_SYNC 21 #define SQLITE_FCNTL_COMMIT_PHASETWO 22 + #define SQLITE_FCNTL_WIN32_SET_HANDLE 23 +/* deprecated names */ +#define SQLITE_GET_LOCKPROXYFILE SQLITE_FCNTL_GET_LOCKPROXYFILE +#define SQLITE_SET_LOCKPROXYFILE SQLITE_FCNTL_SET_LOCKPROXYFILE +#define SQLITE_LAST_ERRNO SQLITE_FCNTL_LAST_ERRNO /* ** CAPI3REF: Mutex Handle diff --cc src/test1.c index f98c1e7230,a99b26ffd0..1013527a4b --- a/src/test1.c +++ b/src/test1.c @@@ -5319,90 -5220,7 +5329,91 @@@ static int file_control_lockproxy_test return TCL_OK; } +#ifdef __APPLE__ +#include +#include +#include +#endif + +/* + ** tclcmd: path_is_local PWD + */ +static int path_is_local( + ClientData clientData, /* Pointer to sqlite3_enable_XXX function */ + Tcl_Interp *interp, /* The TCL interpreter that invoked this command */ + int objc, /* Number of arguments */ + Tcl_Obj *CONST objv[] /* Command arguments */ +){ +#ifdef __APPLE__ + const char *zPath; + int nPath; + struct statfs fsInfo; + + if( objc!=2 ){ + Tcl_AppendResult(interp, "wrong # args: should be \"", + Tcl_GetStringFromObj(objv[0], 0), " PATH", 0); + return TCL_ERROR; + } + zPath = Tcl_GetStringFromObj(objv[1], &nPath); + if( statfs(zPath, &fsInfo) == -1 ){ + int err = errno; + Tcl_AppendResult(interp, "Error calling statfs on path", + Tcl_NewIntObj(err), 0); + return TCL_ERROR; + } + if( fsInfo.f_flags&MNT_LOCAL ){ + Tcl_SetObjResult(interp, Tcl_NewIntObj(1)); + } else { + Tcl_SetObjResult(interp, Tcl_NewIntObj(0)); + } +#else + Tcl_SetObjResult(interp, Tcl_NewIntObj(1)); +#endif + + return TCL_OK; +} + +/* + ** tclcmd: path_is_dos PWD + */ +static int path_is_dos( + ClientData clientData, /* Pointer to sqlite3_enable_XXX function */ + Tcl_Interp *interp, /* The TCL interpreter that invoked this command */ + int objc, /* Number of arguments */ + Tcl_Obj *CONST objv[] /* Command arguments */ +){ +#ifdef __APPLE__ + const char *zPath; + int nPath; + struct statfs fsInfo; + + if( objc!=2 ){ + Tcl_AppendResult(interp, "wrong # args: should be \"", + Tcl_GetStringFromObj(objv[0], 0), " PATH", 0); + return TCL_ERROR; + } + zPath = Tcl_GetStringFromObj(objv[1], &nPath); + if( statfs(zPath, &fsInfo) == -1 ){ + int err = errno; + Tcl_AppendResult(interp, "Error calling statfs on path", + Tcl_NewIntObj(err), 0); + return TCL_ERROR; + } + if (0 == strncmp("msdos", fsInfo.f_fstypename, 5)) { + Tcl_SetObjResult(interp, Tcl_NewIntObj(1)); + } else if (0 == strncmp("exfat", fsInfo.f_fstypename, 5)) { + Tcl_SetObjResult(interp, Tcl_NewIntObj(1)); + } else { + Tcl_SetObjResult(interp, Tcl_NewIntObj(0)); + } +#else + Tcl_SetObjResult(interp, Tcl_NewIntObj(0)); +#endif + + return TCL_OK; +} + + #if SQLITE_OS_WIN /* ** tclcmd: file_control_win32_av_retry DB NRETRY DELAY ** @@@ -6663,13 -6517,12 +6710,16 @@@ int Sqlitetest1_Init(Tcl_Interp *interp { "file_control_test", file_control_test, 0 }, { "file_control_lasterrno_test", file_control_lasterrno_test, 0 }, { "file_control_lockproxy_test", file_control_lockproxy_test, 0 }, +#ifdef __APPLE__ + { "file_control_truncate_test", file_control_truncate_test, 0 }, + { "file_control_replace_test", file_control_replace_test, 0 }, +#endif { "file_control_chunksize_test", file_control_chunksize_test, 0 }, { "file_control_sizehint_test", file_control_sizehint_test, 0 }, + #if SQLITE_OS_WIN { "file_control_win32_av_retry", file_control_win32_av_retry, 0 }, + { "file_control_win32_set_handle", file_control_win32_set_handle, 0 }, + #endif { "file_control_persist_wal", file_control_persist_wal, 0 }, { "file_control_powersafe_overwrite",file_control_powersafe_overwrite,0}, { "file_control_vfsname", file_control_vfsname, 0 },