Seanium opened a new pull request, #3102:
URL: https://github.com/apache/hugegraph/pull/3102
## Purpose of the PR
- close #3099
- Add a reproducible HugeGraph Server + RocksDB path for linux/riscv64 while
keeping the default all-backend build unchanged.
## Main Changes
- Use checksum-pinned Alibaba Dragonwell 11 Extended on RISC-V and reject
Zero VM in runtime verification.
- Install and automatically preload `libatomic.so.1` before RocksDB JNI is
used.
- Upgrade architecture detection and use system `protoc` /
`grpc_java_plugin` in an automatically activated RISC-V Maven profile.
- Add the opt-in `-Drocksdb-only` reactor, distribution registry, and
backend-boundary check.
- Add identical JNI, REST, Gremlin, and restart-persistence smoke tests for
amd64, arm64, and riscv64/QEMU.
- Replace architecture-sensitive fixed waits in three Gremlin task tests
with bounded completion/progress waits. No assertions or target tests are
skipped.
- Document the implementation, reproduction steps, acceptance gates, and
residual risks.
## Verifying these changes
- [ ] Trivial rework / code cleanup without any test coverage. (No Need)
- [ ] Already covered by existing tests, such as *(please modify tests
here)*.
- [x] Need tests and can be verified as follows:
- Default Java 11 build: 43/43 reactor modules passed and all existing
backends remained in the distribution.
- Native RISC-V clean RocksDB-only build: 14/14 modules passed from a
source tree without generated files.
- Native RISC-V runtime: JNI put/get/reopen, REST schema/vertices/edge,
Gremlin, and restart persistence passed.
- Native RISC-V Core: 794 tests, 0 failures, 0 errors, 41 skipped.
- Native RISC-V API: 161 tests, 0 failures, 0 errors, 14 skipped, with a
non-empty JaCoCo XML report.
- Docker runtime smoke passed for linux/amd64, linux/arm64, and
linux/riscv64 under QEMU.
- XML, workflow YAML, shell syntax, EditorConfig, and `git diff --check`
passed.
## Does this PR potentially affect the following parts?
- [x] Dependencies (RISC-V-specific protobuf/gRPC alignment and architecture
plugin update; existing license records already cover the packaged dependencies)
- [x] Modify configurations
- [ ] The public API
- [x] Other affects (Docker runtime image and CI runtime smoke)
- [ ] Nope
## Documentation Status
- [ ] `Doc - TODO`
- [x] `Doc - Done`
- [ ] `Doc - No Need`
## Residual Risks
- Native runtime validation used glibc 2.39; the documented glibc 2.30 lower
bound is based on ELF version requirements.
- No public statement was found that the exact Dragonwell 11 RISC-V binary
passed Java SE TCK/JCK. Release qualification should still include sustained
native stress and stability testing.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]