SQLite

Check-in [b9a7415190]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Make SQLITE_MFS_NSHARD a compile time setting.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | mutexfree-shmlock
Files: files | file ages | folders
SHA3-256: b9a741519055a8560ec1d0ab7d0c15ff8db53e740011825506cd2ede11c956f0
User & Date: dan 2018-12-10 16:52:31.796
Context
2018-12-24
15:15
Merge latest trunk with this branch. (Leaf check-in: 606b1ead24 user: dan tags: mutexfree-shmlock)
2018-12-18
19:46
Add the "mutexfree-shmlock" patch to this branch. (check-in: c3191fc8fc user: dan tags: begin-concurrent-pnu-wal2)
2018-12-10
16:53
Merge latest mutexfree-shmlock changes into this branch. (Leaf check-in: 186b376ec3 user: dan tags: begin-concurrent-pnu-mutexfree-shmlock)
16:52
Make SQLITE_MFS_NSHARD a compile time setting. (check-in: b9a7415190 user: dan tags: mutexfree-shmlock)
15:51
Add extra tests to shmlock.test (direct testing of xShmLock methods). (check-in: d2c785f94c user: dan tags: mutexfree-shmlock)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/os_unix.c.
44
45
46
47
48
49
50


51

52


53
54
55
56
57
58
59
**      plus implementations of sqlite3_os_init() and sqlite3_os_end().
*/
#include "sqliteInt.h"
#if SQLITE_OS_UNIX              /* This file is used on unix only */

/* Turn this feature on in all builds for now */
#define SQLITE_MUTEXFREE_SHMLOCK 1


#define SQLITE_MFS_NSHARD        5

#define SQLITE_MFS_EXCLUSIVE     255



/*
** There are various methods for file locking used for concurrency
** control:
**
**   1. POSIX locking (the default),
**   2. No locking,







>
>
|
>
|
>
>







44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
**      plus implementations of sqlite3_os_init() and sqlite3_os_end().
*/
#include "sqliteInt.h"
#if SQLITE_OS_UNIX              /* This file is used on unix only */

/* Turn this feature on in all builds for now */
#define SQLITE_MUTEXFREE_SHMLOCK 1
#define SQLITE_MFS_EXCLUSIVE     255
#ifndef SQLITE_MFS_NSHARD
# define SQLITE_MFS_NSHARD       8
#endif
#if SQLITE_MFS_NSHARD<1
# error "SQLITE_MFS_NSHARD must be greater than 0"
#endif

/*
** There are various methods for file locking used for concurrency
** control:
**
**   1. POSIX locking (the default),
**   2. No locking,