hse-project / mpool Goto Github PK
View Code? Open in Web Editor NEWmpool UAPI and CLI for HSE 1.x
Home Page: https://github.com/hse-project/mpool/wiki
License: MIT License
mpool UAPI and CLI for HSE 1.x
Home Page: https://github.com/hse-project/mpool/wiki
License: MIT License
i saw the requirements said x86. so no ARM support correct? if so, where does the limitation exist?
not every time... but every few dozen times that i pkill -KILL processname
my mpool gets stuck.
so when i try to destroy it I get resource busy (even though the process is 100% dead)...
root@clr-fc2a36cf35a645a0a1e17af84fb1eab8~ # mpool destroy hotmpool
mpool: Unable to destroy mpool hotmpool (mpool/mpctl.c:142: Device or resource busy)
have you ever seen this before? is there any way I can force destroy it in these circumstances besides rebooting the machine?
also makes me a bit worried that if the application was killed by the OS in production that the mpool would be unrecoverable without a reboot... or at the very least terminal-ing into the machine.
i can collect any data you need so that next time it happens i can share them.
Any hope/timeline to get the kernel module upstreamed? Cursory google didn't turn up relevant threads.
since upgrading to 5.13, puts with HSE report success with an error code of 0, but upon trying to get, the key is reported as not existing.
how shall i begin debugging this?
there was a new warning when building the kernel module since upgrading (because i guess Clear Linux's GCC package was updated in the process too) which i overcame quick and dirty but texting replacing -Werror to "". but i highly doubt that has anything to do with this. but just fyi.
./include/asm-generic/bitops/find.h: In function ‘find_last_bit’:
./include/linux/bits.h:25:36: warning: comparison of unsigned expression in ‘< 0’ is always false [-Wtype-limits]
25 | __is_constexpr((l) > (h)), (l) > (h), 0)))
| ^
./include/linux/build_bug.h:16:62: note: in definition of macro ‘BUILD_BUG_ON_ZERO’
16 | #define BUILD_BUG_ON_ZERO(e) ((int)(sizeof(struct { int:(-!!(e)); })))
| ^
./include/linux/bits.h:25:17: note: in expansion of macro ‘__is_constexpr’
25 | __is_constexpr((l) > (h)), (l) > (h), 0)))
| ^~~~~~~~~~~~~~
./include/linux/bits.h:38:10: note: in expansion of macro ‘GENMASK_INPUT_CHECK’
38 | (GENMASK_INPUT_CHECK(h, l) + __GENMASK(h, l))
| ^~~~~~~~~~~~~~~~~~~
./include/asm-generic/bitops/find.h:162:45: note: in expansion of macro ‘GENMASK’
162 | unsigned long val = *addr & GENMASK(size - 1, 0);
|
hello,
the scripts folder has a CMakeLists empty,
I have tried this following but it miss the tingting syntactic and the file isn't enough typed :
cmake_minimum_required( VERSION 3.6 )
cmake_policy( SET CMP0046 NEW )
cmake-policy( SET CMP0053 NEW )
project ( scripts C )
set( PROJECT_VERSION "${BUILD_PKG_VERSION}")
set( PROJECT_HOMEPAGE_URL "https://github.com/hse-project/mpool/tree/master/scripts" )
set( CMAKE_PROJECT_VERSION "${PROJECT_VERSION}" )
set( CMAKE_PROJECT_HOMEPAGE_URL "${PROJECT_HOMEPAGE_URL}" )
message( STATUS "Configuring project ${PROJECT_NAME} ${PROJECT_VERSION} ${PROJECT_HOMEPAGE_URL} ${BUILD_PKG_TAG} commo>
set( CMAKE_C_STANDART 99 )
set( CMAKE_INSTALL_PREFIX /usr )
include(deb)
include(modules-load.d)
include(sysctl.d)
include(tmpfiles.d)
include(cmake)
include(dev)
include(rpm)
include(systemd)
include(udev)
set( SCRIPTS_DEB_INSTALL_PREFIX ${PROJECT_BINARY_DIR}/deb)
set( SCRIPTS_MODULES-LOAD.D_PREFIX ${PROJECT_BINARY_DIR}/modules-load.d)
set( SCRIPTS_SYSCTL.D_PREFIX ${PROJECT_BINARY_DIR}/sysctl.d)
set( SCRIPTS_TMPFILES.D_PREFIX ${PROJECT_BINARY_DIR}/tmpfiles.d)
set( SCRIPTS_CMAKE_DIR ${PROJECT_SOURCE_DIR}/cmake)
set( SCRIPTS_DEV_PREFIX ${PROJECT_BINARY_DIR}/dev)
set( SCRIPTS_RPM_PREFIX ${PROJECT_BINARY_DIR}/rpm)
set( SCRIPTS_SYSTEMD_PREFIX ${PROJECT_BINARY_DIR}/systemd)
set( SCRIPTS_udev_PREFIX ${PROJECT_BINARY_DIR}/udev)
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${MPOOL_STAGE_INSTALL_PREFIX}/bin)
add_compile_options(
${BUILD_CFLAGS} -g3 -std=gnu99 -Wall -Werror
-Wlogical-op -Wno-missing-field-initializers -Wuninitialized -Wmaybe-uninitialized
-Wextra -Wno-conversion -Wno-sign-conversion -Wno-sign-compare -Wno-unused-parameter
)
file( WRITE ${CMAKE_BINARY_DIR}/CTestCustom.cmake.in )
configure_file( ${CMAKE_BINARY_DIR}CTestCustom.cmake.in
${RPM_BINARY_DIR}mpool-devel.spec.in
${RPM_BINARY_DIR}mpool-test.spec.in
${RPM_BINARY_DIR}mpool.spec.in
)
when I run the cmake .. in build directory I have following :
[root@localhost scripts]# ls
CMkeLists.txt build deb modules-load.d sysctl.d tmpfiles.d
bin cmake dev rpm systemd udev
[root@localhost scripts]# cd build
[root@localhost build]# cmake ..
[root@localhhe source directory "/etc/openmpi-4.1.1/mpool/scripts" does not appear to contain CMakeList,s.txt.
Specify --help for usage, or press the help button on the CMake GUI.
in the mpool build directorie the cmake .. answer following :
[root@localhost build]# cmake ..
-- Configuring project mpool common...
CMake Error at CMakeLists.txt:25 (include):
include could not find load file:
/etc/openmpi-4.1.1/mpool/scripts/
-- Enabling valgrind support
-- Configuring mpool in /etc/openmpi-4.1.1/mpool/src/mpool
-- Configuring mpool in /etc/openmpi-4.1.1/mpool/src/mptest
-- Configuring ui /etc/openmpi-4.1.1/mpool/src/cli
-- Configuring mcache_api in /etc/openmpi-4.1.1/mpool/test/test_apps/mcache_api
-- Configuring mpiotest in /etc/openmpi-4.1.1/mpool/test/test_apps/mpiotest
-- Configuring ui /etc/openmpi-4.1.1/mpool/test/test_apps/mpft
-- Configuring mpool samples in /etc/openmpi-4.1.1/mpool/samples
CMake Error at CMakeLists.txt:231 (include):
include could not find load file:
/etc/openmpi-4.1.1/mpool/etc/openmpi-4.1.1/mpool/scripts/CMakeLists.txt
CMake Error: File /etc/openmpi-4.1.1/mpool/etc/openmpi-4.1.1/mpool/scripts/cmake/CTestCustom.cmake.in does not exist.
CMake Error at CMakeLists.txt:237 (configure_file):
configure_file Problem configuring file
-- Compiler flags:
-- INCLUDE_DIRECTORIES /etc/openmpi-4.1.1/mpool/build/ext_install/include;/etc/openmpi-4.1.1/mpool/build/stage/include
-- COMPILE_DEFINITIONS
-- COMPILE_OPTIONS -g3;-std=gnu99;-Wall;-Werror;-Wlogical-op;-Wno-missing-field-initializers;-Wuninitialized;-Wmaybe-uniniti1. alized;-Wextra;-Wno-conversion;-Wno-sign-conversion;-Wno-sign-compare;-Wno-unused-parameter;-Wimplic6it-fallthrough=0;-fPIC
-- LINK_DIRECTORIES
-- LINK_LIBRARIES
-- LINK_OPTIONS
-- Configuring incomplete, errors occurred!
See also "/etc/openmpi-4.1.1/mpool/build/CMakeFiles/CMakeOutput.log".
Thank you in advance to help myself fully run scripts of cmake compiling,
Regards.
Azaretdodo.
hello,
I can't download your github,
the line of command '''make check''' in openmpi doesn't fully check mpool,
thank you in advance to able myself for download your fork,
Regards.
Azaretdodo.
'''[root@localhost openmpi-4.1.1]# git clone https://github.com/hse-project/mpool.git
Cloning into 'mpool'...
fatal: unable to access 'https://github.com/hse-project/mpool.git/': Failed to connect to 127.0.0.1 port 1080: Connection refused'''
Hi HSE Team,
Thanks for releasing this code.
The Wiki / API Reference page says "See the mpool API documentation in the mpool.h header file." That file contains functions for operating on various data structures and objects. How about adding some explanations of those data structures and how to use them? This would make the code more useful.
mpool
mclass
mlog
mlog
objects.mpool_mlog_erase()
actually zero the bytes or just send a "trim" command to the SSD?objid
, OIDmdc
mdc_capacity
mblock
mpool_mcache_map
mpool_mlog_len()
reads the whole object.Best,
Michael
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.