js-ceramic icon indicating copy to clipboard operation
js-ceramic copied to clipboard

Ceramic daemon failed to start up: The ipfs-repo-migrations package does not have all migration to migrate from version 10 to 11

Open hwnahm opened this issue 4 years ago • 9 comments

% ceramic daemon Ceramic daemon failed to start up: InvalidValueError: The ipfs-repo-migrations package does not have all migration to migrate from version 10 to 11 at verifyAvailableMigrations (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo-migrations/src/index.js:270:11) at Object.revert (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo-migrations/src/index.js:185:3) at async IpfsRepo.open (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo/src/index.js:140:11) at async loadRepo (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/storage.js:74:5) at async Function.start (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/storage.js:54:41) at async Object.create (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/index.js:223:21) at async Function.create (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/node_modules/@ceramicnetwork/ipfs-daemon/lib/ipfs-daemon.js:90:22) at async Object.buildIpfsConnection (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/lib/build-ipfs-connection.util.js:24:28) at async Function.create (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/lib/ceramic-daemon.js:162:22) at async Command. (/Users/peter/.nvm/versions/node/v14.17.6/lib/node_modules/@ceramicnetwork/cli/lib/bin/ceramic.js:30:5) { code: 'ERR_INVALID_VALUE' }

Machine, OS, browser information (please complete the following information):

Additional context Add any other context about the problem here.

hwnahm avatar Sep 25 '21 02:09 hwnahm

Hmm, I'm not seeing this error. The version of IPFS that Ceramic relies should be using IPFS repo version 10. If you're seeing it try to use version 11, that suggests that somehow you're picking up a newer version of IPFS than ceramic supports. Are you using ipfs directly in your application? Or are you using any other packages that may be including a newer version of ipfs? It might be helpful if you can share your package.json file.

stbrody avatar Sep 25 '21 11:09 stbrody

I'm getting a similar problem:

~/repos [1] $ ceramic daemon                                                                                                                            16:36:03
/Users/brenner/.nvm/versions/node/v12.18.3/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-http-server/src/index.js:140
    const enableCors = Boolean(cors.origin?.length)
                                           ^

SyntaxError: Unexpected token '.'
    at wrapSafe (internal/modules/cjs/loader.js:1053:16)
    at Module._compile (internal/modules/cjs/loader.js:1101:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
    at Module.load (internal/modules/cjs/loader.js:985:32)
    at Function.Module._load (internal/modules/cjs/loader.js:878:14)
    at Module.require (internal/modules/cjs/loader.js:1025:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (/Users/brenner/.nvm/versions/node/v12.18.3/lib/node_modules/@ceramicnetwork/cli/node_modules/@ceramicnetwork/ipfs-daemon/lib/ipfs-daemon.js:8:44)
    at Module._compile (internal/modules/cjs/loader.js:1137:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)

BrennerSpear avatar Sep 27 '21 21:09 BrennerSpear

my issue was node v12 instead of v14+

BrennerSpear avatar Sep 27 '21 22:09 BrennerSpear

just encountered the same issue:

root@99871fbf5bb3:/# node --version
v14.18.1
root@99871fbf5bb3:/# npm --version
6.14.15
root@99871fbf5bb3:/# ceramic daemon
Ceramic daemon failed to start up:
InvalidValueError: The ipfs-repo-migrations package does not have all migration to migrate from version 10 to 11
    at verifyAvailableMigrations (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo-migrations/src/index.js:270:11)
    at Object.revert (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo-migrations/src/index.js:185:3)
    at async IpfsRepo.open (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo/src/index.js:140:11)
    at async loadRepo (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/storage.js:74:5)
    at async Function.start (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/storage.js:54:41)
    at async Object.create (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/index.js:223:21)
    at async Function.create (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/@ceramicnetwork/ipfs-daemon/lib/ipfs-daemon.js:90:22)
    at async Object.buildIpfsConnection (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/lib/build-ipfs-connection.util.js:24:28)
    at async Function.create (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/lib/ceramic-daemon.js:162:22)
    at async Command.<anonymous> (/root/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/lib/bin/ceramic.js:30:5) {
  code: 'ERR_INVALID_VALUE'
}

boneyard93501 avatar Oct 13 '21 23:10 boneyard93501

@boneyard93501, same questions as I asked the original poster of this issue:

The version of IPFS that Ceramic relies should be using IPFS repo version 10. If you're seeing it try to use version 11, that suggests that somehow you're picking up a newer version of IPFS than ceramic supports. Are you using ipfs directly in your application? Or are you using any other packages that may be including a newer version of ipfs? It might be helpful if you can share your package.json file.

stbrody avatar Oct 18 '21 21:10 stbrody

we're using IPFS (go) also and that's where the clash is coming from. we created a workaround in one of the testnets, which should get hackathon participants by for now. Hopefully we can ditch the duct-tape when you upgrade.

boneyard93501 avatar Oct 18 '21 21:10 boneyard93501

I'm also having this problem. I'm just getting started w/ ceramic and don't even have a project/package.json, I've just installed the CLI via npm, and am trying to run ceramic daemon.

> npm --version
6.14.15

> node --version
v14.18.1


> ceramic daemon
Ceramic daemon failed to start up:
InvalidValueError: The ipfs-repo-migrations package does not have all migration to migrate from version 10 to 11
    at verifyAvailableMigrations (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo-migrations/src/index.js:270:11)
    at Object.revert (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo-migrations/src/index.js:185:3)
    at async IpfsRepo.open (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-repo/src/index.js:140:11)
    at async loadRepo (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/storage.js:74:5)
    at async Function.start (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/storage.js:54:41)
    at async Object.create (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/ipfs-core/src/components/index.js:223:21)
    at async Function.create (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/node_modules/@ceramicnetwork/ipfs-daemon/lib/ipfs-daemon.js:90:22)
    at async Object.buildIpfsConnection (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/lib/build-ipfs-connection.util.js:24:28)
    at async Function.create (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/lib/ceramic-daemon.js:172:22)
    at async Command.<anonymous> (/home/[email protected]/.nvm/versions/node/v14.18.1/lib/node_modules/@ceramicnetwork/cli/lib/bin/ceramic.js:30:5) {
  code: 'ERR_INVALID_VALUE'
}

I wasn't sure if it was caused by my local IPFS installation or not -- originally I had ipfs v0.11.0. I uninstalled that, and then installed v0.10.0, but am still getting the exact same error.

jacksonConrad avatar Dec 13 '21 22:12 jacksonConrad

we're using IPFS (go) also and that's where the clash is coming from. we created a workaround in one of the testnets, which should get hackathon participants by for now. Hopefully we can ditch the duct-tape when you upgrade.

@boneyard93501 would you mind providing detail on how your created a workaround? i'm struggling with this same problem. i've experimented with using both the Go and JS IPFS implementations, tried version 0.10.0 vs 0.11.0, all with the same results.

jacksonConrad avatar Dec 14 '21 17:12 jacksonConrad

@jacksonConrad, this error usually means you have an ipfs repo created by a newer version of ipfs than ceramic currently supports.

originally I had ipfs v0.11.0. I uninstalled that, and then installed v0.10.0, but am still getting the exact same error.

I suspect that even after you uninstalled ipfs v0.11.0 that its data files were left around. You'll need to delete your ipfs repo so that it can be re-created in the older data format. If you have important data in your local ipfs node repository that you don't want to delete, you'll need to point the new ipfs node used by Ceramic to a different directory for storing its data files.

stbrody avatar Jan 13 '22 22:01 stbrody