{"record":{"id":"57b1afeae154ddb5","repo":"cube-js/cube","slug":"cube-store-v-version-artifact-for-currenttarge","errorCode":null,"errorMessage":"Cube Store v${version} Artifact for ${currentTarget} doesn't exist. Most probably it is still building. Please try again later.","messagePattern":"Cube Store v(.+?) Artifact for (.+?) doesn't exist\\. Most probably it is still building\\. Please try again later\\.","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"rust/cubestore/js-wrapper/src/download.ts","lineNumber":59,"sourceCode":"\n  const url = `https://github.com/cube-js/cube.js/releases/download/v${version}/cubestored-${currentTarget}.tar.gz`;\n\n  try {\n    await downloadAndExtractFile(url, {\n      cwd: cubestorePath,\n      showProgress: true,\n    });\n  } catch (e: any) {\n    if (e.toString().includes('Not Found')) {\n      const release = await fetchRelease(version);\n      if (release) {\n        if (release.assets.length === 0) {\n          throw new Error(\n            `There are no artifacts for Cube Store v${version}. Most probably it is still building. Please try again later.`\n          );\n        }\n\n        throw new Error(\n          `Cube Store v${version} Artifact for ${currentTarget} doesn't exist. Most probably it is still building. Please try again later.`\n        );\n      } else {\n        throw new Error(\n          `Unable to find Cube Store release v${version}. Most probably it was removed.`\n        );\n      }\n    } else {\n      throw e;\n    }\n  }\n}\n","sourceCodeStart":41,"sourceCodeEnd":72,"githubUrl":"https://github.com/cube-js/cube/blob/7d981676b36392fec34088b9afab6bdcad40207c/rust/cubestore/js-wrapper/src/download.ts#L41-L72","documentation":"Thrown by downloadBinaryFromRelease when the cube.js GitHub release for version ${version} exists and has assets, but none matches the current platform target triple (${currentTarget}, e.g. x86_64-unknown-linux-gnu). The asset download 404'd, the release lookup succeeded, and assets exist — so this specific platform's binary is absent. It typically means the build for your OS/architecture is still in progress or was skipped/failed.","triggerScenarios":"getBinary() -> downloadBinaryFromRelease() when the local binary is missing; the tar.gz URL https://github.com/cube-js/cube.js/releases/download/v${version}/cubestored-${currentTarget}.tar.gz returns 'Not Found'; fetchRelease() finds the release with release.assets.length > 0, so the wrapper concludes only this target's artifact is missing.","commonSituations":"Running on an unusual/less-common platform combination (e.g. Linux musl, FreeBSD, x86 Windows on ARM emulation) where artifacts are published last or never; starting Cube right after a release when platform-specific CI jobs are staggered; a failed build job for one target while others uploaded fine.","solutions":["Wait and retry later — the target build may still be running in CI; re-run after some minutes/hours.","Check the release page assets list to confirm whether cubestored-${currentTarget}.tar.gz exists or failed to upload.","Use a platform with published artifacts (x64 or arm64 on linux-gnu/darwin/win32 as enumerated in isCubeStoreSupported).","Pin the previous cube.js version whose binary for your target exists.","Build Cube Store from source with cargo and place the executable at getCubeStorePath()/bin/cubestored."],"exampleFix":"// before\nconst currentTarget = getTarget();\n// after: verify support before attempting download\nimport { isCubeStoreSupported } from './utils';\nif (!isCubeStoreSupported()) {\n  console.warn('No prebuilt Cube Store binary for this platform; build from source or use Docker.');\n}","handlingStrategy":"validation","validationCode":"import { isCubeStoreSupported } from '@cubejs-backend/cubestool/dist/utils';\nimport process from 'process';\nif (!isCubeStoreSupported()) {\n  throw new Error(`No prebuilt Cube Store for ${process.platform}/${process.arch}; configure an external Cube Store or use Docker.`);\n}","typeGuard":"function isSupportedTarget(platform: string, arch: string): boolean {\n  return (arch === 'x64' && ['win32','linux','darwin'].includes(platform)) ||\n         (arch === 'arm64' && (platform === 'darwin' || platform === 'linux'));\n}","tryCatchPattern":"try {\n  await cubeStoreHandler.acquire();\n} catch (e) {\n  if (/Artifact for .* doesn't exist/.test(String(e))) {\n    await fallbackToExternalCubeStore();\n  } else { throw e; }\n}","preventionTips":["Verify your OS/arch is in the supported matrix (x64: win/linux/darwin; arm64: darwin/linux-gnu) before deploying","Avoid musl-based images on arm64 (use glibc, e.g. Debian not Alpine)","Check the release page for your exact cubestored-<target>.tar.gz before upgrading","Keep an external Cube Store (Docker) fallback for exotic platforms"],"tags":["network","github-release","binary-download","platform-compatibility"],"backgroundTag":"cubestore-artifact-missing-for-platform","analyzedSha":"7d981676b36392fec34088b9afab6bdcad40207c","analyzedAt":"2026-09-02T03:45:10.400Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T15:18:49.778Z"}