bytedance / bytedance/InfiniStore

Build from source on aarch64 succeeds but module not found

Open
#162 10 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
437
Forks
44
PR merge metrics
No merged PRs in 30d

Description

I'm able to build from source (v0.2) on a aarch64 machine. However, when I test my installation with the unittest, it throws a module error. Considering there are no pre-built wheels for aarch64, is there an alternative way to use this?

Build steps

```bash
apt install libuv1-dev
apt install libflatbuffers-dev
apt install libspdlog-dev libfmt-dev
apt install ibverbs-utils libibverbs-dev
apt install libboost-dev libboost-stacktrace-dev
pip install -e .
```

Error message:

```bash
# pip list | grep infinistore
infinistore 0.2.33.0 /workspace/InfiniStore

# pytest infinistore/test_infinistore.py
=========================================================== test session starts ============================================================
platform linux -- Python 3.12.9, pytest-8.3.5, pluggy-1.5.0
rootdir: /workspace/InfiniStore
plugins: anyio-4.9.0
collected 0 items / 1 error

================================================================== ERRORS ==================================================================
_____________________________________________ ERROR collecting infinistore/test_infinistore.py _____________________________________________
ImportError while importing test module '/workspace/InfiniStore/infinistore/test_infinistore.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/root/.local/share/uv/python/cpython-3.12.9-linux-aarch64-gnu/lib/python3.12/importlib/__init__.py:90: in import_module
return _bootstrap._gcd_import(name[level:], package, level)
infinistore/__init__.py:1: in
from .lib import (
infinistore/lib.py:1: in
import infinistore._infinistore as _infinistore
E ModuleNotFoundError: No module named 'infinistore._infinistore'
========================================================= short test summary info ==========================================================
ERROR infinistore/test_infinistore.py
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
============================================================= 1 error in 0.09s =============================================================
```

Contributor guide

Open the contributing guide

Research direction

Start with the reported `pip install -e .` build on aarch64, then inspect `infinistore/__init__.py`, `infinistore/lib.py`, and the import failure in `infinistore/test_infinistore.py`. Run `pytest infinistore/test_infinistore.py`; done means the extension module is available and the test module is collected without `ModuleNotFoundError`.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, linux, python
Domain
backend, build-system, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.