diff options
Diffstat (limited to 'docs/installation/build_win_notes.html')
-rw-r--r-- | docs/installation/build_win_notes.html | 110 |
1 files changed, 68 insertions, 42 deletions
diff --git a/docs/installation/build_win_notes.html b/docs/installation/build_win_notes.html index ccc4efde..9aa16fca 100644 --- a/docs/installation/build_win_notes.html +++ b/docs/installation/build_win_notes.html @@ -14,7 +14,7 @@ <body> <div xmlns="" class="navheader"> <div class="libver"> - <p>Library Version 11.2.5.3</p> + <p>Library Version 12.1.6.1</p> </div> <table width="100%" summary="Navigation header"> <tr> @@ -22,9 +22,7 @@ </tr> <tr> <td width="20%" align="left"><a accesskey="p" href="build_win_test.html">Prev</a> </td> - <th width="60%" align="center">Chapter 5. - Building Berkeley DB for Windows - </th> + <th width="60%" align="center">Chapter 5. Building Berkeley DB for Windows </th> <td width="20%" align="right"> <a accesskey="n" href="build_win_faq.html">Next</a></td> </tr> </table> @@ -39,44 +37,71 @@ </div> </div> <div class="orderedlist"> - <p>If a system memory environment is closed by all processes, subsequent -attempts to open it will return an error. To successfully open a -transactional environment in this state, recovery must be run by the -next process to open the environment. For non-transactional -environments, applications should remove the existing environment and -then create a new database environment.</p> + <p> + If a system memory environment is closed by all + processes, subsequent attempts to open it will return an + error. To successfully open a transactional environment in + this state, recovery must be run by the next process to + open the environment. For non-transactional environments, + applications should remove the existing environment and + then create a new database environment. + </p> <ol type="1"> - <li>Berkeley DB does not support the Windows/95, Windows/98 or - Windows/ME platforms.</li> - <li>On Windows, system paging file memory is freed on last close. For this -reason, multiple processes sharing a database environment created using -the <a href="../api_reference/C/envopen.html#envopen_DB_SYSTEM_MEM" class="olink">DB_SYSTEM_MEM</a> flag must arrange for at least one process to -always have the environment open, or alternatively that any process -joining the environment be prepared to re-create it.</li> - <li>When using the <a href="../api_reference/C/envopen.html#envopen_DB_SYSTEM_MEM" class="olink">DB_SYSTEM_MEM</a> flag, Berkeley DB shared regions are -created without ACLs, which means that the regions are only accessible -to a single user. If wider sharing is appropriate (for example, both -user applications and Windows/NT service applications need to access -the Berkeley DB regions), the Berkeley DB code will need to be modified to create -the shared regions with the correct ACLs. Alternatively, by not -specifying the <a href="../api_reference/C/envopen.html#envopen_DB_SYSTEM_MEM" class="olink">DB_SYSTEM_MEM</a> flag, filesystem-backed regions -will be created instead, and the permissions on those files may be -directly specified through the <a href="../api_reference/C/envopen.html" class="olink">DB_ENV->open()</a> method.</li> - <li>Applications that operate on wide character strings can use the -Windows function WideCharToMultiByte with the code page CP_UTF8 to -convert paths to the form expected by Berkeley DB. Internally, Berkeley DB calls -MultiByteToWideChar on paths before calling Windows functions.</li> - <li>Various Berkeley DB methods take a <span class="bold"><strong>mode</strong></span> argument, which is intended -to specify the underlying file permissions for created files. Berkeley DB -currently ignores this argument on Windows systems. -<p>It would be possible to construct a set of security attributes to pass to -<span class="bold"><strong>CreateFile</strong></span> that accurately represents the mode. In the worst -case, this would involve looking up user and all group names, and creating -an entry for each. Alternatively, we could call the <span class="bold"><strong>_chmod</strong></span> -(partial emulation) function after file creation, although this leaves us -with an obvious race.</p><p>Practically speaking, however, these efforts would be largely meaningless -on a FAT file system, which only has a "readable" and "writable" flag, -applying to all users.</p></li> + <li> + Berkeley DB does not support the Windows XP, + Windows 2003 or earlier Windows platforms. + </li> + <li> + On Windows, system paging file memory is freed on + last close. For this reason, multiple processes sharing a + database environment created using the <a href="../api_reference/C/envopen.html#envopen_DB_SYSTEM_MEM" class="olink">DB_SYSTEM_MEM</a> + flag must arrange for at least one process to always have + the environment open, or alternatively that any process + joining the environment be prepared to re-create it. + </li> + <li> + When using the <a href="../api_reference/C/envopen.html#envopen_DB_SYSTEM_MEM" class="olink">DB_SYSTEM_MEM</a> flag, Berkeley DB + shared regions are created without ACLs, which means that + the regions are only accessible to a single user. If wider + sharing is appropriate (for example, both user + applications and Windows/NT service applications need to + access the Berkeley DB regions), the Berkeley DB code will + need to be modified to create the shared regions with the + correct ACLs. Alternatively, by not specifying the + <a href="../api_reference/C/envopen.html#envopen_DB_SYSTEM_MEM" class="olink">DB_SYSTEM_MEM</a> flag, filesystem-backed regions will be + created instead, and the permissions on those files may be + directly specified through the <a href="../api_reference/C/envopen.html" class="olink">DB_ENV->open()</a> method. + </li> + <li> + Applications that operate on wide character strings + can use the Windows function WideCharToMultiByte with the + code page CP_UTF8 to convert paths to the form expected by + Berkeley DB. Internally, Berkeley DB calls + MultiByteToWideChar on paths before calling Windows + functions. + </li> + <li> + Various Berkeley DB methods take a <span class="bold"><strong>mode</strong></span> argument, which is + intended to specify the underlying file permissions for + created files. Berkeley DB currently ignores this argument + on Windows systems. + <p> + It would be possible to + construct a set of security attributes to pass to + <span class="bold"><strong>CreateFile</strong></span> that + accurately represents the mode. In the worst case, + this would involve looking up user and all group + names, and creating an entry for each. Alternatively, + we could call the <span class="bold"><strong>_chmod</strong></span> + (partial emulation) function + after file creation, although this leaves us with an + obvious race. + </p><p> + Practically speaking, however, these efforts would + be largely meaningless on a FAT file system, which + only has a "readable" and "writable" flag, applying to + all users. + </p></li> </ol> </div> </div> @@ -91,7 +116,8 @@ applying to all users.</p></li> <td width="40%" align="right"> <a accesskey="n" href="build_win_faq.html">Next</a></td> </tr> <tr> - <td width="40%" align="left" valign="top">Running the test suite under Windows </td> + <td width="40%" align="left" valign="top">Running the test suite under + Windows </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> |