mirror of
https://github.com/sqlite/sqlite.git
synced 2025-12-21 13:38:01 +03:00
Back out minor changes not required by this branch.
FossilOrigin-Name: 68c34ffd2332d89cb6400bce5dad350a6e48c395924b8380cbeb0dbe64141808
This commit is contained in:
20
manifest
20
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Merge\slatest\strunk\sinto\sthis\sbranch.
|
C Back\sout\sminor\schanges\snot\srequired\sby\sthis\sbranch.
|
||||||
D 2024-12-03T19:30:14.226
|
D 2024-12-03T19:41:41.500
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
|
F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
|
||||||
@@ -754,15 +754,15 @@ F src/mutex.c 06bcd9c3dbf2d9b21fcd182606c00fafb9bfe0287983c8e17acd13d2c81a2fa9
|
|||||||
F src/mutex.h a7b2293c48db5f27007c3bdb21d438873637d12658f5a0bf8ad025bb96803c4a
|
F src/mutex.h a7b2293c48db5f27007c3bdb21d438873637d12658f5a0bf8ad025bb96803c4a
|
||||||
F src/mutex_noop.c 9d4309c075ba9cc7249e19412d3d62f7f94839c4
|
F src/mutex_noop.c 9d4309c075ba9cc7249e19412d3d62f7f94839c4
|
||||||
F src/mutex_unix.c f7ee5a2061a4c11815a2bf4fc0e2bfa6fb8d9dc89390eb613ca0cec32fc9a3d1
|
F src/mutex_unix.c f7ee5a2061a4c11815a2bf4fc0e2bfa6fb8d9dc89390eb613ca0cec32fc9a3d1
|
||||||
F src/mutex_w32.c db182bf5aac08a16fbf5916d94974f5a11556fe150142fcabe36d6454e0d93a1
|
F src/mutex_w32.c 28f8d480387db5b2ef5248705dd4e19db0cfc12c3ba426695a7d2c45c48e6885
|
||||||
F src/notify.c 57c2d1a2805d6dee32acd5d250d928ab94e02d76369ae057dee7d445fd64e878
|
F src/notify.c 57c2d1a2805d6dee32acd5d250d928ab94e02d76369ae057dee7d445fd64e878
|
||||||
F src/os.c 509452169d5ea739723e213b8e2481cf0e587f0e88579a912d200db5269f5f6d
|
F src/os.c 509452169d5ea739723e213b8e2481cf0e587f0e88579a912d200db5269f5f6d
|
||||||
F src/os.h 1ff5ae51d339d0e30d8a9d814f4b8f8e448169304d83a7ed9db66a65732f3e63
|
F src/os.h 1ff5ae51d339d0e30d8a9d814f4b8f8e448169304d83a7ed9db66a65732f3e63
|
||||||
F src/os_common.h 6c0eb8dd40ef3e12fe585a13e709710267a258e2c8dd1c40b1948a1d14582e06
|
F src/os_common.h 6c0eb8dd40ef3e12fe585a13e709710267a258e2c8dd1c40b1948a1d14582e06
|
||||||
F src/os_kv.c 4d39e1f1c180b11162c6dc4aa8ad34053873a639bac6baae23272fc03349986a
|
F src/os_kv.c 4d39e1f1c180b11162c6dc4aa8ad34053873a639bac6baae23272fc03349986a
|
||||||
F src/os_setup.h 6011ad7af5db4e05155f385eb3a9b4470688de6f65d6166b8956e58a3d872107
|
F src/os_setup.h 6011ad7af5db4e05155f385eb3a9b4470688de6f65d6166b8956e58a3d872107
|
||||||
F src/os_unix.c d4a33e8fbd1c6eb722a21b6ce1eee1213ec856170a2f256d99f3d2978f054f5a
|
F src/os_unix.c d2edbd92b07a3f778c2defa8a2e9d75acceb6267bda56948c41e8cdda65224d6
|
||||||
F src/os_win.c 87a6590fa43efbf64b58269fef10df5b766841603b6ac0bf025fac74901f45c7
|
F src/os_win.c a47ad87a47d799783277edc56d99fdcaac2a2a503ba702b18d149d0c4cb125b7
|
||||||
F src/os_win.h 7b073010f1451abe501be30d12f6bc599824944a
|
F src/os_win.h 7b073010f1451abe501be30d12f6bc599824944a
|
||||||
F src/pager.c 9656ad4e8331efb8a4f94f7a0c6440b98caea073950a367ea0c728a53b8e62c9
|
F src/pager.c 9656ad4e8331efb8a4f94f7a0c6440b98caea073950a367ea0c728a53b8e62c9
|
||||||
F src/pager.h 4b1140d691860de0be1347474c51fee07d5420bd7f802d38cbab8ea4ab9f538a
|
F src/pager.h 4b1140d691860de0be1347474c51fee07d5420bd7f802d38cbab8ea4ab9f538a
|
||||||
@@ -1705,7 +1705,7 @@ F test/swarmvtab2.test c948cb2fdfc5b01d85e8f6d6504854202dc1a0782ab2a0ed61538f27c
|
|||||||
F test/swarmvtab3.test 41a3ab47cb7a834d4e5336425103b617410a67bb95d335ef536f887587ece073
|
F test/swarmvtab3.test 41a3ab47cb7a834d4e5336425103b617410a67bb95d335ef536f887587ece073
|
||||||
F test/swarmvtabfault.test 8a67a9f27c61073a47990829e92bc0c64420a807cb642b15a25f6c788210ed95
|
F test/swarmvtabfault.test 8a67a9f27c61073a47990829e92bc0c64420a807cb642b15a25f6c788210ed95
|
||||||
F test/symlink.test 4368af0e213dd6e726a6240a16f2bb96a5a58f83f2d5d60652f27547b28cbf06
|
F test/symlink.test 4368af0e213dd6e726a6240a16f2bb96a5a58f83f2d5d60652f27547b28cbf06
|
||||||
F test/symlink2.test 0b7734533f198bbc46fb8ea984ffaea537c8ee949eaba8805a92ed9969573956
|
F test/symlink2.test bf932ff7fe95c9dbb39d2a990df9098b0ea943233c97e40098e0a8d6b559a96f
|
||||||
F test/sync.test 89539f4973c010eda5638407e71ca7fddbcd8e0594f4c9980229f804d4333092
|
F test/sync.test 89539f4973c010eda5638407e71ca7fddbcd8e0594f4c9980229f804d4333092
|
||||||
F test/sync2.test 8f9f7d4f6d5be8ca8941a8dadcc4299e558cb6a1ff653a9469146c7a76ef2039
|
F test/sync2.test 8f9f7d4f6d5be8ca8941a8dadcc4299e558cb6a1ff653a9469146c7a76ef2039
|
||||||
F test/syscall.test a067468b43b8cb2305e9f9fe414e5f40c875bb5d2cba5f00b8154396e95fcf37
|
F test/syscall.test a067468b43b8cb2305e9f9fe414e5f40c875bb5d2cba5f00b8154396e95fcf37
|
||||||
@@ -1989,7 +1989,7 @@ F test/vtab_shared.test 5253bff2355a9a3f014c15337da7e177ab0ef8ad
|
|||||||
F test/vtabdistinct.test 7688f0889358f849fd60bbfde1ded38b014b18066076d4bfbb75395804dfe072
|
F test/vtabdistinct.test 7688f0889358f849fd60bbfde1ded38b014b18066076d4bfbb75395804dfe072
|
||||||
F test/vtabdrop.test 65d4cf6722972e5499bdaf0c0d70ee3b8133944a4e4bc31862563f32a7edca12
|
F test/vtabdrop.test 65d4cf6722972e5499bdaf0c0d70ee3b8133944a4e4bc31862563f32a7edca12
|
||||||
F test/vtabrhs1.test 9b5ecbc74a689500c33a4b2b36761f9bcc22fcc4e3f9d21066ee0c9c74cf5f6c
|
F test/vtabrhs1.test 9b5ecbc74a689500c33a4b2b36761f9bcc22fcc4e3f9d21066ee0c9c74cf5f6c
|
||||||
F test/wal.test 3628a18ed2ba1cad58978802381f89e6076d225d5c93836d3eed464f867fa288
|
F test/wal.test 519c550255c78f55959e9159b93ebbfad2b4e9f36f5b76284da41f572f9d27da
|
||||||
F test/wal2.test e89ca97593b5e92849039f6b68ce1719a853ef20fa22c669ec1ac452fbc31cab
|
F test/wal2.test e89ca97593b5e92849039f6b68ce1719a853ef20fa22c669ec1ac452fbc31cab
|
||||||
F test/wal3.test 5de023bb862fd1eb9d2ad26fa8d9c43abb5370582e5b08b2ae0d6f93661bc310
|
F test/wal3.test 5de023bb862fd1eb9d2ad26fa8d9c43abb5370582e5b08b2ae0d6f93661bc310
|
||||||
F test/wal4.test 4744e155cd6299c6bd99d3eab1c82f77db9cdb3c
|
F test/wal4.test 4744e155cd6299c6bd99d3eab1c82f77db9cdb3c
|
||||||
@@ -2202,8 +2202,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
|
|||||||
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
||||||
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
|
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
|
||||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||||
P 54853421ba012c192ee2a41873e6ba10e187a6ec2e23182ccbec56864604166f de7064d118c33aab0fff39d072593b287c291870b843d093045300bde464420f
|
P eb13b8b3ef67ca8a252f7a4fd5a83ed31fefe68aa5ad8693d9d1f17218f4d176
|
||||||
R 3c243a933b362fd80871bde637111a1b
|
R 28e862b65e1c230b43e9a6086c499bb3
|
||||||
U dan
|
U dan
|
||||||
Z 9f9402747ee81462cbb1b0010bd49025
|
Z c28b93b8951a4bd56ddee9ab67e53504
|
||||||
# Remove this line to create a well-formed Fossil manifest.
|
# Remove this line to create a well-formed Fossil manifest.
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
eb13b8b3ef67ca8a252f7a4fd5a83ed31fefe68aa5ad8693d9d1f17218f4d176
|
68c34ffd2332d89cb6400bce5dad350a6e48c395924b8380cbeb0dbe64141808
|
||||||
|
|||||||
@@ -314,12 +314,22 @@ static int winMutexTry(sqlite3_mutex *p){
|
|||||||
/*
|
/*
|
||||||
** The sqlite3_mutex_try() routine is very rarely used, and when it
|
** The sqlite3_mutex_try() routine is very rarely used, and when it
|
||||||
** is used it is merely an optimization. So it is OK for it to always
|
** is used it is merely an optimization. So it is OK for it to always
|
||||||
** fail on some platforms. But - it is required for ENABLE_SETLK_TIMEOUT
|
** fail.
|
||||||
** builds.
|
**
|
||||||
|
** The TryEnterCriticalSection() interface is only available on WinNT.
|
||||||
|
** And some windows compilers complain if you try to use it without
|
||||||
|
** first doing some #defines that prevent SQLite from building on Win98.
|
||||||
|
** For that reason, we will omit this optimization for now. See
|
||||||
|
** ticket #2685.
|
||||||
*/
|
*/
|
||||||
#if defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x0400
|
#if defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x0400
|
||||||
assert( winMutex_isInit==1 );
|
assert( winMutex_isInit==1 );
|
||||||
if( sqlite3_win32_is_nt() && TryEnterCriticalSection(&p->mutex) ){
|
assert( winMutex_isNt>=-1 && winMutex_isNt<=1 );
|
||||||
|
if( winMutex_isNt<0 ){
|
||||||
|
winMutex_isNt = sqlite3_win32_is_nt();
|
||||||
|
}
|
||||||
|
assert( winMutex_isNt==0 || winMutex_isNt==1 );
|
||||||
|
if( winMutex_isNt && TryEnterCriticalSection(&p->mutex) ){
|
||||||
#ifdef SQLITE_DEBUG
|
#ifdef SQLITE_DEBUG
|
||||||
p->owner = tid;
|
p->owner = tid;
|
||||||
p->nRef++;
|
p->nRef++;
|
||||||
|
|||||||
@@ -4290,6 +4290,7 @@ static int unixGetpagesize(void){
|
|||||||
**
|
**
|
||||||
** nRef
|
** nRef
|
||||||
**
|
**
|
||||||
|
** The following fields are read-only after the object is created:
|
||||||
**
|
**
|
||||||
** hShm
|
** hShm
|
||||||
** zFilename
|
** zFilename
|
||||||
|
|||||||
20
src/os_win.c
20
src/os_win.c
@@ -3874,25 +3874,6 @@ static int winShmMutexHeld(void) {
|
|||||||
** Either winShmNode.mutex must be held or winShmNode.nRef==0 and
|
** Either winShmNode.mutex must be held or winShmNode.nRef==0 and
|
||||||
** winShmMutexHeld() is true when reading or writing any other field
|
** winShmMutexHeld() is true when reading or writing any other field
|
||||||
** in this structure.
|
** in this structure.
|
||||||
**
|
|
||||||
** aMutex[SQLITE_SHM_NLOCK]:
|
|
||||||
** Normally, when SQLITE_ENABLE_SETLK_TIMEOUT is not defined, mutex
|
|
||||||
** winShmNode.mutex is used to serialize calls to the xShmLock()
|
|
||||||
** method.
|
|
||||||
**
|
|
||||||
** For SQLITE_ENABLE_SETLK_TIMEOUT builds, xShmLock() only takes the
|
|
||||||
** mutexes in the aMutex[] array that correspond to locks being taken
|
|
||||||
** or released. This means that:
|
|
||||||
**
|
|
||||||
** * Modifying the winShmNode.pFirst list requires holding *all*
|
|
||||||
** the locks in the aMutex[] array.
|
|
||||||
**
|
|
||||||
** * Reads and writes to winShm.sharedMask and winShm.exclMask must
|
|
||||||
** use AtomicLoad() and AtomicStore(). This is because it may be
|
|
||||||
** read by other threads while it is being modified.
|
|
||||||
**
|
|
||||||
** TODO: winShmNode.mutex is held for the space of time when LockFileEx()
|
|
||||||
** is called on winShmNode.hFile.
|
|
||||||
*/
|
*/
|
||||||
struct winShmNode {
|
struct winShmNode {
|
||||||
sqlite3_mutex *mutex; /* Mutex to access this object */
|
sqlite3_mutex *mutex; /* Mutex to access this object */
|
||||||
@@ -3913,7 +3894,6 @@ struct winShmNode {
|
|||||||
int nRef; /* Number of winShm objects pointing to this */
|
int nRef; /* Number of winShm objects pointing to this */
|
||||||
winShm *pFirst; /* All winShm objects pointing to this */
|
winShm *pFirst; /* All winShm objects pointing to this */
|
||||||
winShmNode *pNext; /* Next in list of all winShmNode objects */
|
winShmNode *pNext; /* Next in list of all winShmNode objects */
|
||||||
|
|
||||||
#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE)
|
#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE)
|
||||||
u8 nextShmId; /* Next available winShm.id value */
|
u8 nextShmId; /* Next available winShm.id value */
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -37,11 +37,10 @@ proc canCreateWin32Symlink {} {
|
|||||||
set link [file join $::testdir lnk[pid].sym]
|
set link [file join $::testdir lnk[pid].sym]
|
||||||
if {[file exists $link]} { return 0 }
|
if {[file exists $link]} { return 0 }
|
||||||
set target [info nameofexecutable]
|
set target [info nameofexecutable]
|
||||||
if {[catch {createWin32Symlink $link $target} msg] == 0} {
|
if {[catch {createWin32Symlink $link $target}] == 0} {
|
||||||
deleteWin32Symlink $link
|
deleteWin32Symlink $link
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
puts $msg
|
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -506,7 +506,7 @@ do_multiclient_test tn {
|
|||||||
do_test wal-10.$tn.6 {
|
do_test wal-10.$tn.6 {
|
||||||
sql3 {SELECT * FROM t1}
|
sql3 {SELECT * FROM t1}
|
||||||
} {1 2 3 4 5 6}
|
} {1 2 3 4 5 6}
|
||||||
do_test wal-10.$tn.7a {
|
do_test wal-10.$tn.7 {
|
||||||
sql2 COMMIT
|
sql2 COMMIT
|
||||||
} {}
|
} {}
|
||||||
|
|
||||||
@@ -521,7 +521,7 @@ do_multiclient_test tn {
|
|||||||
# to the database (as it is not locked and [db] is reading the latest
|
# to the database (as it is not locked and [db] is reading the latest
|
||||||
# snapshot).
|
# snapshot).
|
||||||
#
|
#
|
||||||
do_test wal-10.$tn.7b {
|
do_test wal-10.$tn.7 {
|
||||||
sql2 { BEGIN; INSERT INTO t1 VALUES(7, 8) ; }
|
sql2 { BEGIN; INSERT INTO t1 VALUES(7, 8) ; }
|
||||||
catchsql { INSERT INTO t1 VALUES(9, 10) }
|
catchsql { INSERT INTO t1 VALUES(9, 10) }
|
||||||
} {1 {database is locked}}
|
} {1 {database is locked}}
|
||||||
|
|||||||
Reference in New Issue
Block a user