mdbx-doc: дополнение раздела "Containers" в README.

This commit is contained in:
Леонид Юрьев (Leonid Yuriev) 2025-04-28 14:38:38 +03:00
parent 3338551860
commit 0a96b2ad97
2 changed files with 10 additions and 4 deletions

View File

@ -555,9 +555,9 @@ Of course, in addition to this, your toolchain must ensure the reproducibility o
For more information please refer to [reproducible-builds.org](https://reproducible-builds.org/). For more information please refer to [reproducible-builds.org](https://reproducible-builds.org/).
#### Containers #### Containers
There are no special traits nor quirks if you use libmdbx ONLY inside the single container. There are no special traits nor quirks if you use _libmdbx_ ONLY inside
But in a cross-container cases or with a host-container(s) mix the two major things MUST be the single container. But in a cross-container(s) or with a host-container(s)
guaranteed: interoperability cases the three major things MUST be guaranteed:
1. Coherence of memory mapping content and unified page cache inside OS 1. Coherence of memory mapping content and unified page cache inside OS
kernel for host and all container(s) operated with a DB. Basically this kernel for host and all container(s) operated with a DB. Basically this
@ -573,6 +573,12 @@ in the system memory.
including `ERROR_ACCESS_DENIED`, including `ERROR_ACCESS_DENIED`,
but not the `ERROR_INVALID_PARAMETER` as for an invalid/non-existent PID. but not the `ERROR_INVALID_PARAMETER` as for an invalid/non-existent PID.
3. The versions/builds of _libmdbx_ and `libc`/`pthreads` (`glibc`, `musl`, etc) must be be compatible.
- Basically, the `options:` string in the output of `mdbx_chk -V` must be the same for host and container(s).
See `MDBX_LOCKING`, `MDBX_USE_OFDLOCKS` and other build options for details.
- Avoid using different versions of `libc`, especially mixing different implementations, i.e. `glibc` with `musl`, etc.
Prefer to use the same LTS version, or switch to full virtualization/isolation if in doubt.
#### DSO/DLL unloading and destructors of Thread-Local-Storage objects #### DSO/DLL unloading and destructors of Thread-Local-Storage objects
When building _libmdbx_ as a shared library or use static _libmdbx_ as a When building _libmdbx_ as a shared library or use static _libmdbx_ as a
part of another dynamic library, it is advisable to make sure that your part of another dynamic library, it is advisable to make sure that your