Symbol blockchain news update โ€“ 19/11/21

Well that sucked ๐Ÿ™ What should have been a celebration turned into a bit of a downer for us and probably a huge panic and a stay up all night trying to diagnose and fix the issue for the devs – sorry guys I really wouldn’t want to have your jobs. So much responsibility, I don’t think I would handle the pressure well ๐Ÿ˜ฌ It’s cool though a fix is being worked on and we will go again and next time we will have a bigger party at the end of it! ๐Ÿ˜

It seems that probably(?) the Harlock fork did have sufficient support but the chain halted at the fork block. The devs are trying to diagnose what went wrong and release a fix, obviously it is number one priority right now.

The postmortem will come soon and I will cover it in a later post (or update this post in the morning if it comes out tonight). Attempt number two will be coming soonTM and there is a poll below asking for upgrade timeframe suggestions. At the moment 5 days is the most popular option. I guess because everyone wants to get things fixed and move on. It does throw a spanner in the works though since a) the devs still need to find and fix the bug b) everyone needs to upgrade their nodes again. I don’t know where this leaves Harlock, did we have enough support at the fork height (I think so) and that is why the chain stalled as there was a bug in the Harlock update? I have too many questions here and a total lack of knowledge so I will shut up now so I don’t sound stupid.

It will be interesting to find out what went wrong and what the future steps are so keep your eyes peeled and watch out for tweets by the core devs in the coming hours.

Important update

If you are running a node with a chain height > 3,464,840 then please disable your nodes.

Thanks guys – we appreciate your hard work

Hatchet, Jaguar and Gimre – can I send you guys some beers/coffee/nice food or something? Maybe a some kind of digital voucher, obviously I don’t want your names and postal addresses! I am always amazed by how hard you guys work and feel like I should give something small back. I am sure that the community all feel exactly the same. I can’t overstate how much youโ€™ve done for all of us so I feel really bad that things didn’t go as planned and you have to work even harder to sort things out. I know it is probably a stupid idea but I guess if it is then we still want you to know we are on your side and if we can help in any way just let us know.

That’s it for tonight, I will probably update this article or write something new when I know more. It looks like my son has finally stopped screaming and gone to sleep (I did try to settle him many times – didn’t just let him cry all evening!), I am off to pour a glass of wine and relax now – calm..

And it looks like problem solved – geniuses ๐Ÿคฉ๐Ÿค“

Update (morning of the 19th November)

Well things are starting to get a bit clearer today, there’s no official postmortem as yet but there are two tweets from Jaguar and Gimre explaining the specifics of what went wrong. It seemed to be a combination of two factors and it sounds like it went pretty close to the wire for the Plan A fix – please read their threads for a full explanation.

What went wrong?

From what I can gather from the threads here is a summary of went wrong (edited slightly in the PM due to my lazy summarisation being flagged by Gimre – thank you ๐Ÿ˜).

  • Reissuance transactions were rejected with a FAILURE_TRANSACTION_NOT_ALLOWED_FOR_MULTISIG error at the fork block.
  • Some upgraded nodes with lots of harvesting power were misconfigured meaning fork specific information in the v0.6.98/0.6.9 config files were skipped.
    • This led to the misconfigured nodes failing to stall at the fork and instead they just carried on past block 3,464,800.
  • This in turn led to the misconfigured upgraded nodes joining with the non-upgraded nodes to build a stronger combined chain.
  • The nodes that did stall were unblocked by a special fallback transaction.
  • The combined chain was 120 blocks ahead of the stalled nodes at its worst point.
  • Things looked pretty bleak and it was a race against time to fix the problem before block 3,465,160, at which point it would have been unrecoverable and would have needed much more drastic measures (plan B) to fix.
  • The community and Trust were awesome and worked to switch off the “bad” nodes and delegate to the “good” nodes in order to reallocate harvesting power to the chain with the fallback transaction.

So it is a huge thank you to the devs and the community members that saved the day. It was a close call.

We can look forward to doing it all again soon! ๐Ÿ˜

EDIT: I also missed Hatchet’s tweet (just picked it up). Give this a read too, they are all much more informative than my summary!

Avatar photo
NineLives
admin@symbolblog.com

I'm a Symbol and NEM enthusiast and run this blog to try to grow awareness of the platform in the English-speaking world. If you have any Symbol news you would like me to report on or you have an article that you would like to publish then please let me know!

No Comments

Sorry, the comment form is closed at this time.