Forum Home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    Feathercoin daemon and wallet production version 0.19.1
    Old daemon and wallet version 0.18.3

    [Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.

    Technical Development
    8
    153
    55529
    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.
    • wrapper
      wrapper Moderators last edited by

      main.h

      From 0.11.2

      /** Default for -blockmaxsize and -blockminsize, which control the range of sizes the mining code will create /
      static const unsigned int DEFAULT_BLOCK_MAX_SIZE = 750000;
      static const unsigned int DEFAULT_BLOCK_MIN_SIZE = 0;
      /
      Default for -blockprioritysize, maximum space for zero/low-fee transactions /
      static const unsigned int DEFAULT_BLOCK_PRIORITY_SIZE = 50000;
      /
      Default for accepting alerts from the P2P network. /
      static const bool DEFAULT_ALERTS = true;
      /
      * The maximum size for transactions we’re willing to relay/mine /
      static const unsigned int MAX_STANDARD_TX_SIZE = 100000;
      /
      * Maximum number of signature check operations in an IsStandard() P2SH script /
      static const unsigned int MAX_P2SH_SIGOPS = 15;
      /
      * The maximum number of sigops we’re willing to relay/mine in a single tx */
      static const unsigned int MAX_STANDARD_TX_SIGOPS = MAX_BLOCK_SIGOPS/5;

      verse 0.9.6.1 –

      /* Maturity threshold for PoW base transactions, in blocks (confirmations) */
      extern int nBaseMaturity;
      static const int BASE_MATURITY = 100;

      /** The maximum allowed size for a serialized block, in bytes (network rule) /
      static const unsigned int MAX_BLOCK_SIZE = 1000000;
      /
      * Default for -blockmaxsize and -blockminsize, which control the range of sizes the mining code will create /
      static const unsigned int DEFAULT_BLOCK_MAX_SIZE = 250000;
      static const unsigned int DEFAULT_BLOCK_MIN_SIZE = 0;
      /
      Default for -blockprioritysize, maximum space for zero/low-fee transactions /
      static const unsigned int DEFAULT_BLOCK_PRIORITY_SIZE = 17000;
      /
      The maximum size for transactions we’re willing to relay/mine /
      static const unsigned int MAX_STANDARD_TX_SIZE = 100000;
      /
      * The maximum allowed number of signature check operations in a block (network rule) */
      static const unsigned int MAX_BLOCK_SIGOPS = MAX_BLOCK_SIZE/50;

      from 0.11.2

      static const int MAX_BLOCKS_IN_TRANSIT_PER_PEER = 16;
      /** Timeout in seconds during which a peer must stall block download progress before being disconnected. /
      static const unsigned int BLOCK_STALLING_TIMEOUT = 2;
      /
      * Number of headers sent in one getheaders result. We rely on the assumption that if a peer sends

      • less than this number, we reached its tip. Changing this value is a protocol upgrade. /
        static const unsigned int MAX_HEADERS_RESULTS = 2000;
        /
        * Size of the “block download window”: how far ahead of our current height do we fetch?
      • Larger windows tolerate larger download speed differences between peer, but increase the potential
      • degree of disordering of blocks on disk (which make reindexing and in the future perhaps pruning
      • harder). We’ll probably want to make this a per-peer adaptive value at some point. /
        static const unsigned int BLOCK_DOWNLOAD_WINDOW = 1024;
        /
        * Time to wait (in seconds) between writing blocks/block index to disk. /
        static const unsigned int DATABASE_WRITE_INTERVAL = 60 * 60;
        /
        * Time to wait (in seconds) between flushing chainstate to disk. /
        static const unsigned int DATABASE_FLUSH_INTERVAL = 24 * 60 * 60;
        /
        * Maximum length of reject messages. */
        static const unsigned int MAX_REJECT_MESSAGE_LENGTH = 111;

      From 0.9.6.2

      static const int MAX_BLOCKS_IN_TRANSIT_PER_PEER = 128;
      /** Timeout in seconds before considering a block download peer unresponsive. */
      static const unsigned int BLOCK_DOWNLOAD_TIMEOUT = 60;

      /** AuxPow Block versions for sanity checks. /
      /
      * bare AuxPoW block version which will be modulated further. /
      static const int BLOCK_VERSION_AUXPOW_BARE = CBlockHeader::CURRENT_VERSION | (AUXPOW_CHAIN_ID * BLOCK_VERSION_CHAIN_START);
      /
      * version when AuxPoW exists on the block /
      static const int BLOCK_VERSION_AUXPOW_WITH_AUX = BLOCK_VERSION_AUXPOW_BARE | BLOCK_VERSION_AUXPOW;
      /
      * version when no AuxPoW exists on the block */
      static const int BLOCK_VERSION_AUXPOW_WITHOUT_AUX = BLOCK_VERSION_AUXPOW_BARE & ~BLOCK_VERSION_AUXPOW;

      #ifdef USE_UPNP
      static const int fHaveUPnP = true;
      #else
      static const int fHaveUPnP = false;
      #endif

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

        Test : failed
        QRcodes in 0.9.6.1 - Only the buttons are visible? has the ui file gone?

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

          @wrapper without the ui file you’d get errors during compile, as some signals/slots are missing.

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

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

            @Wellenreiter said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:

            @wrapper without the ui file you’d get errors during compile, as some signals/slots are missing.

            This is testing the 0.9.6.1 release. Just noting, haven’t investigated why …

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

              @wrapper I have the same with 0.11.2
              buttons are there, but nothing happens

              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 1
              • wrapper
                wrapper Moderators last edited by

                Building 0.11.2 - merge should be LogPrintf(" space …

                Noticed this warning, that could be fixed. Noting.

                wallet/wallet.cpp:2746:27: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
                LogPrintf(“pkExtracted=%“PRIszu”:%s\n”, pkExtracted.size(), HexStr(pkExtracted).c_str()); //Is empty

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

                  @wrapper said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:

                  Building 0.11.2 - merge should be LogPrintf(" space …

                  Noticed this warning, that could be fixed. Noting.

                  wallet/wallet.cpp:2746:27: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
                  LogPrintf(“pkExtracted=%“PRIszu”:%s\n”, pkExtracted.size(), HexStr(pkExtracted).c_str()); //Is empty

                  This will HAVE to be fixed for the next release, the main issue is the MacOS build will fail on this warning… linux and windows the build continues with the warning.

                  • FTC Block Explorer + API @ https://fsight.chain.tips
                  • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                  • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                  • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                  bluebox 1 Reply Last reply Reply Quote 1
                  • bluebox
                    bluebox @AcidD last edited by

                    @AcidD Hate to pile on another request, but can you target at least El Capitan compatibility for the next official build? The 0.9.6.1 build cannot run on 10.11, so I’m stuck with looking at a yellow upgrade banner for a while. Did you compile on 10.12 for a reason, deps, etc.?

                    bluebox AcidD 2 Replies Last reply Reply Quote 3
                    • bluebox
                      bluebox @bluebox last edited by

                      @AcidD Sorry, that wasn’t a very “community effort” post I made… “Ask not what Feathercoin (dev’s) can do for you, ask what you can do for Feathercoin” :)

                      I’ll try my hand at compiling the official 0.9.6.1 release on 10.11 (physical Mac, not VM’s!) given your instructions here. 'Bout time I did some Mac compiling, been living in the linux world too long. I do have a 10.12 system to test forward compatibility.

                      DIY, baby!

                      AcidD 1 Reply Last reply Reply Quote 2
                      • AcidD
                        AcidD Moderators @bluebox last edited by

                        @bluebox said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:

                        @AcidD Sorry, that wasn’t a very “community effort” post I made… “Ask not what Feathercoin (dev’s) can do for you, ask what you can do for Feathercoin” :)

                        I’ll try my hand at compiling the official 0.9.6.1 release on 10.11 (physical Mac, not VM’s!) given your instructions here. 'Bout time I did some Mac compiling, been living in the linux world too long. I do have a 10.12 system to test forward compatibility.

                        DIY, baby!

                        Follow this one
                        https://forum.feathercoin.com/topic/8769/guide-build-feathercoind-feathercoin-qt-v0-9-3-1-on-macos-sierra

                        it’s a proper guide I wrote for the 0.9.X series…it is still valid for 0.9.6.1

                        See post 1.

                        • FTC Block Explorer + API @ https://fsight.chain.tips
                        • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                        • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                        • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                        1 Reply Last reply Reply Quote 1
                        • AcidD
                          AcidD Moderators @bluebox last edited by

                          @bluebox said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix & Issues notes for 0.11.2:

                          @AcidD Hate to pile on another request, but can you target at least El Capitan compatibility for the next official build? The 0.9.6.1 build cannot run on 10.11, so I’m stuck with looking at a yellow upgrade banner for a while. Did you compile on 10.12 for a reason, deps, etc.?

                          Hi, Please try the download at Feathercoin.com now.

                          • FTC Block Explorer + API @ https://fsight.chain.tips
                          • FTC Beer Money: 6x4LEQV88zRnBvZoH6ZNK6SeRxx4KiTyJs
                          • FTC bech32 address: fc1q4tclm3cv4v86ez6el76ewmharexfapxhek5a03
                          • BTC bech32 address: bc1qk8umuccapuafspk9e5szahvp0detafuzugv4ay

                          bluebox 1 Reply Last reply Reply Quote 2
                          • bluebox
                            bluebox @AcidD last edited by

                            @AcidD Works perfectly, thanks!

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

                              [Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.

                              Sync speed up recommendations / switches available :

                              feathercoin-qt -maxorphanblocks=10000 -maxorphantx=10000 -shrinkdebugfile

                              Blockchain sync speed investigation / improvements and changes.

                              wallet.cpp - Contains non UTF-8 characters - translated and removed
                              - Contains unnecessary non-debug / development messages - commented out.

                              main.cpp - Contains unnecessary non-debug / development messages - commented out.

                              db.cpp - Contains unnecessary non-debug / development messages - commented out.

                              net.cpp - Contains unnecessary non-debug / development messages - commented out.

                              util.ccp - Contains unnecessary non-debug / development messages - commented out.

                              util.h - Contains unnecessary non-debug / development messages - commented out.

                              noui.cpp - Contains unnecessary non-debug / development messages - commented out.

                              leveldbwrapper.cpp - Contains unnecessary non-debug / development messages - commented out.

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

                                Change Oprhan, ERROR to be a debug error. Orphans appear in the chain as part of the normal operation of the blockchain.

                                main.cpp line 1502

                                 bool CheckProofOfWork(uint256 hash, unsigned int nBits)
                                 {
                                     CBigNum bnTarget;
                                     bnTarget.SetCompact(nBits);
                                
                                     // Check range
                                     if (bnTarget <= 0 || bnTarget > Params().ProofOfWorkLimit())
                                         return error("Check range CheckProofOfWork() : nBits below minimum work");
                                
                                     // Check proof of work matches claimed amount
                                     // LogPrintf("CheckProofOfWork() hash=%s \n",hash.ToString().c_str());
                                     // LogPrintf("CheckProofOfWork() nBits=%i \n",nBits);
                                     // LogPrintf("CheckProofOfWork() bnTarget.getuint256=%s \n",bnTarget.getuint256().ToString().c_str());
                                     if (hash > bnTarget.getuint256())
                                         return error("matches claimed amount, CheckProofOfWork() : hash doesn't match nBits");
                                
                                     return true;
                                 }
                                

                                Original Code

                                        if (hash > bnTarget.getuint256())
                                           {
                                             if (fDebug)
                                                 LogPrintf("matches claimed amount, CheckProofOfWork() : hash doesn't match nBits");
                                              }
                                         return true;
                                     return true;
                                 }
                                

                                Updated code

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

                                  Remaining Messages :

                                  2017-08-12 10:33:13 ProcessBlock() ProcessBlock: ORPHAN BLOCK 135, prev=5adbae1967ce709f0a64d13a248043af2aa628851896655890604a9390e4d6f2

                                  main.cpp Line 3208

                                  {
                                      LogPrintf("ProcessBlock() ProcessBlock: ORPHAN BLOCK %lu, prev=%s\n", (unsigned long)mapOrphanBlocks.size(), pblock->hashPrevBlock.ToString());
                                  
                                      // Accept orphans as long as there is a node to request its parents from
                                      if (pfrom) {
                                  

                                  Original code

                                  {
                                      if (fDebug)
                                           LogPrintf("ProcessBlock() ProcessBlock: ORPHAN BLOCK %lu, prev=%s\n", (unsigned long)mapOrphanBlocks.size(), pblock->hashPrevBlock.ToString());
                                  

                                  Updated code

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

                                    Remaining Messages :

                                    2017-08-12 10:33:13 StealthSecret failed.rv=5

                                    wallet.cpp - Line 2060

                                          {
                                                if (fDebug)
                                                    LogPrintf("StealthSecret failed.rv=%d \n",rv);
                                                continue;
                                            };
                                    

                                    Add fDebug test to message, stealth fails due to not being included yet. Message must by misinterpreting some (orphan) blocks as having stealth addresses?

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

                                      Block 1089183
                                      Date Sun Feb 14 20:19:13 2016

                                      2017-08-12 11:02:52 setKeyPool.size() = 100
                                      2017-08-12 11:02:52 mapWallet.size() = 21
                                      2017-08-12 11:02:52 mapAddressBook.size() = 45
                                      2017-08-12 11:02:52 init message: Done loading
                                      2017-08-12 11:02:52 ERROR: AcceptToMemoryPool : nonstandard transaction: non-final
                                      2017-08-12 11:02:52 Initialization result: 1
                                      2017-08-12 11:03:03 dnsseed thread exit
                                      2017-08-12 11:03:08 GetMyExternalIP() returned 88.105.71.156
                                      2017-08-12 11:03:08 AddLocal(88.105.71.156:9336,4)
                                      2017-08-12 11:03:08 ext-ip thread exit
                                      2017-08-12 11:03:19 ERROR: CAlert::CheckSignature() : verify signature failed
                                      2017-08-12 11:03:19 Misbehaving: 66.207.163.137:9336 (0 -> 10)
                                      2017-08-12 11:03:30 ERROR: AcceptToMemoryPool : nonstandard transaction: non-final
                                      2017-08-12 11:03:30 ERROR: CheckBlockHeader() : block with timestamp before last checkpoint
                                      2017-08-12 11:03:30 ERROR: ProcessBlock() : CheckBlock FAILED
                                      2017-08-12 11:03:31 ERROR: CheckBlockHeader() : block with timestamp before last checkpoint
                                      2017-08-12 11:03:31 ERROR: ProcessBlock() : CheckBlock FAILED
                                      2017-08-12 11:03:31 ERROR: CheckBlockHeader() : block with timestamp before last checkpoint
                                      2017-08-12 11:03:31 ERROR: ProcessBlock() : CheckBlock FAILED

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

                                        ERROR: AcceptToMemoryPool : nonstandard transaction: non-final

                                        main.cpp Line 899

                                            if (Params().NetworkID() == CChainParams::MAIN && !IsStandardTx(tx, reason))
                                                 return state.DoS(0,
                                                             error("AcceptToMemoryPool : nonstandard transaction: %s", reason),
                                                             REJECT_NONSTANDARD, reason);
                                        

                                        Original code

                                            if (Params().NetworkID() == CChainParams::MAIN && !IsStandardTx(tx, reason))
                                                 if (fDebug)
                                                      LogPrintf("AcceptToMemoryPool : nonstandard transaction: %s");
                                                 return state.DoS(0,NULL, REJECT_NONSTANDARD, reason);
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • wrapper
                                          wrapper Moderators last edited by

                                          Remaining Debug Output :

                                          2017-08-12 11:53:42 No coin database inconsistencies in last 289 blocks (484 transactions)
                                          2017-08-12 11:53:42 init message: Checking ACP …
                                          2017-08-12 11:53:42 block index 14099ms
                                          2017-08-12 11:53:42 init message: Loading wallet…
                                          2017-08-12 11:53:43 nFileVersion = 90602
                                          2017-08-12 11:53:43 Keys: 0 plaintext, 0 encrypted, 149 w/ metadata, 0 total
                                          2017-08-12 11:53:43 wallet 209ms
                                          2017-08-12 11:53:43 init message: Loading addresses…
                                          2017-08-12 11:53:28 Feathercoin version v0.9.6.2-ftcit-Standard (2017-07-14 17:27:25 +0200)
                                          2017-08-12 11:53:28 Using OpenSSL version OpenSSL 1.0.2g 1 Mar 2016
                                          2017-08-12 11:53:28 Using BerkeleyDB version Berkeley DB 5.3.28: (September 9, 2013)
                                          2017-08-12 11:53:28 Default data directory /home/wrapper/.feathercoin
                                          2017-08-12 11:53:28 Using data directory /home/wrapper/.feathercoin
                                          2017-08-12 11:53:28 Using at most 125 connections (1024 file descriptors available)
                                          2017-08-12 11:53:28 Using 8 threads for script verification
                                          2017-08-12 11:53:28 Using wallet wallet.dat
                                          2017-08-12 11:53:28 init message: Verifying wallet…
                                          2017-08-12 11:53:28 init message: Loading block index…
                                          2017-08-12 11:53:42 LoadBlockIndexDB(): synchronized checkpoint 12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2
                                          2017-08-12 11:53:42 init message: Verifying blocks…
                                          2017-08-12 11:53:42 pindex->GetBlockHash()=27194dbff22fde7e4c1552ac82d3e610e405a65d2236d2ebbfa42a7565229b2a
                                          2017-08-12 11:53:42 view.GetBestBlock()=27194dbff22fde7e4c1552ac82d3e610e405a65d2236d2ebbfa42a7565229b2a
                                          2017-08-12 11:53:43 Loaded 10230 addresses from peers.dat 43ms
                                          2017-08-12 11:53:43 mapBlockIndex.size() = 1089184
                                          2017-08-12 11:53:43 nBestHeight = 1089183
                                          2017-08-12 11:53:43 setKeyPool.size() = 100
                                          2017-08-12 11:53:43 mapWallet.size() = 21
                                          2017-08-12 11:53:43 mapAddressBook.size() = 45
                                          2017-08-12 11:53:43 init message: Done loading
                                          2017-08-12 11:53:43 Initialization result: 1
                                          2017-08-12 11:53:45 GetMyExternalIP() returned xxx.xxx.xxx.xxx
                                          2017-08-12 11:53:45 AddLocal(xxx.xxx.xxx.xxx:9336,4)
                                          2017-08-12 11:53:45 ext-ip thread exit
                                          2017-08-12 11:53:54 dnsseed thread exit

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

                                            Re: LoadBlockIndexDB(): synchronized checkpoint 12a765e31ffd4059bada1e25190f6e98c99d9714d334efa41a195a7e7e04bfe2

                                            **main.cpp - Line 3544

                                            // ppcoin: load hashSyncCheckpoint
                                            if (!pblocktree->ReadSyncCheckpoint(hashSyncCheckpoint))
                                            	 LogPrintf("LoadBlockIndexDB(): synchronized checkpoint not read\n");
                                            else
                                            	 LogPrintf("LoadBlockIndexDB(): synchronized checkpoint %s\n", hashSyncCheckpoint.ToString().c_str());
                                            

                                            Original code

                                            if (!pblocktree->ReadSyncCheckpoint(hashSyncCheckpoint))
                                            	 LogPrintf("LoadBlockIndexDB(): synchronized checkpoint not read\n");
                                            else
                                                 if (fDebug)
                                                 	 LogPrintf("LoadBlockIndexDB(): synchronized checkpoint %s\n", hashSyncCheckpoint.ToString().c_str());
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post