core
core copied to clipboard
Failed to start DWH
When I deployed the contracts to my private geth chain, I cannot start dwh services. The error is :
Failed to serve DWH: failed to create NewAPI: failed to setup contract registry: abi: unmarshalling empty output
Hello! Seems like you should set the registry contract address in the DWH config, like this
blockchain:
contract_registry: <your_contract_address_here>
@sshaman1101 Thanks for your reply. Actually, I have added the contract_registry address in the config file, but I don't know whether it is correct. Because I didn't find the contract registry address in the deployed contract list, so I use market contract address as the contract registry address. That's why I got that result. By the way, I didn't find any contents related to contract registry address in the blockchain/source/migration doirection. I guess you may miss something.
@sokel @quasisamurai can you please join the discussion and help with the ContractRegistry?
@chen0031 Hi. You can't replace one contract by another, that's why DWH fails.
Key of you problem is in migrations. While /migrations
dir store deploy scripts for a local testing, it doesn't contains ContractRegistry (this is a code name, contract called AddressHashmap.sol) that is only live realise contract.
There is two ways to solve your problem:
-
Write your own deploy script for contract registry, and fill it yourself (it's better to do this in the deploy script to automate it). Try it on and if you need help, you can ping me.
-
Go to #1087 and modify those migrations as you wish. It should take a few time to understand what is going on there, but it can be easier for someone than first way.
If you have more quesions - feel free to ask.
@quasisamurai Thanks for your advice. I can run SONM with the default contract registry. Currently, I am trying SONM in a private chain environment with Ethereum. But I came across some problems. Therefore, could your provide some guides to set up a test private chain and deploy the contracts on it? Thanks a lot!
@chen0031
set up a test private chain
What does you mean by? Setup our chain or your own? Btw, You can't deploy any contracts to our blockchain due we don't allow this by design. So if you want setup your own blockchain, visit geth repo and google more information.
@quasisamurai . I will not deploy any contracts on your blockchain. I have my own test Ethereum private chain and a sidechain. But I cannot make it work although the contracts have been deployed successfully. The DWH service cannot sync blocks between the low data store and the sidechain bock data. I am still thinking what's the problem.