BewareMyPower opened a new issue, #585:
URL: https://github.com/apache/pulsar-client-cpp/issues/585

   ### Search before asking
   
   - [x] I searched in the 
[issues](https://github.com/apache/pulsar-client-cpp/issues) and found nothing 
similar.
   
   
   ### Version
   
   f2c0fec
   
   ### Minimal reproduce step
   
   
https://github.com/apache/pulsar-client-cpp/actions/runs/26613317193/job/78778604980
   
   ### What did you expect to see?
   
   n/a
   
   ### What did you see instead?
   
   The task is cancelled after 6 hours.
   
   ### Anything else?
   
   Here's the analysis:
   
   ## Root Cause: GitHub Actions 6-Hour Hard Limit
   
   **Timeline:**
   - Job start: `2026-06-01T02:41:44`
   - Cancellation: `2026-06-01T08:41:56`
   - Duration: **exactly 6 hours**
   
   The `timeout-minutes: 500` (~8.3h) in the workflow YAML is irrelevant here — 
**GitHub Actions enforces a hard 6-hour wall-clock limit per job** for 
GitHub-hosted runners, regardless of what `timeout-minutes` is set to.
   
   ## What Took So Long
   
   The job was building `Build Alpine arm64` via **Docker/QEMU emulation** 
(cross-compiling arm64 on an x86_64 runner), and vcpkg had to build all 87 
dependencies from source with no cache hits:
   
   | Package | Time |
   |---|---|
   | `protobuf:arm64-linux` | **3.2 hours** |
   | `zstd:arm64-linux` | 8.4 minutes |
   | `snappy:arm64-linux` | 1.4 minutes |
   | ... (84 others) | remaining time |
   
   The vcpkg install only just finished at `08:41:48` (all 87 packages done), 
and the job was immediately cancelled at `08:41:56` — literally seconds after 
vcpkg completed, before the actual cmake build of pulsar-client-cpp even 
started.
   
   ## Fix Options
   
   1. **Use a vcpkg binary cache** (GitHub Actions cache) — so packages like 
protobuf don't rebuild from scratch every run. This is the most impactful fix.
   2. **Use a native arm64 runner** — QEMU emulation is ~10-20x slower than 
native; native arm64 GitHub-hosted runners are available.
   3. **Both** — binary cache + native arm64 runners would bring vcpkg install 
from hours down to minutes.
   
   ### Are you willing to submit a PR?
   
   - [x] I'm willing to submit a PR!


-- 
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]

Reply via email to