==> Synchronizing chroot copy [/home/alhp/workspace/chroot/root] -> [build_551a11d3-654b-4868-9a1a-7e9e4ed0f789]...done ==> Making package: python-lmdb 2.3.0-1.1 (Sun Aug 23 16:51:42 2026) ==> Retrieving sources... -> Downloading python-lmdb-2.3.0.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 953.5k 100 953.5k 0 0 1.29M 0 0 100 953.5k 100 953.5k 0 0 1.29M 0 0 100 953.5k 100 953.5k 0 0 1.29M 0 0 -> Found 010-python-lmdb-replace-pkg_resources-due-to-deprecation-in-setuptools-82.patch ==> Validating source files with sha256sums... python-lmdb-2.3.0.tar.gz ... Passed 010-python-lmdb-replace-pkg_resources-due-to-deprecation-in-setuptools-82.patch ... Passed Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. ==> Making package: python-lmdb 2.3.0-1.1 (Sun Aug 23 14:51:50 2026) ==> Checking runtime dependencies... ==> Installing missing dependencies... resolving dependencies... looking for conflicting packages... Package (2) New Version Net Change extra/python-pycparser 3.00-1 0.71 MiB extra/python-cffi 2.1.1-1 1.40 MiB Total Installed Size: 2.12 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-pycparser... installing python-cffi... Optional dependencies for python-cffi python-setuptools: "limited api" version checking in cffi.setuptools_ext :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... ==> Checking buildtime dependencies... ==> Installing missing dependencies... resolving dependencies... looking for conflicting packages... Package (18) New Version Net Change extra/python-autocommand 2.2.2-9 0.08 MiB extra/python-iniconfig 2.3.0-1 0.07 MiB extra/python-jaraco.collections 5.1.0-3 0.11 MiB extra/python-jaraco.context 6.1.2-1 0.06 MiB extra/python-jaraco.functools 4.1.0-3 0.07 MiB extra/python-jaraco.text 4.0.0-4 0.08 MiB extra/python-more-itertools 11.1.0-1 0.77 MiB extra/python-packaging 26.3-1 1.58 MiB extra/python-platformdirs 4.11.3-1 0.46 MiB extra/python-pluggy 1.6.0-3 0.23 MiB extra/python-pygments 2.20.0-1 15.36 MiB extra/python-pyproject-hooks 1.2.0-6 0.11 MiB extra/python-build 1.4.3-1 0.26 MiB extra/python-installer 1.0.0-1 0.20 MiB extra/python-patch-ng 1.19.1-1 0.17 MiB extra/python-pytest 1:9.0.3-1 4.86 MiB extra/python-setuptools 1:84.0.0-1 4.92 MiB extra/python-wheel 0.48.0-1 0.34 MiB Total Installed Size: 29.73 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing python-packaging... installing python-pyproject-hooks... installing python-build... Optional dependencies for python-build python-pip: to use as the Python package installer (default) python-uv: to use as the Python package installer python-virtualenv: to use virtualenv for build isolation installing python-installer... installing python-patch-ng... installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing python-jaraco.text... Optional dependencies for python-jaraco.text python-inflect: for show-newlines script installing python-jaraco.collections... installing python-platformdirs... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures python-setuptools: for legacy bdist_wheel subcommand [pending] installing python-setuptools... installing python-iniconfig... installing python-pluggy... installing python-pygments... installing python-pytest... :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... ==> Retrieving sources... -> Found python-lmdb-2.3.0.tar.gz -> Found 010-python-lmdb-replace-pkg_resources-due-to-deprecation-in-setuptools-82.patch ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources... -> Extracting python-lmdb-2.3.0.tar.gz with bsdtar ==> Starting prepare()... patching file examples/keystore/webapi.py ==> Starting build()... * Getting build dependencies for wheel... patching file lmdb.h patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c py-lmdb: Using bundled liblmdb with py-lmdb patches; override with LMDB_FORCE_SYSTEM=1 or LMDB_PURE=1. py-lmdb: Using CPython extension; override with LMDB_FORCE_CFFI=1. running egg_info creating lmdb.egg-info writing lmdb.egg-info/PKG-INFO writing dependency_links to lmdb.egg-info/dependency_links.txt writing top-level names to lmdb.egg-info/top_level.txt writing manifest file 'lmdb.egg-info/SOURCES.txt' reading manifest file 'lmdb.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'docs/_build' no previously-included directories found matching 'lmdb/__pycache__' adding license file 'LICENSE' writing manifest file 'lmdb.egg-info/SOURCES.txt' * Building wheel... patching file lmdb.h patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c patching file mdb.c py-lmdb: Using bundled liblmdb with py-lmdb patches; override with LMDB_FORCE_SYSTEM=1 or LMDB_PURE=1. py-lmdb: Using CPython extension; override with LMDB_FORCE_CFFI=1. running bdist_wheel running build running build_py creating build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/__init__.py -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/__main__.py -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/aio.py -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/cffi.py -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/tool.py -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/_config.py -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/__init__.pyi -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/aio.pyi -> build/lib.linux-x86_64-cpython-314/lmdb copying lmdb/py.typed -> build/lib.linux-x86_64-cpython-314/lmdb running build_ext building 'cpython' extension gcc -march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/python-lmdb -flto=auto -falign-functions=32 -fPIC -Ilib/py-lmdb -I/startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib -I/startdir/src/py-lmdb-py-lmdb_2.3.0/lib/py-lmdb -I/usr/include/python3.14 -c /startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib/mdb.c -o build/temp.linux-x86_64-cpython-314/startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib/mdb.o -DHAVE_PATCHED_LMDB=1 -UNDEBUG -w gcc -march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/python-lmdb -flto=auto -falign-functions=32 -fPIC -Ilib/py-lmdb -I/startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib -I/startdir/src/py-lmdb-py-lmdb_2.3.0/lib/py-lmdb -I/usr/include/python3.14 -c /startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib/midl.c -o build/temp.linux-x86_64-cpython-314/startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib/midl.o -DHAVE_PATCHED_LMDB=1 -UNDEBUG -w gcc -march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/python-lmdb -flto=auto -falign-functions=32 -fPIC -Ilib/py-lmdb -I/startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib -I/startdir/src/py-lmdb-py-lmdb_2.3.0/lib/py-lmdb -I/usr/include/python3.14 -c lmdb/cpython.c -o build/temp.linux-x86_64-cpython-314/lmdb/cpython.o -DHAVE_PATCHED_LMDB=1 -UNDEBUG -w gcc -shared -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -falign-functions=32 -march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/python-lmdb -flto=auto -falign-functions=32 build/temp.linux-x86_64-cpython-314/startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib/mdb.o build/temp.linux-x86_64-cpython-314/startdir/src/py-lmdb-py-lmdb_2.3.0/build/lib/midl.o build/temp.linux-x86_64-cpython-314/lmdb/cpython.o -L/usr/lib -o build/lib.linux-x86_64-cpython-314/lmdb/cpython.cpython-314-x86_64-linux-gnu.so installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/__init__.py -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/__main__.py -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/aio.py -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/cffi.py -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/tool.py -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/_config.py -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/__init__.pyi -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/aio.pyi -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/py.typed -> build/bdist.linux-x86_64/wheel/./lmdb copying build/lib.linux-x86_64-cpython-314/lmdb/cpython.cpython-314-x86_64-linux-gnu.so -> build/bdist.linux-x86_64/wheel/./lmdb running install_egg_info running egg_info writing lmdb.egg-info/PKG-INFO writing dependency_links to lmdb.egg-info/dependency_links.txt writing top-level names to lmdb.egg-info/top_level.txt reading manifest file 'lmdb.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'docs/_build' no previously-included directories found matching 'lmdb/__pycache__' adding license file 'LICENSE' writing manifest file 'lmdb.egg-info/SOURCES.txt' Copying lmdb.egg-info to build/bdist.linux-x86_64/wheel/./lmdb-2.3.0-py3.14.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/lmdb-2.3.0.dist-info/WHEEL creating '/startdir/src/py-lmdb-py-lmdb_2.3.0/dist/.tmp-rms8wpyl/lmdb-2.3.0-cp314-cp314-linux_x86_64.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'lmdb/__init__.py' adding 'lmdb/__init__.pyi' adding 'lmdb/__main__.py' adding 'lmdb/_config.py' adding 'lmdb/aio.py' adding 'lmdb/aio.pyi' adding 'lmdb/cffi.py' adding 'lmdb/cpython.cpython-314-x86_64-linux-gnu.so' adding 'lmdb/py.typed' adding 'lmdb/tool.py' adding 'lmdb-2.3.0.dist-info/licenses/LICENSE' adding 'lmdb-2.3.0.dist-info/METADATA' adding 'lmdb-2.3.0.dist-info/WHEEL' adding 'lmdb-2.3.0.dist-info/top_level.txt' adding 'lmdb-2.3.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Successfully built lmdb-2.3.0-cp314-cp314-linux_x86_64.whl ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.14.7, pytest-9.0.3, pluggy-1.6.0 -- /usr/bin/python cachedir: .pytest_cache rootdir: /startdir/src/py-lmdb-py-lmdb_2.3.0 configfile: pyproject.toml collecting ... collected 416 items / 40 deselected / 376 selected tests/aio_test.py::WrapTest::test_wrap_custom_executor PASSED [ 0%] tests/aio_test.py::WrapTest::test_wrap_returns_async_env PASSED [ 0%] tests/aio_test.py::AsyncEnvTest::test_context_manager PASSED [ 0%] tests/aio_test.py::AsyncEnvTest::test_info PASSED [ 1%] tests/aio_test.py::AsyncEnvTest::test_stat PASSED [ 1%] tests/aio_test.py::AsyncEnvTest::test_sync_methods_not_awaitable PASSED [ 1%] tests/aio_test.py::AsyncTxnTest::test_abort_on_exception PASSED [ 1%] tests/aio_test.py::AsyncTxnTest::test_delete PASSED [ 2%] tests/aio_test.py::AsyncTxnTest::test_id_sync PASSED [ 2%] tests/aio_test.py::AsyncTxnTest::test_pop PASSED [ 2%] tests/aio_test.py::AsyncTxnTest::test_put_get PASSED [ 2%] tests/aio_test.py::AsyncTxnTest::test_replace PASSED [ 3%] tests/aio_test.py::AsyncTxnTest::test_stat PASSED [ 3%] tests/aio_test.py::AsyncCursorTest::test_count PASSED [ 3%] tests/aio_test.py::AsyncCursorTest::test_cursor_delete PASSED [ 3%] tests/aio_test.py::AsyncCursorTest::test_cursor_put_and_navigate PASSED [ 4%] tests/aio_test.py::AsyncCursorTest::test_iternext PASSED [ 4%] tests/aio_test.py::AsyncCursorTest::test_iternext_keys_only PASSED [ 4%] tests/aio_test.py::AsyncCursorTest::test_iterprev PASSED [ 5%] tests/aio_test.py::AsyncCursorTest::test_key_value_item_sync PASSED [ 5%] tests/aio_test.py::AsyncCursorTest::test_set_key PASSED [ 5%] tests/aio_test.py::AsyncCursorTest::test_set_range PASSED [ 5%] tests/aio_test.py::AsyncConcurrencyTest::test_concurrent_reads PASSED [ 6%] tests/aio_test.py::WriteExecutorTest::test_explicit_commit_then_context_exit_is_noop PASSED [ 6%] tests/aio_test.py::WriteExecutorTest::test_private_executor_released_on_abort PASSED [ 6%] tests/aio_test.py::WriteExecutorTest::test_private_executor_released_on_commit PASSED [ 6%] tests/aio_test.py::WriteExecutorTest::test_read_txn_uses_env_executor PASSED [ 7%] tests/aio_test.py::WriteExecutorTest::test_write_txn_gets_private_single_thread_executor PASSED [ 7%] tests/aio_test.py::WriteExecutorTest::test_writes_with_multithread_env_executor PASSED [ 7%] tests/aio_test.py::IntrospectionTest::test_all_public_methods_proxied PASSED [ 7%] tests/aio_test.py::IntrospectionTest::test_async_method_metadata PASSED [ 8%] tests/aio_test.py::IntrospectionTest::test_methods_are_real_attributes PASSED [ 8%] tests/aio_test.py::IntrospectionTest::test_passthrough_is_not_a_coroutine PASSED [ 8%] tests/aio_test.py::GetattrFallbackTest::test_fallback SKIPPED (CFFI- only) [ 9%] tests/crash_test.py::CrashTest::testCloseWithTxn PASSED [ 9%] tests/crash_test.py::CrashTest::testDbCloseActiveIter PASSED [ 9%] tests/crash_test.py::CrashTest::testDoubleClose PASSED [ 9%] tests/crash_test.py::CrashTest::testOldCrash PASSED [ 10%] tests/crash_test.py::CrashTest::testTxnCloseActiveIter PASSED [ 10%] tests/crash_test.py::IteratorTest::testEmpty PASSED [ 10%] tests/crash_test.py::IteratorTest::testFilled PASSED [ 10%] tests/crash_test.py::IteratorTest::testFilledSkipEof PASSED [ 11%] tests/crash_test.py::IteratorTest::testFilledSkipForward PASSED [ 11%] tests/crash_test.py::IteratorTest::testFilledSkipReverse PASSED [ 11%] tests/crash_test.py::BigReverseTest::test_big_reverse PASSED [ 11%] tests/crash_test.py::MultiCursorDeleteTest::test1 PASSED [ 12%] tests/crash_test.py::MultiCursorDeleteTest::test_monster PASSED [ 12%] tests/crash_test.py::TxnFullTest::test_17bf75b12eb94d9903cd62329048b146d5313bad PASSED [ 12%] tests/crash_test.py::EmptyIterTest::test_python3_iternext_segfault PASSED [ 13%] tests/crash_test.py::MultiputTest::test_multiput_segfault PASSED [ 13%] tests/crash_test.py::InvalidArgTest::test_duplicate_arg PASSED [ 13%] tests/crash_test.py::BadCursorTest::test_cursor_open_failure PASSED [ 13%] tests/crash_test.py::CloseRaceTest::test_close_get_race PASSED [ 14%] tests/crash_test.py::CloseRefcountRaceTest::test_close_dealloc_race PASSED [ 14%] tests/crash_test.py::WriteDeallocloseRaceTest::test_close_with_active_write_txn PASSED [ 14%] tests/crash_test.py::WriteDeallocloseRaceTest::test_write_dealloc_close_race PASSED [ 14%] tests/crash_test.py::TxnAbortDuringOpTest::test_abort_during_cursor_op PASSED [ 15%] tests/crash_test.py::TxnAbortDuringOpTest::test_abort_during_get PASSED [ 15%] tests/crash_test.py::ChildCommitRaceTest::test_parent_abort_during_child_commit PASSED [ 15%] tests/crash_test.py::MapResizeTest::test_opendb_resize PASSED [ 15%] tests/cursor_test.py::ContextManagerTest::test_crash PASSED [ 16%] tests/cursor_test.py::ContextManagerTest::test_ok PASSED [ 16%] tests/cursor_test.py::CursorTest::testCount PASSED [ 16%] tests/cursor_test.py::CursorTest::testDeleteEmpty PASSED [ 17%] tests/cursor_test.py::CursorTest::testDeleteFirst PASSED [ 17%] tests/cursor_test.py::CursorTest::testDeleteLast PASSED [ 17%] tests/cursor_test.py::CursorTest::testFirstFilled PASSED [ 17%] tests/cursor_test.py::CursorTest::testFirstLastEmpty PASSED [ 18%] tests/cursor_test.py::CursorTest::testKeyValueItemEmpty PASSED [ 18%] tests/cursor_test.py::CursorTest::testLastFilled PASSED [ 18%] tests/cursor_test.py::CursorTest::testPut PASSED [ 18%] tests/cursor_test.py::CursorTest::testSetKey PASSED [ 19%] tests/cursor_test.py::CursorTest::testSetRange PASSED [ 19%] tests/cursor_test.py::CursorTest2::testIterWithDeletes PASSED [ 19%] tests/cursor_test.py::CursorTest2::testNextNodupAfterDeletePutMultipleKeys PASSED [ 19%] tests/cursor_test.py::CursorTest2::testNextNodupAfterDeletePutSingleKey PASSED [ 20%] tests/cursor_test.py::CursorTest2::testPrevNodupAfterDeletePutSingleKey PASSED [ 20%] tests/cursor_test.py::PutmultiTest::test_2list PASSED [ 20%] tests/cursor_test.py::PutmultiTest::test_2list_preserve PASSED [ 21%] tests/cursor_test.py::PutmultiTest::test_bad_seq1 PASSED [ 21%] tests/cursor_test.py::PutmultiTest::test_dupsort PASSED [ 21%] tests/cursor_test.py::PutmultiTest::test_dupsort_put_append PASSED [ 21%] tests/cursor_test.py::PutmultiTest::test_dupsort_putmulti_append PASSED [ 22%] tests/cursor_test.py::PutmultiTest::test_empty_seq PASSED [ 22%] tests/cursor_test.py::ReplaceTest::test_replace PASSED [ 22%] tests/cursor_test.py::ContextManagerTest2::test_close PASSED [ 22%] tests/cursor_test.py::ContextManagerTest2::test_double_close PASSED [ 23%] tests/cursor_test.py::ContextManagerTest2::test_enter PASSED [ 23%] tests/cursor_test.py::ContextManagerTest2::test_exit_failure PASSED [ 23%] tests/cursor_test.py::ContextManagerTest2::test_exit_success PASSED [ 23%] tests/cursor_test.py::PreloadTest::test_preload PASSED [ 24%] tests/cursor_test.py::CursorReadOnlyTest::test_cursor_readonly PASSED [ 24%] tests/cve_test.py::CVE_2019_16224_Test::test_corrupt_free_dbi_flags PASSED [ 24%] tests/cve_test.py::CVE_2019_16224_Test::test_corrupt_main_dbi_flags PASSED [ 25%] tests/cve_test.py::CVE_2019_16224_Test::test_valid_dupsort_dupfixed_still_works PASSED [ 25%] tests/cve_test.py::CVE_2019_16225_Test::test_corrupt_leaf_page_dirty_flag PASSED [ 25%] tests/cve_test.py::CVE_2019_16226_Test::test_corrupt_node_mn_hi PASSED [ 25%] tests/cve_test.py::CVE_2019_16227_Test::test_corrupt_node_dupdata_flag PASSED [ 26%] tests/cve_test.py::CVE_2019_16228_Test::test_non_power_of_2_page_size PASSED [ 26%] tests/cve_test.py::CVE_2019_16228_Test::test_zero_page_size PASSED [ 26%] tests/cve_test.py::PageBoundsTest::test_corrupt_mp_lower_gt_upper PASSED [ 26%] tests/cve_test.py::PageBoundsTest::test_corrupt_mp_lower_underflow PASSED [ 27%] tests/cve_test.py::PageBoundsTest::test_corrupt_mp_upper_overflow PASSED [ 27%] tests/cve_test.py::NodeReadSizeTest::test_corrupt_mn_hi_read PASSED [ 27%] tests/cve_test.py::SubpageBoundsTest::test_corrupt_subpage_mp_upper PASSED [ 27%] tests/cve_test.py::XcursorNodeDszTest::test_corrupt_subdata_node_size PASSED [ 28%] tests/cve_test.py::Leaf2KeySizeTest::test_corrupt_mp_pad_huge PASSED [ 28%] tests/cve_test.py::Leaf2KeySizeTest::test_corrupt_mp_pad_zero PASSED [ 28%] tests/cve_test.py::XcursorNullD3D4Test::test_cursor_del_xcursor_null PASSED [ 28%] tests/cve_test.py::XcursorNullD3D4Test::test_get_current_xcursor_null PASSED [ 29%] tests/cve_test.py::PageSplitNodeDszTest::test_corrupt_nodedsz_triggers_split_error PASSED [ 29%] tests/cve_test.py::NodeShrinkUnderflowTest::test_corrupt_subpage_upper_shrink PASSED [ 29%] tests/cve_test.py::OverflowPagesTest::test_corrupt_overflow_mp_pages PASSED [ 30%] tests/cve_test.py::CursorPutNodeDszTest::test_corrupt_nodedsz_put_overwrite PASSED [ 30%] tests/cve_test.py::CursorPutNodeDszTest::test_overwrite_bigdata_not_rejected PASSED [ 30%] tests/cve_test.py::MdDepthTest::test_corrupt_md_depth PASSED [ 30%] tests/cve_test.py::MdRootMetaTest::test_corrupt_md_root_to_meta_page PASSED [ 31%] tests/env_test.py::VersionTest::test_version PASSED [ 31%] tests/env_test.py::VersionTest::test_version_subpatch PASSED [ 31%] tests/env_test.py::OpenTest::test_bad_paths PASSED [ 31%] tests/env_test.py::OpenTest::test_bad_size PASSED [ 32%] tests/env_test.py::OpenTest::test_lock PASSED [ 32%] tests/env_test.py::OpenTest::test_map_async PASSED [ 32%] tests/env_test.py::OpenTest::test_max_dbs PASSED [ 32%] tests/env_test.py::OpenTest::test_max_readers PASSED [ 33%] tests/env_test.py::OpenTest::test_meminit PASSED [ 33%] tests/env_test.py::OpenTest::test_metasync PASSED [ 33%] tests/env_test.py::OpenTest::test_mode_subdir_create PASSED [ 34%] tests/env_test.py::OpenTest::test_mode_subdir_nocreate PASSED [ 34%] tests/env_test.py::OpenTest::test_ok_path PASSED [ 34%] tests/env_test.py::OpenTest::test_open_same_path_after_close PASSED [ 34%] tests/env_test.py::OpenTest::test_open_same_path_twice PASSED [ 35%] tests/env_test.py::OpenTest::test_readahead PASSED [ 35%] tests/env_test.py::OpenTest::test_readonly_false PASSED [ 35%] tests/env_test.py::OpenTest::test_readonly_true_exist PASSED [ 35%] tests/env_test.py::OpenTest::test_readonly_true_noexist PASSED [ 36%] tests/env_test.py::OpenTest::test_subdir_false_junk PASSED [ 36%] tests/env_test.py::OpenTest::test_subdir_false_ok PASSED [ 36%] tests/env_test.py::OpenTest::test_subdir_true_exist_create PASSED [ 36%] tests/env_test.py::OpenTest::test_subdir_true_exist_nocreate PASSED [ 37%] tests/env_test.py::OpenTest::test_subdir_true_noexist_create PASSED [ 37%] tests/env_test.py::OpenTest::test_subdir_true_noexist_nocreate PASSED [ 37%] tests/env_test.py::OpenTest::test_sync PASSED [ 38%] tests/env_test.py::OpenTest::test_tiny_size PASSED [ 38%] tests/env_test.py::OpenTest::test_writemap PASSED [ 38%] tests/env_test.py::SetMapSizeTest::test_applied PASSED [ 38%] tests/env_test.py::SetMapSizeTest::test_data_survives PASSED [ 39%] tests/env_test.py::SetMapSizeTest::test_invalid PASSED [ 39%] tests/env_test.py::SetMapSizeTest::test_invalidates_cursor PASSED [ 39%] tests/env_test.py::SetMapSizeTest::test_invalidates_txn PASSED [ 39%] tests/env_test.py::SetMapSizeTest::test_multiple_resizes PASSED [ 40%] tests/env_test.py::SetMapSizeTest::test_named_dbs_after_resize PASSED [ 40%] tests/env_test.py::SetMapSizeTest::test_negative PASSED [ 40%] tests/env_test.py::SetMapSizeTest::test_rejects_with_write_txn PASSED [ 40%] tests/env_test.py::SetMapSizeTest::test_retained_main_db_handle_survives_resize PASSED [ 41%] tests/env_test.py::SetMapSizeTest::test_retained_named_db_handle_survives_resize PASSED [ 41%] tests/env_test.py::SetMapSizeTest::test_write_after_resize PASSED [ 41%] tests/env_test.py::SetMapSizeConcurrencyTest::test_resize_vs_ops_stress FAILED [ 42%] tests/env_test.py::CloseTest::test_close PASSED [ 42%] tests/env_test.py::ContextManagerTest::test_crash PASSED [ 42%] tests/env_test.py::ContextManagerTest::test_ok PASSED [ 42%] tests/env_test.py::InfoMethodsTest::test_flags PASSED [ 43%] tests/env_test.py::InfoMethodsTest::test_info PASSED [ 43%] tests/env_test.py::InfoMethodsTest::test_max_key_size PASSED [ 43%] tests/env_test.py::InfoMethodsTest::test_max_readers PASSED [ 43%] tests/env_test.py::InfoMethodsTest::test_path PASSED [ 44%] tests/env_test.py::InfoMethodsTest::test_readers PASSED [ 44%] tests/env_test.py::InfoMethodsTest::test_stat PASSED [ 44%] tests/env_test.py::OtherMethodsTest::test_copy PASSED [ 44%] tests/env_test.py::OtherMethodsTest::test_copy_compact PASSED [ 45%] tests/env_test.py::OtherMethodsTest::test_copyfd PASSED [ 45%] tests/env_test.py::OtherMethodsTest::test_copyfd_compact PASSED [ 45%] tests/env_test.py::OtherMethodsTest::test_reader_check PASSED [ 46%] tests/env_test.py::OtherMethodsTest::test_sync PASSED [ 46%] tests/env_test.py::BeginTest::test_begin_closed PASSED [ 46%] tests/env_test.py::BeginTest::test_begin_readonly PASSED [ 46%] tests/env_test.py::BeginTest::test_begin_write PASSED [ 47%] tests/env_test.py::BeginTest::test_bind_db PASSED [ 47%] tests/env_test.py::BeginTest::test_buffers PASSED [ 47%] tests/env_test.py::BeginTest::test_parent PASSED [ 47%] tests/env_test.py::BeginTest::test_parent_readonly PASSED [ 48%] tests/env_test.py::OpenDbTest::test_flags PASSED [ 48%] tests/env_test.py::OpenDbTest::test_main PASSED [ 48%] tests/env_test.py::OpenDbTest::test_readonly_env_main PASSED [ 48%] tests/env_test.py::OpenDbTest::test_readonly_env_sub PASSED [ 49%] tests/env_test.py::OpenDbTest::test_readonly_env_sub_eperm PASSED [ 49%] tests/env_test.py::OpenDbTest::test_readonly_env_sub_noexist PASSED [ 49%] tests/env_test.py::OpenDbTest::test_reopen PASSED [ 50%] tests/env_test.py::OpenDbTest::test_sub_notxn PASSED [ 50%] tests/env_test.py::OpenDbTest::test_sub_rotxn PASSED [ 50%] tests/env_test.py::OpenDbTest::test_sub_txn PASSED [ 50%] tests/env_test.py::OpenDbTest::test_unicode PASSED [ 51%] tests/env_test.py::DbsTest::test_closed PASSED [ 51%] tests/env_test.py::DbsTest::test_empty PASSED [ 51%] tests/env_test.py::DbsTest::test_mixed_main_db PASSED [ 51%] tests/env_test.py::DbsTest::test_named PASSED [ 52%] tests/env_test.py::DbsTest::test_with_txn PASSED [ 52%] tests/env_test.py::SpareTxnTest::test_none PASSED [ 52%] tests/env_test.py::SpareTxnTest::test_one PASSED [ 52%] tests/env_test.py::LeakTest::test_open_close_does_not_leak PASSED [ 53%] tests/env_test.py::LeakTest::test_open_unref_does_not_leak PASSED [ 53%] tests/env_test.py::LeakTest::test_weakref_callback_invoked_once PASSED [ 53%] tests/getmulti_test.py::GetMultiTestNoDupsortNoDupfixed::testGetMulti PASSED [ 53%] tests/getmulti_test.py::GetMultiTestValuesOff::testValuesOff PASSED [ 54%] tests/getmulti_test.py::GetMultiTestValuesOff::testValuesOffEmpty PASSED [ 54%] tests/getmulti_test.py::GetMultiTestValuesOff::testValuesOffMissing PASSED [ 54%] tests/getmulti_test.py::GetMultiTestDupsortNoDupfixed::testGetMulti PASSED [ 55%] tests/getmulti_test.py::GetMultiTestDupsortNoDupfixed::testValuesOffDupdataRaises PASSED [ 55%] tests/getmulti_test.py::GetMultiTestDupsortNoDupfixed::testValuesOffNoDupdata PASSED [ 55%] tests/getmulti_test.py::GetMultiTestDupsortDupfixed::testGetMulti PASSED [ 55%] tests/getmulti_test.py::GetMultiTestDupsortDupfixedKeyfixed::testGetMulti PASSED [ 56%] tests/iteration_test.py::IterationTest::testFromExistentKeySetKey PASSED [ 56%] tests/iteration_test.py::IterationTest::testFromExistentKeySetRange PASSED [ 56%] tests/iteration_test.py::IterationTest::testFromLastKey PASSED [ 56%] tests/iteration_test.py::IterationTest::testFromNonExistentKeyPastEnd PASSED [ 57%] tests/iteration_test.py::IterationTest::testFromNonExistentKeySetRange PASSED [ 57%] tests/iteration_test.py::IterationTest::testFromStart PASSED [ 57%] tests/iteration_test.py::IterationTest::testFromStartWithIternext PASSED [ 57%] tests/iteration_test.py::IterationTest::testFromStartWithNext PASSED [ 58%] tests/iteration_test.py::ReverseIterationTest::testFromExistentKeySetKeyRev PASSED [ 58%] tests/iteration_test.py::ReverseIterationTest::testFromExistentKeySetRangeRev PASSED [ 58%] tests/iteration_test.py::ReverseIterationTest::testFromLastKeyRev PASSED [ 59%] tests/iteration_test.py::ReverseIterationTest::testFromLastKeyWithPrevRev PASSED [ 59%] tests/iteration_test.py::ReverseIterationTest::testFromNonExistentKeyPastEndRev PASSED [ 59%] tests/iteration_test.py::ReverseIterationTest::testFromNonExistentKeySetRangeRev PASSED [ 59%] tests/iteration_test.py::ReverseIterationTest::testFromStartRev PASSED [ 60%] tests/iteration_test.py::SeekIterationTest::testDeleteDuringIteration PASSED [ 60%] tests/iteration_test.py::SeekIterationTest::testForwardIterationSeek PASSED [ 60%] tests/iteration_test.py::SeekIterationTest::testPutDuringIteration PASSED [ 60%] tests/large_write_test.py::LargeWriteTest::test_commit_extent_at_2gib_boundary SKIPPED [ 61%] tests/large_write_test.py::LargeWriteTest::test_commit_large_overflow_value SKIPPED [ 61%] tests/large_write_test.py::LargeWriteTest::test_compact_copy_large_overflow_value SKIPPED [ 61%] tests/overflow_test.py::OverflowCompactCopyTest::test_multipage_overflow_value PASSED [ 61%] tests/overflow_test.py::OverflowCompactCopyTest::test_several_overflow_values PASSED [ 62%] tests/overflow_test.py::HugeValueCompactCopyTest::test_maxdatasize_value_survives_compact_copy SKIPPED [ 62%] tests/package_test.py::PackageExportsTest::test_exports PASSED [ 62%] tests/tool_test.py::ToBytes::test_empty PASSED [ 63%] tests/tool_test.py::ToBytes::test_int PASSED [ 63%] tests/tool_test.py::ToBytes::test_str PASSED [ 63%] tests/tool_test.py::ToBytes::test_unicode PASSED [ 63%] tests/tool_test.py::IsprintTest::test_letter PASSED [ 64%] tests/tool_test.py::IsprintTest::test_newline PASSED [ 64%] tests/tool_test.py::IsprintTest::test_null PASSED [ 64%] tests/tool_test.py::IsprintTest::test_space PASSED [ 64%] tests/tool_test.py::IsprintTest::test_tab PASSED [ 65%] tests/tool_test.py::XxdTest::test_16_bytes PASSED [ 65%] tests/tool_test.py::XxdTest::test_17_bytes PASSED [ 65%] tests/tool_test.py::XxdTest::test_empty PASSED [ 65%] tests/tool_test.py::XxdTest::test_nonprintable PASSED [ 66%] tests/tool_test.py::XxdTest::test_short PASSED [ 66%] tests/tool_test.py::DeltaTest::test_basic PASSED [ 66%] tests/tool_test.py::DeltaTest::test_single_element PASSED [ 67%] tests/tool_test.py::DeltaTest::test_two_elements PASSED [ 67%] tests/tool_test.py::DieTest::test_no_args PASSED [ 67%] tests/tool_test.py::DieTest::test_raises_system_exit PASSED [ 67%] tests/tool_test.py::MakeParserTest::test_defaults PASSED [ 68%] tests/tool_test.py::MakeParserTest::test_parse_env PASSED [ 68%] tests/tool_test.py::MakeParserTest::test_returns_parser PASSED [ 68%] tests/tool_test.py::DumpCursorToFpTest::test_empty_db PASSED [ 68%] tests/tool_test.py::DumpCursorToFpTest::test_roundtrip PASSED [ 69%] tests/tool_test.py::RestoreCursorFromFpTest::test_bad_length PASSED [ 69%] tests/tool_test.py::RestoreCursorFromFpTest::test_bad_line_ending PASSED [ 69%] tests/tool_test.py::RestoreCursorFromFpTest::test_bad_plus PASSED [ 69%] tests/tool_test.py::RestoreCursorFromFpTest::test_bad_separator PASSED [ 70%] tests/tool_test.py::RestoreCursorFromFpTest::test_basic PASSED [ 70%] tests/tool_test.py::RestoreCursorFromFpTest::test_dump_restore_roundtrip PASSED [ 70%] tests/tool_test.py::RestoreCursorFromFpTest::test_empty PASSED [ 71%] tests/tool_test.py::RestoreCursorFromFpTest::test_short_data PASSED [ 71%] tests/tool_test.py::MainErrorTest::test_bad_command PASSED [ 71%] tests/tool_test.py::MainErrorTest::test_no_command PASSED [ 71%] tests/tool_test.py::MainErrorTest::test_no_env PASSED [ 72%] tests/tool_test.py::CmdStatTest::test_stat PASSED [ 72%] tests/tool_test.py::CmdGetTest::test_get_existing PASSED [ 72%] tests/tool_test.py::CmdGetTest::test_get_missing PASSED [ 72%] tests/tool_test.py::CmdGetTest::test_get_multiple PASSED [ 73%] tests/tool_test.py::CmdGetTest::test_get_subdb PASSED [ 73%] tests/tool_test.py::CmdGetTest::test_get_xxd PASSED [ 73%] tests/tool_test.py::CmdCopyTest::test_copy PASSED [ 73%] tests/tool_test.py::CmdCopyTest::test_copy_compact PASSED [ 74%] tests/tool_test.py::CmdCopyTest::test_copy_existing_target PASSED [ 74%] tests/tool_test.py::CmdCopyTest::test_copy_no_args PASSED [ 74%] tests/tool_test.py::CmdCopyfdTest::test_copyfd PASSED [ 75%] tests/tool_test.py::CmdCopyfdTest::test_copyfd_bad_fd PASSED [ 75%] tests/tool_test.py::CmdCopyfdTest::test_copyfd_with_args PASSED [ 75%] tests/tool_test.py::CmdDumpRestoreTest::test_dump_main PASSED [ 75%] tests/tool_test.py::CmdDumpRestoreTest::test_dump_named PASSED [ 76%] tests/tool_test.py::CmdDumpRestoreTest::test_dump_restore_roundtrip PASSED [ 76%] tests/tool_test.py::CmdDumpRestoreTest::test_dump_subdb_roundtrip PASSED [ 76%] tests/tool_test.py::DbMapFromArgsTest::test_duplicate_db PASSED [ 76%] tests/tool_test.py::DbMapFromArgsTest::test_missing_equals PASSED [ 77%] tests/tool_test.py::DbMapFromArgsTest::test_no_args PASSED [ 77%] tests/tool_test.py::CmdDropTest::test_drop_main_fails PASSED [ 77%] tests/tool_test.py::CmdDropTest::test_drop_no_args PASSED [ 77%] tests/tool_test.py::CmdDropTest::test_drop_subdb PASSED [ 78%] tests/tool_test.py::CmdEditTest::test_add_file PASSED [ 78%] tests/tool_test.py::CmdEditTest::test_add_new_key PASSED [ 78%] tests/tool_test.py::CmdEditTest::test_add_no_overwrite PASSED [ 78%] tests/tool_test.py::CmdEditTest::test_delete PASSED [ 79%] tests/tool_test.py::CmdEditTest::test_edit_with_positional_args_fails PASSED [ 79%] tests/tool_test.py::CmdEditTest::test_multiple_operations PASSED [ 79%] tests/tool_test.py::CmdEditTest::test_set PASSED [ 80%] tests/tool_test.py::CmdEditTest::test_set_file PASSED [ 80%] tests/tool_test.py::CmdEditTest::test_set_overwrite PASSED [ 80%] tests/tool_test.py::CmdReadersTest::test_readers PASSED [ 80%] tests/tool_test.py::CmdReadersTest::test_readers_clean PASSED [ 81%] tests/tool_test.py::CmdRewriteTest::test_rewrite_main PASSED [ 81%] tests/tool_test.py::CmdRewriteTest::test_rewrite_no_target PASSED [ 81%] tests/tool_test.py::CmdRewriteTest::test_rewrite_subdb PASSED [ 81%] tests/tool_test.py::CmdWarmTest::test_warm PASSED [ 82%] tests/tool_test.py::CmdWarmTest::test_warm_single_file PASSED [ 82%] tests/tool_test.py::CmdWatchTest::test_watch_csv_interrupt PASSED [ 82%] tests/tool_test.py::CmdWatchTest::test_watch_terminal_interrupt PASSED [ 82%] tests/tool_test.py::MainDispatchTest::test_map_size_option PASSED [ 83%] tests/tool_test.py::MainDispatchTest::test_readonly_option PASSED [ 83%] tests/tool_test.py::MainDispatchTest::test_stat_via_main PASSED [ 83%] tests/tool_test.py::MainDispatchTest::test_subdb_option PASSED [ 84%] tests/txn_test.py::InitTest::test_begin_write PASSED [ 84%] tests/txn_test.py::InitTest::test_bind_db PASSED [ 84%] tests/txn_test.py::InitTest::test_bind_db_methods PASSED [ 84%] tests/txn_test.py::InitTest::test_buffers PASSED [ 85%] tests/txn_test.py::InitTest::test_cached_txn_across_fork PASSED [ 85%] tests/txn_test.py::InitTest::test_child_deleting_transaction PASSED [ 85%] tests/txn_test.py::InitTest::test_closed PASSED [ 85%] tests/txn_test.py::InitTest::test_fork_child_dealloc_write_txn PASSED [ 86%] tests/txn_test.py::InitTest::test_parent PASSED [ 86%] tests/txn_test.py::InitTest::test_parent_readonly PASSED [ 86%] tests/txn_test.py::InitTest::test_readonly PASSED [ 86%] tests/txn_test.py::ContextManagerTest::test_crash PASSED [ 87%] tests/txn_test.py::ContextManagerTest::test_ok PASSED [ 87%] tests/txn_test.py::IdTest::test_invalid_txn PASSED [ 87%] tests/txn_test.py::IdTest::test_readonly_after_write PASSED [ 88%] tests/txn_test.py::IdTest::test_readonly_new PASSED [ 88%] tests/txn_test.py::IdTest::test_write_new PASSED [ 88%] tests/txn_test.py::StatTest::test_stat PASSED [ 88%] tests/txn_test.py::StatTest::test_stat_default_db PASSED [ 89%] tests/txn_test.py::DropTest::test_delete PASSED [ 89%] tests/txn_test.py::DropTest::test_double_delete PASSED [ 89%] tests/txn_test.py::DropTest::test_empty PASSED [ 89%] tests/txn_test.py::CommitTest::test_bad_env PASSED [ 90%] tests/txn_test.py::CommitTest::test_bad_txn PASSED [ 90%] tests/txn_test.py::CommitTest::test_commit_ro PASSED [ 90%] tests/txn_test.py::CommitTest::test_commit_rw PASSED [ 90%] tests/txn_test.py::AbortTest::test_abort_ro PASSED [ 91%] tests/txn_test.py::AbortTest::test_abort_rw PASSED [ 91%] tests/txn_test.py::GetTest::test_bad_env PASSED [ 91%] tests/txn_test.py::GetTest::test_bad_txn PASSED [ 92%] tests/txn_test.py::GetTest::test_buffers_no PASSED [ 92%] tests/txn_test.py::GetTest::test_buffers_yes PASSED [ 92%] tests/txn_test.py::GetTest::test_db PASSED [ 92%] tests/txn_test.py::GetTest::test_dupfixed PASSED [ 93%] tests/txn_test.py::GetTest::test_dupsort PASSED [ 93%] tests/txn_test.py::GetTest::test_empty_key PASSED [ 93%] tests/txn_test.py::GetTest::test_integerdup PASSED [ 93%] tests/txn_test.py::GetTest::test_integerkey PASSED [ 94%] tests/txn_test.py::GetTest::test_missing PASSED [ 94%] tests/txn_test.py::PutTest::test_bad_env PASSED [ 94%] tests/txn_test.py::PutTest::test_bad_txn PASSED [ 94%] tests/txn_test.py::PutTest::test_dupdata_no_dupsort PASSED [ 95%] tests/txn_test.py::PutTest::test_dupsort PASSED [ 95%] tests/txn_test.py::PutTest::test_empty_key_value PASSED [ 95%] tests/txn_test.py::PutTest::test_ro_txn PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_bad_env PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_bad_txn PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_dupdata_no_dupsort PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_dupsort_del_none PASSED [ 97%] tests/txn_test.py::ReplaceTest::test_dupsort_noexist PASSED [ 97%] tests/txn_test.py::ReplaceTest::test_empty_key_value PASSED [ 97%] tests/txn_test.py::ReplaceTest::test_ro_txn PASSED [ 97%] tests/txn_test.py::DoubleWriteTxnTest::test_cross_thread_write_txn_blocks PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_double_write_txn_raises PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_nested_write_txn_allowed PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_abort PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_commit PASSED [ 99%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_context_manager PASSED [ 99%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_context_manager_exception PASSED [ 99%] tests/txn_test.py::LeakTest::test_open_close PASSED [100%] =================================== FAILURES =================================== _____________ SetMapSizeConcurrencyTest.test_resize_vs_ops_stress ______________ self = def test_resize_vs_ops_stress(self): import threading import time  _, env = testlib.temp_env(map_size=PAGE_SIZE * 64) with env.begin(write=True) as txn: for i in range(512): txn.put(str(i).encode(), b'x' * 64)  stop = threading.Event() failures = []  def tolerated(e):  """A handle invalidated by a concurrent resize surfaces as  lmdb.Error (CPython backend) or as a TypeError mentioning the  _invalid sentinel (CFFI backend).""" return (isinstance(e, lmdb.Error) or (isinstance(e, TypeError) and '_LMDB_Resource' in str(e)))  def worker_read(): while not stop.is_set(): try: with env.begin() as txn: txn.get(b'1') except Exception as e: if not tolerated(e): failures.append(e) return  def worker_env_ops(): while not stop.is_set(): try: env.stat() env.info() except Exception as e: if not tolerated(e): failures.append(e) return  def worker_write(): while not stop.is_set(): try: with env.begin(write=True) as txn: txn.put(b'wkey', b'wval') except Exception as e: if not tolerated(e): failures.append(e) return  threads = [threading.Thread(target=t) for t in (worker_read, worker_read, worker_env_ops, worker_write)] for t in threads: t.start()  size = PAGE_SIZE * 64 deadline = time.time() + self.DURATION resizes = 0 try: while time.time() < deadline: size += PAGE_SIZE * 8 try: env.set_mapsize(size) resizes += 1 except lmdb.Error: # A write txn was active, or another resize raced us. pass finally: stop.set() for t in threads: # A generous timeout: a deadlocked gate shows up here. t.join(timeout=30)  for t in threads: self.assertFalse(t.is_alive(), "worker deadlocked") self.assertEqual(failures, []) > self.assertGreater(resizes, 0) E AssertionError: 0 not greater than 0 tests/env_test.py:484: AssertionError =========================== short test summary info ============================ FAILED tests/env_test.py::SetMapSizeConcurrencyTest::test_resize_vs_ops_stress - AssertionError: 0 not greater than 0 =========== 1 failed, 370 passed, 5 skipped, 40 deselected in 9.88s ============ PASSED [ 85%] tests/txn_test.py::InitTest::test_child_deleting_transaction PASSED [ 85%] tests/txn_test.py::InitTest::test_closed PASSED [ 85%] tests/txn_test.py::InitTest::test_fork_child_dealloc_write_txn PASSED [ 86%] tests/txn_test.py::InitTest::test_parent PASSED [ 86%] tests/txn_test.py::InitTest::test_parent_readonly PASSED [ 86%] tests/txn_test.py::InitTest::test_readonly PASSED [ 86%] tests/txn_test.py::ContextManagerTest::test_crash PASSED [ 87%] tests/txn_test.py::ContextManagerTest::test_ok PASSED [ 87%] tests/txn_test.py::IdTest::test_invalid_txn PASSED [ 87%] tests/txn_test.py::IdTest::test_readonly_after_write PASSED [ 88%] tests/txn_test.py::IdTest::test_readonly_new PASSED [ 88%] tests/txn_test.py::IdTest::test_write_new PASSED [ 88%] tests/txn_test.py::StatTest::test_stat PASSED [ 88%] tests/txn_test.py::StatTest::test_stat_default_db PASSED [ 89%] tests/txn_test.py::DropTest::test_delete PASSED [ 89%] tests/txn_test.py::DropTest::test_double_delete PASSED [ 89%] tests/txn_test.py::DropTest::test_empty PASSED [ 89%] tests/txn_test.py::CommitTest::test_bad_env PASSED [ 90%] tests/txn_test.py::CommitTest::test_bad_txn PASSED [ 90%] tests/txn_test.py::CommitTest::test_commit_ro PASSED [ 90%] tests/txn_test.py::CommitTest::test_commit_rw PASSED [ 90%] tests/txn_test.py::AbortTest::test_abort_ro PASSED [ 91%] tests/txn_test.py::AbortTest::test_abort_rw PASSED [ 91%] tests/txn_test.py::GetTest::test_bad_env PASSED [ 91%] tests/txn_test.py::GetTest::test_bad_txn PASSED [ 92%] tests/txn_test.py::GetTest::test_buffers_no PASSED [ 92%] tests/txn_test.py::GetTest::test_buffers_yes PASSED [ 92%] tests/txn_test.py::GetTest::test_db PASSED [ 92%] tests/txn_test.py::GetTest::test_dupfixed PASSED [ 93%] tests/txn_test.py::GetTest::test_dupsort PASSED [ 93%] tests/txn_test.py::GetTest::test_empty_key PASSED [ 93%] tests/txn_test.py::GetTest::test_integerdup PASSED [ 93%] tests/txn_test.py::GetTest::test_integerkey PASSED [ 94%] tests/txn_test.py::GetTest::test_missing PASSED [ 94%] tests/txn_test.py::PutTest::test_bad_env PASSED [ 94%] tests/txn_test.py::PutTest::test_bad_txn PASSED [ 94%] tests/txn_test.py::PutTest::test_dupdata_no_dupsort PASSED [ 95%] tests/txn_test.py::PutTest::test_dupsort PASSED [ 95%] tests/txn_test.py::PutTest::test_empty_key_value PASSED [ 95%] tests/txn_test.py::PutTest::test_ro_txn PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_bad_env PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_bad_txn PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_dupdata_no_dupsort PASSED [ 96%] tests/txn_test.py::ReplaceTest::test_dupsort_del_none PASSED [ 97%] tests/txn_test.py::ReplaceTest::test_dupsort_noexist PASSED [ 97%] tests/txn_test.py::ReplaceTest::test_empty_key_value PASSED [ 97%] tests/txn_test.py::ReplaceTest::test_ro_txn PASSED [ 97%] tests/txn_test.py::DoubleWriteTxnTest::test_cross_thread_write_txn_blocks PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_double_write_txn_raises PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_nested_write_txn_allowed PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_abort PASSED [ 98%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_commit PASSED [ 99%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_context_manager PASSED [ 99%] tests/txn_test.py::DoubleWriteTxnTest::test_write_txn_after_context_manager_exception PASSED [ 99%] tests/txn_test.py::LeakTest::test_open_close PASSED [100%] =================================== FAILURES =================================== _____________ SetMapSizeConcurrencyTest.test_resize_vs_ops_stress ______________ self = def test_resize_vs_ops_stress(self): import threading import time  _, env = testlib.temp_env(map_size=PAGE_SIZE * 64) with env.begin(write=True) as txn: for i in range(512): txn.put(str(i).encode(), b'x' * 64)  stop = threading.Event() failures = []  def tolerated(e):  """A handle invalidated by a concurrent resize surfaces as  lmdb.Error (CPython backend) or as a TypeError mentioning the  _invalid sentinel (CFFI backend).""" return (isinstance(e, lmdb.Error) or (isinstance(e, TypeError) and '_LMDB_Resource' in str(e)))  def worker_read(): while not stop.is_set(): try: with env.begin() as txn: txn.get(b'1') except Exception as e: if not tolerated(e): failures.append(e) return  def worker_env_ops(): while not stop.is_set(): try: env.stat() env.info() except Exception as e: if not tolerated(e): failures.append(e) return  def worker_write(): while not stop.is_set(): try: with env.begin(write=True) as txn: txn.put(b'wkey', b'wval') except Exception as e: if not tolerated(e): failures.append(e) return  threads = [threading.Thread(target=t) for t in (worker_read, worker_read, worker_env_ops, worker_write)] for t in threads: t.start()  size = PAGE_SIZE * 64 deadline = time.time() + self.DURATION resizes = 0 try: while time.time() < deadline: size += PAGE_SIZE * 8 try: env.set_mapsize(size) resizes += 1 except lmdb.Error: # A write txn was active, or another resize raced us. pass finally: stop.set() for t in threads: # A generous timeout: a deadlocked gate shows up here. t.join(timeout=30)  for t in threads: self.assertFalse(t.is_alive(), "worker deadlocked") self.assertEqual(failures, []) > self.assertGreater(resizes, 0) E AssertionError: 0 not greater than 0 tests/env_test.py:484: AssertionError =========================== short test summary info ============================ FAILED tests/env_test.py::SetMapSizeConcurrencyTest::test_resize_vs_ops_stress - AssertionError: 0 not greater than 0 =========== 1 failed, 370 passed, 5 skipped, 40 deselected in 10.41s =========== ==> ERROR: A failure occurred in check(). Aborting... ==> ERROR: Build failed, check /home/alhp/workspace/chroot/build_551a11d3-654b-4868-9a1a-7e9e4ed0f789/build