If one started out on ethereum blockchain and found out it is not suitable any longer, how would one go about migrating from one blockchain to another? this would require predefined upgradeable/migratable paths for the smart contracts yes?

| improve this question | | | | |

Usually a blockchain incorporates new functionality through forks, mantaining backward compatibility. So old contracts will continue to work with the new version without changes.

Having to migrate to a new blockchain defeat one of the purpose of a blockchain, that is to keep a secure state of previous transactions.

It should be possible anyway. If both blockchains share the same genesis block then you should be able to incorporate the old blocks without changes. If the genesis have changes then the only options is to replaying all transactions and generating new blocks.

This last option can be expensive if you have lots of blocks and have to recalculate the proof of work of each block again. You have to consider a sucessful transaction may fail in the new blockchain and reciprocally it can succeed now when preivously it failed.

| improve this answer | | | | |
  • 1
    Not sure you understood me properly or if I formulated the question badly, let's say I'm running a platform with ethereum and now the platform has grown out of the capacity provided by ethereum, how would I go about moving it to my own blockchain where I can do adjustments to the processing/virtual machine – NowsyMe Oct 28 '17 at 22:19
  • The easiest case is that your new blockchain is backward compatible with ethereum, then you can see it as a fork. You do not have to migrate anything (transaction history is intact). If they are not compatible then you have two options: 1) create a "translator" between old and new blockchain and replay all blocks and transactions in the new chain (you keep a "translated" history) 2) create a snapshot at the last block state in the old chain, and only migrate that state (your chain history will be lost). – Ismael Oct 29 '17 at 0:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.