{"id":139913,"date":"2025-08-01T23:11:58","date_gmt":"2025-08-01T21:11:58","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-vstraivaemoj-subd-libmdbx-0-13-7"},"modified":"2025-08-01T23:11:58","modified_gmt":"2025-08-01T21:11:58","slug":"vypusk-vstraivaemoj-subd-libmdbx-0-13-7","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-vstraivaemoj-subd-libmdbx-0-13-7","title":{"rendered":"Publication de la base de donn\u00e9es embarqu\u00e9e libmdbx 0.13.7","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La sortie de la biblioth\u00e8que libmdbx 0.13.7 (MDBX) a \u00e9t\u00e9 publi\u00e9e, offrant une base de donn\u00e9es int\u00e9gr\u00e9e compacte et de haute performance de type cl\u00e9-valeur. Le code de libmdbx est distribu\u00e9 sous la licence Apache 2.0. Toutes les syst\u00e8mes d'exploitation et architectures modernes sont pris en charge, y compris l'EiBour 2000 en Russie. libmdbx propose une API d\u00e9velopp\u00e9e pour C++, ainsi que des liaisons soutenues par des passionn\u00e9s pour les langages Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, Deno et Scala. Parmi les projets utilisant libmdbx, on peut citer Isar, Erigon et Reth, ainsi que les d\u00e9veloppements des entreprises StarkWare et Positive Technologies.      <\/p>\n<p>Historiquement, libmdbx est une refonte approfondie de la base de donn\u00e9es LMDB et surpasse son pr\u00e9d\u00e9cesseur en termes de fiabilit\u00e9, de fonctionnalit\u00e9s et de performances. Compar\u00e9 \u00e0 LMDB, libmdbx accorde une grande attention \u00e0 la qualit\u00e9 du code, \u00e0 la stabilit\u00e9 de l'API, \u00e0 la testabilit\u00e9 et aux v\u00e9rifications automatiques. Un outil de v\u00e9rification de l'int\u00e9grit\u00e9 de la structure de la base de donn\u00e9es est \u00e9galement fourni, offrant certaines capacit\u00e9s de r\u00e9cup\u00e9ration. Techniquement, libmdbx propose ACID, une s\u00e9rialisation stricte des changements et une lecture non bloquante avec un scalabilit\u00e9 lin\u00e9aire sur les c\u0153urs CPU. La compression automatique, la gestion automatique de la taille de la base de donn\u00e9es et l'estimation de la taille des requ\u00eates par intervalles (range query estimation) sont \u00e9galement prises en charge.          <\/p>\n<p>Principales modifications :  <\/p>\n<ul>\n<li class=\"l\">Une erreur critique concernant la fonction mdbx_env_resurrect_after_fork() utilisant les s\u00e9maphores SysV a \u00e9t\u00e9 corrig\u00e9e. L'erreur ne se produisait qu'apr\u00e8s la cr\u00e9ation d'un processus enfant via fork() pendant une transaction d'\u00e9criture en cours, ce qui entra\u00eenait un fonctionnement incorrect des s\u00e9maphores et pouvait provoquer diverses erreurs, y compris des corruptions de base de donn\u00e9es. Le probl\u00e8me existait depuis l'apparition de mdbx_env_resurrect_after_fork() et touchait macOS ainsi que les plateformes POSIX lorsque compil\u00e9 avec l'option MDBX_LOCKING=5.\n<li class=\"l\">    Un probl\u00e8me dans l'API de copie de base de donn\u00e9es, qui se manifestait sur des syst\u00e8mes POSIX autres que Linux (principalement sur macOS), ainsi que dans certains cas o\u00f9 le fichier cible se trouvait sur un syst\u00e8me de fichiers non local, a \u00e9t\u00e9 r\u00e9solu. Ce probl\u00e8me entra\u00eenait le retour d'une erreur EWOULDBLOCK\/EAGAIN, d\u00fb \u00e0 un d\u00e9faut\/conflit de blocages fcntl(F_SETLK) et flock() dans le noyau du syst\u00e8me d'exploitation. La gestion des erreurs de capture de blocages de fichiers dans l'API de copie a \u00e9t\u00e9 retravaill\u00e9e sur les syst\u00e8mes POSIX.\n<li class=\"l\"> Une erreur entra\u00eenant un retour inattendu de MDBX_BAD_DBI lors du d\u00e9marrage simultan\u00e9 de plusieurs transactions dans un m\u00eame processus apr\u00e8s l'ouverture de la base de donn\u00e9es a \u00e9t\u00e9 corrig\u00e9e.\n<li class=\"l\"> Une erreur entra\u00eenant un retour inattendu de MDBX_DBS_FULL lors de la r\u00e9ouverture de tables d\u00e9j\u00e0 ouvertes, avec un nombre maximal de descripteurs DBI atteints, a \u00e9t\u00e9 corrig\u00e9e.\n<li class=\"l\"> Une erreur de compilation pour la plateforme Android lors de la d\u00e9finition explicite de _FILE_OFFSET_BITS a \u00e9t\u00e9 corrig\u00e9e.\n<li class=\"l\">  Une erreur dans l'utilisation d'ENOMEM au lieu de MDBX_ENOMEM a \u00e9t\u00e9 corrig\u00e9e. Cela pouvait casser la compilation sur des plateformes non-POSIX\/Windows, selon la configuration et\/ou la version du SDK.\n<li class=\"l\"> Plusieurs v\u00e9rifications assert incorrectes ont \u00e9t\u00e9 corrig\u00e9es ou supprim\u00e9es, qui entra\u00eenaient des plantages dans les builds de d\u00e9bogage dans des situations sp\u00e9cifiques. Principalement dans le code des fonctions txn_end(), txn_lock() et txn_unlock() tant sur Windows que sur POSIX.\n<li class=\"l\"> Les avertissements MSVC non essentiels ont \u00e9t\u00e9 corrig\u00e9s. Les avertissements C5286 et C5287 ont \u00e9t\u00e9 d\u00e9sactiv\u00e9s.\n<li class=\"l\">  La logique d'abandon des verrouillages OFD sur les plateformes POSIX a \u00e9t\u00e9 am\u00e9lior\u00e9e. D\u00e9sormais, en plus de EINVAL, des codes d'erreur suppl\u00e9mentaires (ENOSYS, ENOIMPL, ENOTSUP, ENOSUPP, EOPNOTSUPP) sont pris en compte, ce qui permettra \u00e0 la biblioth\u00e8que compil\u00e9e de fonctionner dans certains cas o\u00f9 le noyau\/conteneur\/\u00e9mulateur actuel ne prend pas en charge les appel syst\u00e8me requis.\n<li class=\"l\"> Le framework de test a \u00e9t\u00e9 enrichi d'un support pour l'option &#171;&#8212;numa &lt;num&gt;&#187; afin de lier le test stochastique \u00e0 un n\u0153ud NUMA. Le script battery\/tmux a \u00e9t\u00e9 modifi\u00e9 pour inclure une r\u00e9partition explicite entre les n\u0153uds NUMA, ce qui a consid\u00e9rablement augment\u00e9 l'efficacit\u00e9 lors des tests sur des machines NUMA.\n<li class=\"l\"> Un ordre de lancement al\u00e9atoire des tests individuels a \u00e9t\u00e9 impl\u00e9ment\u00e9 dans le script stochastique.    <\/ul>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=63653\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.13.7 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041a\u043e\u0434 libmdbx \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache 2.0. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432\u0441\u0435 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u0438\u0439 \u042d\u043b\u044c\u0431\u0440\u0443\u0441 2000. \u0414\u043b\u044f libmdbx \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u0432\u0438\u0442\u043e\u0435 API \u0434\u043b\u044f C++, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u044d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u0430\u043c\u0438 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0438 \u043a \u044f\u0437\u044b\u043a\u0430\u043c Rust, Haskell, Python, NodeJS, Ruby, Go, Nim, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-139913","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.13.7 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041a\u043e\u0434 libmdbx \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache 2.0.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-vstraivaemoj-subd-libmdbx-0-13-7\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0421\u0423\u0411\u0414 libmdbx 0.13.7 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.13.7 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041a\u043e\u0434 libmdbx \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache 2.0.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-vstraivaemoj-subd-libmdbx-0-13-7\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-08-01T21:11:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-08-01T21:11:58+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Publication de la SGBD int\u00e9gr\u00e9e libmdbx 0.13.7 | ProHoster","description":"La version de la biblioth\u00e8que libmdbx 0.13.7 (MDBX) a \u00e9t\u00e9 publi\u00e9e avec la mise en \u0153uvre d'une base de donn\u00e9es int\u00e9gr\u00e9e compacte, haute performance, de type cl\u00e9-valeur. Le code de libmdbx est distribu\u00e9 sous la licence Apache 2.0.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-vstraivaemoj-subd-libmdbx-0-13-7","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0421\u0423\u0411\u0414 libmdbx 0.13.7 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.13.7 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041a\u043e\u0434 libmdbx \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache 2.0.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-vstraivaemoj-subd-libmdbx-0-13-7","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-08-01T21:11:58+00:00","article:modified_time":"2025-08-01T21:11:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"139913","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 14:05:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 14:05:20","updated":"2026-01-23 14:05:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/139913","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=139913"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/139913\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=139913"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=139913"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=139913"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}