Forum Home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular

    [Dev] The Path to Upgrading of Blockchain from V2 to v4

    Technical Development
    3
    15
    10521
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • lizhi
      lizhi last edited by wrapper

      It’s a pity that I failed today. I want to upgrade our blcokchain from version 2 to version 4. But I get a Orphaned Block at 1219055 .

      alt text

      Our 0.11.2 node accpet it ,but 0.9.3 node refuse it.

      alt text

      alt text

      1 Reply Last reply Reply Quote 0
      • Wellenreiter
        Wellenreiter Moderators last edited by

        @Lizhi:

        • are you sure, that version 4 is fully backward compatible to version 2?
        • did you do that on the testnet before?
        • did you test it with all versions currenty on the prod net active on the testnet? This means Wallet versions 0.8.7, 0.8.7.1 - 0.8.7.3 and 0.9.3, 0.9.3.1, 0.9.5.1 and eventually the 0.11.x versions!!

        There is a high risk of forking the BC if that change is not implemented in a proper way. we need to be sure, that all clients on the production chain are able to handle version 4.

        As you know we had a fork situation already to month ago, because some clients produced blocks, that where not accepted by older clients and it took big effort to solve that, not to mention the loss for a lot of miners, who where on the wrong branch of the block chain.

        I’d prefer, if we could agree on a plan before implementing such drastic changes to the BC

        Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
        Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

        1 Reply Last reply Reply Quote 2
        • lizhi
          lizhi last edited by

          Our problem is 0.8 and 0.9 accept version 2 only. Both stay in place for ever. So we need to obsolete old client.

          0.9.3.1
          https://github.com/FeatherCoin/Feathercoin/commit/911098d4b9124ff01406729efc345a4dbbff6d68

          master-0.8
          https://github.com/FeatherCoin/Feathercoin/commit/d99df787b154bd6e717cefcdadb5a226cb36965e

          0.11 can run with old protocol, but old version can not upgrade. This is a headache problem.

          alt text

          1 Reply Last reply Reply Quote 0
          • Wellenreiter
            Wellenreiter Moderators last edited by Wellenreiter

            We need to do a well prepared switch over to version 4.

            It will be a hard fork, but we can do it like we did for the neoscrypt fork.

            We define a block height some month in the future, where we will start creating V4 blocks.
            Then we announce that block number and the expected date/time for the block and give people a chance to update in advance.

            We can test this process in the testnet and minmize the risk.

            Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
            Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

            1 Reply Last reply Reply Quote 0
            • lizhi
              lizhi last edited by

              All the people stop the old version,use new version. I think it’s so.

              1 Reply Last reply Reply Quote 0
              • Wellenreiter
                Wellenreiter Moderators last edited by

                Yes, but the new version needs to use protocol version 2 until a defined block is mined and then switch to protocol version 4.

                The block that triggers the switch, must be at least 3 month in the future AFTER the new version is fully tested on the testnet, and prooved to be stable and safe

                Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                1 Reply Last reply Reply Quote 0
                • lizhi
                  lizhi last edited by

                  Today, I insert ACP into Core 0.11.2 . It work right.

                  https://github.com/FeatherCoin/Feathercoin/commit/d214d0dcb42b390ee81bc35ecb5c447f6c7437a2

                  Wellenreiter 1 Reply Last reply Reply Quote 2
                  • Wellenreiter
                    Wellenreiter Moderators @lizhi last edited by

                    @lizhi : great work 😃

                    How did you test it?

                    This makes 0.11.2 the next release candidat. We ‘just’ need to plan the release and the corresponding hard fork carefully

                    Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                    Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                    1 Reply Last reply Reply Quote 0
                    • Wellenreiter
                      Wellenreiter Moderators last edited by

                      I have closed the corresponding issue on github :)

                      Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                      Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                      1 Reply Last reply Reply Quote 2
                      • wrapper
                        wrapper Moderators last edited by

                        Thanks for all the work integrating FTC specific requirements into the ongoing Bitcoin developments.

                        There is the point that it would be less work on going to continuously integrate the latest patches in to DEV version. They can be testable of new features, which we can choose to include or schedule hard or soft forks more sensibly…

                        1 Reply Last reply Reply Quote 0
                        • wrapper
                          wrapper Moderators last edited by wrapper

                          Just a note that it might both looking at some other (alt coin) work (later) eg

                          regenerating the Genesis block - 2016 Doge : student project.
                          https://github.com/dogecoin/dogecoin/issues/1185

                          1 Reply Last reply Reply Quote 1
                          • lizhi
                            lizhi last edited by

                            Today, I revert stealth address in 0.11.2
                            https://github.com/FeatherCoin/Feathercoin/commit/28d1bd02388cbc63081f3a4dab3ebf39ba7713d8

                            give-me-coins.com run 0.9.3 and accept transaction with stealth address .

                            1 Reply Last reply Reply Quote 2
                            • lizhi
                              lizhi last edited by

                              I push a patch for 0.11.2, fix ACP issue.
                              https://github.com/FeatherCoin/Feathercoin/commit/9b4ffd0da4291aa6a8a3f733b075efb5836100ad

                              1 Reply Last reply Reply Quote 2
                              • wrapper
                                wrapper Moderators last edited by

                                I’ve just been reading about the changes in handling the Blockchain for the v4 database, particularly interesting was non contiguous blocks in the new format.

                                https://bitcoin.org/en/release/v0.11.0

                                This is quite a big change which we need to careful and steady about implementing. There is no need to create additional problems by rushing it out now. FTC still has a release to finish off, test and improve with 0.9.3.X.

                                This is supposed to be financial software, we absolutely must go through a release procedure such that binary builds are checked and on independent, secure downloads.

                                There are enough people / time to do that, whilst @Lizhi has had to do it all himself, he need to bring people along now, by letting us catch up. For instance, we have fixed build instructions and such, there is no help for the new features, Alt-4 etc keys don’t work … all of which are fixable, test on v2 – move to v4 already with enhanced new features and tested.

                                wrapper 1 Reply Last reply Reply Quote 4
                                • wrapper
                                  wrapper Moderators @wrapper last edited by

                                  I was just looking at Litecoins new forum / website and I note they thing 2.5 mins is fast enough transaction time and they don’t need v4 upgrade yet…

                                  https://litecoin.org/

                                  1 Reply Last reply Reply Quote 1
                                  • First post
                                    Last post