SMT hard fork testing report #5 : Emission token unit bug, calling for more support

in #smt4 years ago (edited)

Hello,

Asking for more support

When I started this proposal, I assumed that the smt testing period would last about three months, so I put the end of my proposal in three months, but my proposal is coming to an end and the testing is still ongoing, so I would like to ask for your support on my followup proposal, obviously should the testing end before the end of the proposal, I will cancel the proposal now that it no longer serves a purpose.

Here's a few easy links to vote on it :

https://steemproposals.com/proposal/70
steemconnect

Anyways, onto the report

The previous bug is still ongoing

The steemit team worked hard and pushed a fix for the previous bug I found, but alas, it came back with another issue linked to it. So the testnet has been restarted with some additional logging so that we can have more insight on how to fix it for good. I have restarted my testnet killer script (source here : https://github.com/drov0/hf23-testing/blob/master/bulk_full_setup.js) and the testnet should crash in the coming days. Hopefully this will be the last time this script works.

Another issue with the emission operation found

Meanwhile while reading some code I realized that with the emission operation it is possible to set it up so that the chain will emit tokens to an account that doesn't exists.

This wouldn't have any bad effect when the emission object is created, but as soon as the smt launches and the first emission executes itself, the chain won't realize that the account doesn't exists and basically give tokens to a nonexistent account. Which would, as you can expect, would probably crash the network, I didn't put this theory to the test as this would just delay further testing. Chain restarts are quite time consuming.

The reason why is that it's not an obvious flaw since you can set various emission destinations market, vesting, reward pool and founders. And there is quite a bit of code there in order to support those various destinations.

Fixing the issue

While I was at it and since the steemit team is focused on the other bug, I figured I would to make the fix myself, so I submitted a pull request with the necessary code changes to fix the issue : https://github.com/steemit/steem/pull/3582

it's working but it's lacking some unit tests. So I'll do some more work on it later on.

Does this bug has a twin ?

Doing all this and realizing that the emission target accounts (vesting, reward pool etc etc) system is quite similar for the ICO part, so I've checked it out as well.

And it looks like it does not have one, as you can see here : https://github.com/steemit/steem/blob/master/libraries/chain/smt_evaluator.cpp#L135

This function calls this other function (https://github.com/steemit/steem/blob/master/libraries/chain/smt_evaluator.cpp#L122) to validate all the targets.

So all good on that end.

Anyways that's about it for this report. Please consider voting my followup proposal using these links :

https://steemproposals.com/proposal/70
steemconnect

Sort:  

This is good work and I am supporting the extension.

Another benefit that Steem gets from funding this work is @howo becoming more familiar with the core Steem code, and can be better prepared to start to help with additional development and testing tasks in the future. Having more people with experience working with the code for Steem is a big deal.

keep up the good work 👍👍

Thank you for your continuous support !

you have my vote

Good job finding those bugs.

Who forgot to switch accounts ? @jarvie ? :p

haha. I thought about it... but @steempeak is also grateful for you helping with the testnet so i didn't see the need to switch.

Thanks anyways :p

Nothing worse than an evil twin

hello steemit and i hope that you dont spam me , i need some support from you . i m using this website since two years and i couldnt increase my account at all . peace to you all from north africa .

Congratulations @howo!
Your post was mentioned in the Steem Hit Parade in the following category:

  • Pending payout - Ranked 3 with $ 62,32

You have my vote.

Hi, Martin!
I apologize for writing here, but I saw that you are one of the founders of the Steempress platform, and I felt it necessary to inform you that with the help of the @steemcleaners, I started the process of downvoting the @abrikoss account which using your plugin to publish meaningless posts with links to other people's content ... I thought you should know about this.

Congratulations @howo! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You distributed more than 36000 upvotes. Your next target is to reach 37000 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Vote for @Steemitboard as a witness to get one more award and increased upvotes!

Nice work @howo. Is it possible for you to continue work on this for HMT and bring it to live as soon as possible?

I think we may not need a Hive Engine if we can get HMT up and running. Correct me if I'm wrong.

Hi,

SMTs are stil SMTs, the S stands for "smart", Smart Media Tokens.

I am continuing my work on SMTs, but don't expect them too soon, We will be doing hard fork 24 and there will probably be a few months before smts

Thank you so much for the response. It will be great to see that soon. It will be helpful for all the tribes that are using the sidechain now.

Good luck with that. 👍🙂

thanks for this blog bro