Author [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] Topic: What is the Reason For 0.4.25 Forks ?  (Read 1310 times)

0 Members and 1 Guest are viewing this topic.

Offline emski

  • Hero Member
  • *****
  • Posts: 1283
    • View Profile
    • http://lnkd.in/nPbhxG
What is the Reason For 0.4.25 Forks ?
« on: December 12, 2014, 11:52:22 AM »

We have seen 0.4.24 and 0.4.25 forked before the predefined block.
Am I correct that this could be identified before release with (simple) testing ?
What procedures were followed prior 0.4.25 release ?

Main questions:
Why we have forking 0.4.24 and 0.4.25 before block 1249400 ?
Wasn't this relatively easy to prevent ?

Offline Empirical1.1

  • Hero Member
  • *****
  • Posts: 886
    • View Profile
Re: What is the Reason For 0.4.25 Forks ?
« Reply #1 on: December 12, 2014, 12:16:16 PM »
At least the VOTE presentation went well...

Offline fuzzy

Re: What is the Reason For 0.4.25 Forks ?
« Reply #2 on: December 12, 2014, 12:28:05 PM »
At least the VOTE presentation went well...

yeh, but these kinds of mistakes can reallllly shake confidence in the whole system. 
BROWNIE==DKP; BitShares is our Community! 
ShareBits Welcome to  the Sharing Economy w/ BeyondBitcoin.org Partners--ShareBits.io & OpenLedger.info
TIP FORMAT: #sharebits "ForumHandleInQuotes" Quanity Token_Name

Offline Empirical1.1

  • Hero Member
  • *****
  • Posts: 886
    • View Profile
Re: What is the Reason For 0.4.25 Forks ?
« Reply #3 on: December 12, 2014, 12:32:58 PM »
At least the VOTE presentation went well...

yeh, but these kinds of mistakes can reallllly shake confidence in the whole system.

 +5% Absolutely, I was being sarcastic.

Offline arhag

  • Hero Member
  • *****
  • Posts: 1213
    • View Profile
    • My posts on Steem
  • BTS: arhag
  • GitHub: arhag
Re: What is the Reason For 0.4.25 Forks ?
« Reply #4 on: December 12, 2014, 12:59:06 PM »
At least the VOTE presentation went well...

yeh, but these kinds of mistakes can reallllly shake confidence in the whole system.

So can stolen funds...

But yeah, upgrade procedures/protocols should improve and I am sure will be more refined over time as everyone learns from these sorts of experiences.

Offline vikram

Re: What is the Reason For 0.4.25 Forks ?
« Reply #5 on: December 12, 2014, 03:59:39 PM »
[URGENT] Delegates Please Revert Upgrade!

https://bitsharestalk.org/index.php?topic=7067.msg161312#msg161312

https://bitsharestalk.org/index.php?topic=7067.msg161432#msg161432

All community members please help spread the word.
« Last Edit: December 12, 2014, 06:44:17 PM by vikram »

Offline emski

  • Hero Member
  • *****
  • Posts: 1283
    • View Profile
    • http://lnkd.in/nPbhxG
Re: What is the Reason For 0.4.25 Forks ?
« Reply #6 on: December 12, 2014, 06:55:34 PM »
The questions in OP are not answered.
Consider this a bump.

Offline bytemaster

Re: What is the Reason For 0.4.25 Forks ?
« Reply #7 on: December 12, 2014, 07:14:04 PM »
We implemented a change in how we check for duplicate transactions.  Tested it.  It worked.
We applied the change to the main network and discovered that there was one transaction that was considered a duplicate under the new system that was processed by the old system.
Vikram disabled duplicate checking until the scheduled fork block so that we could validate the old chain.
Vikram tested syncing up with the old chain and it worked. 
Vikram tested producing a block with the upgraded version and it worked.
Announce upgrade.

Delegates started upgrading.   Duplicate transaction checking was "disabled" until the specified fork block.  Delegates started producing blocks that included duplicate transactions and thus were rejected by the non upgraded clients.   

So the testing we needed was "dev share" test net because the bug was is the "handoff / upgrade" code that didn't reveal itself until after we had a chain with multiple delegates running the new code. 

In retrospect the issue could have been easily avoided with a little thinking, but we were rushing to get a security fix in.

We are reviewing our options, but the conclusion is clear.   DevShares needs to come out as soon as possible because it is the most likely way we would have caught this bug.



For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline abit

Re: What is the Reason For 0.4.25 Forks ?
« Reply #8 on: December 12, 2014, 07:19:53 PM »
We implemented a change in how we check for duplicate transactions.  Tested it.  It worked.
We applied the change to the main network and discovered that there was one transaction that was considered a duplicate under the new system that was processed by the old system.
Vikram disabled duplicate checking until the scheduled fork block so that we could validate the old chain.
Vikram tested syncing up with the old chain and it worked. 
Vikram tested producing a block with the upgraded version and it worked.
Announce upgrade.

Delegates started upgrading.   Duplicate transaction checking was "disabled" until the specified fork block.  Delegates started producing blocks that included duplicate transactions and thus were rejected by the non upgraded clients.   

So the testing we needed was "dev share" test net because the bug was is the "handoff / upgrade" code that didn't reveal itself until after we had a chain with multiple delegates running the new code. 

In retrospect the issue could have been easily avoided with a little thinking, but we were rushing to get a security fix in.

We are reviewing our options, but the conclusion is clear.   DevShares needs to come out as soon as possible because it is the most likely way we would have caught this bug.
Ah this is the reason. So the 0.4.25 went wrong.
I was wondering why my balance got doubled  :P :P
BTS account: abit
BTS committee member: abit
BTS witness: in.abit

Offline sschechter

  • Sr. Member
  • ****
  • Posts: 379
    • View Profile
Re: What is the Reason For 0.4.25 Forks ?
« Reply #9 on: December 12, 2014, 07:23:14 PM »
Thanks for the explanation
BTSX: sschechter
PTS: PvBUyPrDRkJLVXZfvWjdudRtQgv1Fcy5Qe

Offline bitmeat

  • Hero Member
  • *****
  • Posts: 1116
    • View Profile
Re: What is the Reason For 0.4.25 Forks ?
« Reply #10 on: December 12, 2014, 07:24:46 PM »
The reason is bad software engineering practices. Lack of solid test framework. It's irresponsible and should be fixed yesterday.

Offline emski

  • Hero Member
  • *****
  • Posts: 1283
    • View Profile
    • http://lnkd.in/nPbhxG
Re: What is the Reason For 0.4.25 Forks ?
« Reply #11 on: December 12, 2014, 07:25:41 PM »
We are reviewing our options, but the conclusion is clear.   DevShares needs to come out as soon as possible because it is the most likely way we would have caught this bug.

That is what I wanted to see. Sorry if the questions I asked were a bit unpleasant or harsh. Bugs happen regardless how much you think over the issue(s).

Testing and release procedures might expose a lot of the bugs.

Offline emski

  • Hero Member
  • *****
  • Posts: 1283
    • View Profile
    • http://lnkd.in/nPbhxG
Re: What is the Reason For 0.4.25 Forks ?
« Reply #12 on: December 12, 2014, 07:30:09 PM »
@Bytemaster
I wonder if you can implement the testnet into the clients.
Essentially double all the actions it does -> once for the real network and once for the test network.
If testing is paid a lot of users/delegates would be willing to enable that feature. And BTS will have testing environment much closer to the real.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12065
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BTS: xeroc
  • GitHub: xeroc
Re: What is the Reason For 0.4.25 Forks ?
« Reply #13 on: December 12, 2014, 07:32:04 PM »
Can I safely assume that 0.4.26 will stay around for some days to weeks now? I will be leaving to airport for a 15h flight ..
Give BitShares a try! Use the http://testnet.bitshares.eu provided by http://bitshares.eu powered by ChainSquad GmbH

Offline bytemaster

Re: What is the Reason For 0.4.25 Forks ?
« Reply #14 on: December 12, 2014, 07:35:35 PM »
Can I safely assume that 0.4.26 will stay around for some days to weeks now? I will be leaving to airport for a 15h flight ..

Yes, that better be the case. :)
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

 

Google+