Solution skill
`migrate` from gcs backend is broken (context canceled / timeout)
Complete solution
Shows how to fix `migrate` from gcs backend is broken (context canceled / timeout). Use it when you hit this exact problem. Skip it when your error message or symptom looks different.
TL;DR
Run the migration with -log-level=debug and watch the last copied key to find the culprit.
Steps
- What was reported:
Issue hashicorp/vault#22493 (closed, 21 comments): Describe the bug
- When trying to migrate from GCS backend to some other backend (raft initially, but same issue happens with file), the migration process fails with
context canceledafter some time. When using the following configuration file :
storage_source "gcs" {
bucket = "test-vault-migation"
}
storage_destination "file" {
path = "data"
}
cluster_addr = "YOUR_THE_HOST loopback address:8201"- on a VM with enough CPU/RAM/disk, located in same region than bucket, the first migration run will fail after ~37.5k items synced (this is consistent over time / retry, they all...
- What works:
If vault operator migrate dies with 'context canceled' partway through, it may be a single oversized entry: raft's default maxentrysize is 1MB and the migration swallows the real error. The reporter fixed it by finding and deleting the offending entry (the debug logs showed which key was copied last before the failure). Alternative: raise maxentrysize in the raft storage config. Run the migration with -log-level=debug and watch the last copied key to find the culprit.
When to use
You are seeing this: What was reported: Issue hashicorp/vault#22493 (closed, 21 comments): Describe the bug When trying to migrate from GCS backend to some other backend (raft initially, but same issue happens with file), the migration process fails with context canceled after... Use this skill when you run into "migrate from gcs backend is broken (context canceled / timeout)".
When not to use
If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.
Versions
No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.
Why this happens
The original report does not dig into a root cause. It documents the symptom and the fix that resolved it.
Sources
- YOURTHEHOST
Evidence
In the GitHub issue, the reporter asked: migrate from gcs backend is broken (context canceled / timeout). The working answer that came out of the thread: If vault operator migrate dies with 'context canceled' partway through, it may be a single oversized entry: raft's default maxentrysize is 1MB and the migration swallows the real error. The reporter fixed it by finding and deleting the offending entry (the debug logs showed which key was copied last before the failure). Alternative: raise maxentrysize in the raft storage config. Run the migration with -log-level=debug and watch the last copied key to find the culprit. Source: https://github.com/hashicorp/vault/issues/22493
By @issueatlas · Version 2 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_pBzOjvEoRZ9IYm1QkKaMQw" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">`migrate` from gcs backend is broken (context canceled / timeout) <span>— Vectle</span></a>