Hey roundrobin, I am also working with a Litecoin clone, and I noticed the same: if you use 'LtcScryptChain', blocks are loaded in the DB but only block 0 is displayed on the web. As you say, if you choose 'Sha256Chain' as policy, all blocks are loaded and displayed in the initial table, but if you click on any of the blocks it fails, showing a web with the message 'A server error occurred. Please contact the administrator.' Console shows up this error:
...
So, did you managed to overcome this error with your Litecoin clone coin? And if yes, how did you do it?
Cheers!
Hi. I did it by changing the policy field, magic number and script addr version in the "chain" database after the first error, then starting up Abe again and let it do all the blocks when i had corrected the values. the bug with abe is that it ignores what you put in the config file for policy. In my conf file i don't set policy at all. But the coin I tried with is not proof-of-stake, so I never had the error you show. Maybe there is a different method you need to find for PoS. Also I used blkfile method, not RPC because Abe refused to accept my "import-tx" when I used RPC setting. In fact it also refused my magic number and script address version because it didn't want to accept any escaping for hex values, unicode etc.. nothing worked so i had to put all those values into the database afterwards.
Hi roundrobin, thanks for replying.
My coin is not PoS, it is PoW, so the error makes sense, and after all it is 'normal' it gives errors when trying to read block contents because Abe added them assigning them a wrong algorithm (SHA256D instead of Scrypt). In my case I also use blkfile and I don't set the policy in the abe.conf file, I instead created a default at the beggining of 'DataStore.py' (deleting the existing ones because I don't need them):
CHAIN_CONFIG = [
{"chain":"FirstCoin", "policy":"Sha256Chain",
"code3":"FST", "decimals":"8", "address_version":"\x00", "magic":"\xfa\xc3\xb6\xda"},
#{"chain":"",
# "code3":"", "address_version":"\x", "magic":""},
]
This way all those values (including address version and magic numbers) are inserted correctly in the 'chain' table.
Then I do:
>sudo python setup.py install
and then:
>sudo python -m Abe.abe --config abe.conf --commit-bytes 100000 --no-serve
Which loads all the blocks nicely into the DB and also all the fields I specified in DataStore-py to the 'chain' table, and then:
>sudo python -m Abe.abe --config abe.conf
Then I go the the web page, and the table with the blocks shows up, but when you click on a block the error I mentioned on my previous post occurs.
So could you ellaborate a bit more your reply? What did you change in the 'chain' table? Did you simply replaced 'Sha256Chain' to 'LtcScryptChain' in the the 'chain_policy' field of the 'chain' table? And then what should I do? I tried to simply replace that value in the 'chain' table, but didn't fix anything. I don't receive any errors when loading blocks to the database. So could please detail a bit more the process you are folllowing to get it working? This Abe thing is driving me mad, it should be a lot easier to set up a simple LTC clone.
Thanks in andvance.
Cheers!