Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix typos in the wal.html document. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
ad5454b5e07120d5d5ed79cfe3d098a7 |
User & Date: | drh 2010-07-15 18:41:50.000 |
Context
2010-07-17
| ||
15:42 | Note in the docs that "+ NULL" is NULL. (check-in: 29da1fe525 user: dan tags: trunk) | |
2010-07-15
| ||
18:41 | Fix typos in the wal.html document. (check-in: ad5454b5e0 user: drh tags: trunk) | |
2010-07-14
| ||
22:40 | Fix a bug in the back-links of the evidence display generator. (check-in: 96334c601b user: drh tags: trunk) | |
Changes
Changes to pages/wal.in.
︙ | ︙ | |||
324 325 326 327 328 329 330 | <p>Also, if multiple processes are to access a WAL mode database, then all processes should run under user or group IDs that give them write access to the database files, the WAL file, the shared memory <tt>-shm</tt> file, and the containing directory.</p> <h2>Implementation Of Shared-Memory For The WAL-Index</h2> | | | | 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 | <p>Also, if multiple processes are to access a WAL mode database, then all processes should run under user or group IDs that give them write access to the database files, the WAL file, the shared memory <tt>-shm</tt> file, and the containing directory.</p> <h2>Implementation Of Shared-Memory For The WAL-Index</h2> <p>The [wal-index] is implemented using an ordinary file that is mmapped for robustness. Early (pre-release) implementations of WAL mode stored the wal-index in volatile shared-memory, such as files created in /dev/shm on Linux or /tmp on other unix systems. The problem with that approach is that processes with a different root directory (changed via <a href="http://en.wikipedia.org/wiki/Chroot">chroot</a>) will see different files and hence use different shared memory areas, leading to database corruption. Other methods for creating nameless shared memory blocks are not portable across the various flavors of unix. And we could not find any method to create nameless shared memory blocks on windows. The only way we have found to guarantee that all processes accessing the same database file use the same shared memory is to create the shared memory by mmapping a file in the same directory as the database itself.</p> <p>Using an ordinary disk file to provide shared memory has the disadvantage that it might actually do unnecessary disk I/O by writing the shared memory to disk. However, the developers do not think this is a major concern since the wal-index rarely exceeds 32 KiB in size and is never synced. Furthermore, the wal-index backing file is deleted when the last database connection disconnects, which often prevents any real disk I/O from ever happening.</p> <p>Specialized applications for which the default implementation of |
︙ | ︙ |