Uh oh!
There was an error while loading. Please reload this page.
fix(bootstrap): bump pinned hyperd to 0.0.26225 (rbf04a855) - #219
fix(bootstrap): bump pinned hyperd to 0.0.26225 (rbf04a855)#219StefanSteiner wants to merge 9 commits into
Conversation
Updates version, build id, and all four per-platform sha256s in hyperd-version.toml. Verified all platform zips are reachable (verify-hyperd-pin), the macos-arm64 Java bundle ships a native arm64 hyperd, and the full workspace test suite passes (1485 tests, 0 failed) against the new binary.
Records the unified-suite benchmark comparison vs 0.0.25080 in the 0.7.1 changelog entry: single-connection full-scan query throughput +66% sync / +34% async, single-threaded insert -5-7%; multi-connection deltas withheld as thermally noisy.
…ark tracker Codifies the hyperd version-bump procedure as a project skill (.claude/skills/update-hyperd-release/) including the Java-not-C++ bundle rationale, the native-arm64 invariant check, and the benchmarking gotchas (100M-row medians; distrust thermally-throttled ×4 numbers). Adds docs/hyperd-release-benchmarks.md tracking engine performance per release (complements BENCHMARK_GUIDE.md's by-platform tables), seeded with the 0.0.25080 -> 0.0.26225 A/B. Cross-links from AGENTS.md and BENCHMARK_GUIDE.md, and corrects the stale 'bump the crate version' note (versioning is workspace-driven + release-please). Also commits the reusable plan-to-release Harness workflow driver.
Copies the release-package verifier (SKILL.md + stdlib-only verify_release.py) from awesome-context (plugins/dataplat/skills/) into the repo so contributors get it without a user-level install. The script fetches the releases page, checks all 12 advertised packages (4 platforms x 3 bindings) for filename version match, downloadability, and zip/whl integrity via urllib+zipfile. Wires it into the update-hyperd-release skill (step 2) as the page-validation aid. Smoke-tested against 0.0.26225: 12/12 PASS.
hyperd 0.0.26225 (rbf04a855) wedges *after* its callback connection succeeds on the macOS-14 (Sonoma, 3-core) runner only: the unit tests pass, then the first hyperd-backed test binary (arrow_inserter_tests) stalls in the libpq startup handshake read until the 45-min job cap. Linux, Windows, and local macOS 26 all pass. See PR tableau#219. This is a diagnostic-only change (no product code): a macOS-only watchdog, backgrounded before the test step, that once a hyperd has been alive past a threshold `sample`s its symbolized native C++ stack and the stalled test process, copies hyperd's JSON log, uploads them as an artifact (if: always()), then kills the wedged processes so the job ends in minutes instead of 45. The sample names the exact wedged engine function, which the hyperd log alone does not. Guarded by `runner.os == 'macOS'`, so Linux/Windows are unaffected. Remove once the hang is root-caused and fixed.
StefanSteiner
commented
Aug 8, 2026
🛑 Holding this bump — hyperd 0.0.26225 deadlocks on macOS 14 (upstream engine bug)Root-caused the macOS-14 CI hang on this PR. It is not a client/test bug — it's a What happensOn macOS 14 (Sonoma) / arm64, Wedged worker stack (symbolized Main thread is separately wedged in Confirmed
DiagnosticsA temporary CI watchdog (commit dbae7e3) NextFiling an upstream report to the Hyper team (primary: EH-frame registration fault in JIT codegen on macOS 14 arm64; secondary: fatal-signal handler re-entering libunwind → hang instead of crash-report). Will re-test any candidate build on the same runner before un-drafting. |
StefanSteiner
commented
Aug 8, 2026
✅ Root cause pinpointed in engine source — it's a JIT unwind-registration API swapDiffed the good→bad engine range ( Introducer — |
Reverts the __unw_add_dynamic_eh_frame_section SPI on macOS arm64 back to __register_frame (the deadlock root cause on macOS-14's older system libunwind; see PR tableau#219 analysis). Downloads a locally-patched hyperd from the fork's release assets (sha256-verified), narrows the matrix to macos-14, and isolates the hyperd cache under a -ehframefix key. TEMPORARY scaffolding — revert this commit and delete the release asset once the run confirms the fix (green instead of the watchdog fast-fail).
…hed hyperd" This reverts commit 822a950.
StefanSteiner
commented
Aug 8, 2026
✅ Fix VALIDATED on the real macOS-14 arm64 runnerBuilt a patched The fixIn How it was testedPatched Result — ci run 31239711070, |
…S-14 Same scaffolding as 822a950 but points at the Option B binary: the fix version-gates the eh_frame registration API (section SPI on macOS>=26, __register_frame on <26). On the macos-14 runner this exercises the __register_frame fallback branch — the half not validatable on local macOS-26 hardware (which takes the SPI branch and passed the full hyperdb-api suite). sha256-pinned; matrix narrowed; cache isolated. TEMPORARY — revert + delete the release asset once the run confirms green.
… on macOS-14" This reverts commit 2c46dcb.
StefanSteiner
commented
Aug 8, 2026
✅ Both candidate fixes validated on the real macOS-14 runnerFollowed up the root-cause with two build-and-test passes. Both fix shapes pass on the Option A — route macOS arm64 back to |
Summary
Bumps the pinned
hyperdrelease used byhyperdb-bootstrapfrom 0.0.25080 / r2bfd835b to 0.0.26225 / rbf04a855 — the latest advertised on Tableau's Hyper DB releases page.Changes:
hyperdb-bootstrap/hyperd-version.toml(version + build id + all four per-platform sha256s) and the crate CHANGELOG.Verification
make verify-hyperd-pin— all four platform zips reachable (HTTP 200) at the new version/build.make download-hyperdverified the macos-arm64 digest on download.hyperdis a nativeMach-O 64-bit executable arm64(the reason this crate pulls from the Java bundle, not C++).hyperd --versionreportsmain.0.0.26225.rbf04a855.cargo test --workspaceagainst the new binary: 1485 passed, 0 failed.cargo fmt --all --checkclean;cargo clippy --workspace --all-targets --all-features -- -D warningsclean.Performance (A/B vs 0.0.25080)
Unified suite (
hyperdb-api/benches/benchmark_suite.rs), 100M rows, median of 3 runs, Apple Silicon:Net: a large, repeatable win on the dominant single-connection query path against a small single-threaded insert cost. Multi-connection (
× 4) workloads were dominated by thermal throttling on the test laptop (throughput declined monotonically across sequential runs) and are not reported as a reliable delta — they'd need a cooled/pinned host to trust. Only the unified suite was run; the specialized "dig-deeper" benches (arrow-batching, gRPC, async-parallel, kv, Node.js cross-language) were not.Tooling added alongside the bump
plan-to-releaseHarness workflow driver.Release impact
fix:commit → targets a 0.7.1 patch release.