Giter VIP home page Giter VIP logo

stratisfullnode's Introduction

CirrusMain Nightly
Build status

Stratis (STRAX) Full Node

Bitcoin Implementation in C#

Stratis is an implementation of the Bitcoin protocol in C# on the .NET Core platform.
The node can run on the Bitcoin and Stratis networks.
Stratis Bitcoin is based on the NBitcoin project.

For Proof of Stake support on the Stratis token the node is using NStratis which is a POS implementation of NBitcoin.

.NET Core is an open source cross platform framework and enables the development of applications and services on Windows, macOS and Linux.

Join our community on discord.

The design

A Modular Approach

A Blockchain is made of many components, from a FullNode that validates blocks to a Simple Wallet that track addresses. The end goal is to develop a set of Nuget packages from which an implementer can cherry pick what he needs.

  • NBitcoin
  • Stratis.Bitcoin.Core - The bare minimum to run a pruned node.
  • Stratis.Bitcoin.Store - Store and relay blocks to peers.
  • Stratis.Bitcoin.MemoryPool - Track pending transaction.
  • Stratis.Bitcoin.Wallet - Send and Receive coins
  • Stratis.Bitcoin.Miner - POS or POW
  • Stratis.Bitcoin.Explorer

Create a Blockchain in a .NET Core style programming

  var node = new FullNodeBuilder()
   .UseNodeSettings(nodeSettings)
   .UseConsensus()
   .UseBlockStore()
   .UseMempool()
   .AddMining()
   .AddRPC()
   .Build();

  node.Run();

What's Next

We plan to add many more features on top of the Stratis Bitcoin blockchain: Sidechains, Private/Permissioned blockchain, Compiled Smart Contracts, NTumbleBit/Breeze wallet and more...

Running a FullNode

The master branch is actively developed and regularly committed to, and it can become unstable.
To compile a stable (production) release use any of the release tags form version 3.0.x.x and upwards.

git clone https://github.com/stratisproject/StratisFullNode.git  
cd StratisFullNode\src

dotnet build

To run on the StraxTest network:

cd Stratis.StraxD
dotnet run -testnet

Development

Up for some blockchain development?

Check this guides for more info:

There is a lot to do and we welcome contributers developers and testers who want to get some Blockchain experience. You can find tasks at the issues/projects or visit the dev_general channel on discord.

Testing

stratisfullnode's People

Contributors

aprogiena avatar arcsin2000x avatar bokobza avatar carlton355 avatar codingupastorm avatar dangershony avatar derrick- avatar fassadlr avatar fenix2222 avatar ferdeen avatar fshutdown avatar herbepau avatar ianadavies avatar justintopham avatar kogot avatar majikandy avatar mikedennis avatar mithrilman avatar monsieurleberre avatar neurosploit avatar nicolasdorier avatar noescape00 avatar nopara73 avatar quantumagi avatar rowandh avatar sondreb avatar stratisiain avatar thefazzer avatar tjadenfroyda avatar zeptin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

stratisfullnode's Issues

Swagger explanatory detail is sparse

I was looking in the project for the swagger documentation source, to contribute some enhancements based on Stratis academy content and guidance I received from support on discord, which helped me understand some of the elements in the API.
I was assuming that it was auto-generated from the XMLDOC content in the code, but it doesn't look like it, since I see differences between that and the descriptive text shown in Swagger. I can't see other Swagger config files anywhere in the archive, even by keyword searches so not sure what I'm doing wrong.

If someone can show me where the Swagger content is or what the process is for contributing to it, I can make a first pass at describing the APIs I understand (which are also those that most users who try Swagger are likely to need) so we have a baseline for someone more advanced to build on and describe the more complex items (like cold staking)

Local Call Log Deserialization

As an API user, I would like to have Local Call logs deserialized before the request is returned from SmartContracts/local-call. Currently the internalTransfers do not output the address values and log topics and data are not returning deserialized values as they do at the SmartContracts/receipt endpoint.

Using master branch 60cff14

Current Response

{
    "internalTransfers": [
        {
            "from": {
                "size": 20
            },
            "to": {
                "size": 20
            },
            "value": 0
        }
    ],
    "gasConsumed": {
        "value": 33810
    },
    "revert": false,
    "errorMessage": null,
    "return": null,
    "logs": [
        {
            "address": {
                "size": 20
            },
            "topics": [
                "VHJhbnNmZXJMb2c=",
                "FNys6Fs53wRCRQyDlaFu5ODb+I8=",
                "ic5TcYHmoKaTwsCEUOOsw9kqxfg="
            ],
            "data": "+EuUFNys6Fs53wRCRQyDlaFu5ODb+I+Uic5TcYHmoKaTwsCEUOOsw9kqxfigECcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
        },
        {
            "address": {
                "size": 20
            },
            "topics": [
                "U3RhcnRNaW5pbmdMb2c=",
                "FNys6Fs53wRCRQyDlaFu5ODb+I8="
            ],
            "data": "+HiUFNys6Fs53wRCRQyDlaFu5ODb+I+gECcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgUOKjcuEVjQUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgUOJU5qwteAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
        }
    ]
}

Expected Response

{
    "internalTransfers": [
        {
            "from": "PAVV2c9Muk9Eu4wi8Fqdmm55ffzhAFPffV",
            "to": "PM9pu2ppUaRU1WMsUnq5en1b4ruwLqqEpX",
            "value": 0
        }
    ],
    "gasConsumed": {
        "value": 33810
    },
    "revert": false,
    "errorMessage": null,
    "return": null,
    "logs": [
        {
            "address": "PX2J4s4UHLfwZbDRJSvPoskKD25xQBHWYi",
            "topics": [
                "5472616E736665724C6F67",
                "14DCACE85B39DF0442450C8395A16EE4E0DBF88F",
                "89CE537181E6A0A693C2C08450E3ACC3D92AC5F8"
            ],
            "data": "F84B9414DCACE85B39DF0442450C8395A16EE4E0DBF88F9489CE537181E6A0A693C2C08450E3ACC3D92AC5F8A0002D310100000000000000000000000000000000000000000000000000000000",
            "log": {
                "event": "TransferLog",
                "from": "PAVV2c9Muk9Eu4wi8Fqdmm55ffzhAFPffV",
                "to": "PM9pu2ppUaRU1WMsUnq5en1b4ruwLqqEpX",
                "amount": "20000000"
            }
        },
        {
            "address": "PM9pu2ppUaRU1WMsUnq5en1b4ruwLqqEpX",
            "topics": [
                "53746172744D696E696E674C6F67",
                "14DCACE85B39DF0442450C8395A16EE4E0DBF88F"
            ],
            "data": "F8789414DCACE85B39DF0442450C8395A16EE4E0DBF88FA0002D310100000000000000000000000000000000000000000000000000000000A040BBA372E1158D05000000000000000000000000000000000000000000000000A040BB54E6AC2D7803000000000000000000000000000000000000000000000000",
            "log": {
                "event": "StartMiningLog",
                "miner": "PAVV2c9Muk9Eu4wi8Fqdmm55ffzhAFPffV",
                "amount": "20000000",
                "totalSupply": "399999999941000000",
                "minerBalance": "249999999941000000"
            }
        }
    ]
}

"Connected to the API. Waiting for node to initialize" > Wallet never load > Poor UX for Strax Wallet

I know many users have complain about this issue in Telegram and Discord. They don't check Task Manager or the logs and their experience with Stratis and Strax wallet leaves a bad taste. I highly recommend this be fixed.

In my particular case today, I had Windows Update and the system restarted by itself. I came back home and cannot start Strax wallet. I had to delete all folders and resync.

Problem: Starting wallet and doesn't load pass "Connected to the API. Waiting for node to initialize."

Symptoms:

  1. Wallet never load.
  2. Task Manager - processes are separated.
    TaskManager_Strax_NotLoading
    TaskManager_Strax_NotLoading_2
  3. Restart wallet and Stratis Daemon crashes.

Log:

[2021-01-20 03:04:19.6581 10] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync FlushChain starting in 60 seconds.
[2021-01-20 03:04:19.7166 11] INFO: Stratis.Bitcoin.Base.BaseFeature.StartAddressManager Loading peers from : C:\Users\Hieu\AppData\Roaming\StratisNode\strax\StraxMain.
[2021-01-20 03:04:20.0762 10] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync Periodic peer flush starting in 300 seconds.
[2021-01-20 03:04:20.2830 4] ERROR: Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.LogAndAddException An error occurred: 'Stratis.Bitcoin.Features.BlockStore.BlockStoreException: Block store failed to recover.
at Stratis.Bitcoin.Features.BlockStore.BlockStoreQueue.RecoverStoreTip() in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin.Features.BlockStore\BlockStoreQueue.cs:line 424
at Stratis.Bitcoin.Features.BlockStore.BlockStoreQueue.Initialize() in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin.Features.BlockStore\BlockStoreQueue.cs:line 205
at Stratis.Bitcoin.Base.BaseFeature.InitializeAsync() in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin\Base\BaseFeature.cs:line 227
at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.<>c.b__3_1(IFullNodeFeature service) in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 56
at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action`1 callback, Boolean disposing) in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 130'
[2021-01-20 03:04:20.2908 4] ERROR: Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Initialize An error occurred starting the application.

Stack overflow exception on storing struct with an enum value.

Version: StratisFullNode-1.0.9.0 PoA with devmode=miner

Sample contract to generate the issue:

[Deploy]
public class SampleContract : SmartContract
{
    public SampleContract(ISmartContractState smartContractState)
    : base(smartContractState)
    {                
    }

    private void SetRequest(uint id, Request request) => State.SetStruct($"request:{id}", request);

    public Request GetRequest(uint id) => State.GetStruct<Request>($"request:{id}");

    public bool SampleRequest (uint id)
    {
        var request = new Request()
        {
             Id = id,
             RequestStatus = Status.Created
        };

        SetRequest(id, request);

        return true;
    }

    public struct Request
    {
        [Index]
        public uint Id;

        public Status RequestStatus;        
    }

    public enum Status
    {
        Created,
        Canceled
    }
}

You can reproduce the issue by executing the SampleRequest method.

Error:

image

If you change RequestStatus to int and cast while storing, it works fine.

developer forum or community?

Hi,

I've started develop basing on stratis and could not find any forum where to ask beginner's questions. The existing documentation is general and outdated. The link in the readme https://discord.gg/9tDyfZs seems not to work. Could you please provide a place to ask/discuss questions? Thank you.

Caching BlockStore's UTXOs

public ReconstructedCoinviewContext GetCoinviewAtHeight(int blockHeight)

Is there currently a way to actually cache the UTXOs so that whenever you call ​/api​/BlockStore​/getutxoset the node does not have to do UTXO re-indexing, which takes quite some time.

This is currently the only way (as far as I know) to get UTXOs for a particular descriptor/scriptPubKey (since you can only query using address).

[SC] State.Clear doesn't work correctly

When State.Clear is called it pushes null to the cache. If nothing attempts to read the value before the transaction is executed, the cache value is pushed to storage and everything is fine. However if the value is read before execution is completed, the value in the cache won't have been cleared.

Transaction count API returns error unless optional parameter AccountName is also provided

When using the API for both Strax (Core v1.0.0) and Cirrus (Core v1.4.2), calling the /api/Wallet/transactionCount API returned a 400 error containing debug information if AccountName was not also passed. Since this is listed as an optional parameter, I would not expect the API error (or alternatively, this parameter should be made required).

i.e. http://localhost:37223/api/Wallet/transactionCount?WalletName=MyWallet failed but http://localhost:37223/api/Wallet/transactionCount?WalletName=MyWallet&AccountName=account%200 succeeded.

Error details:
{
"errors": [
{
"status": 400,
"message": "Object reference not set to an instance of an object.",
"description": "System.NullReferenceException: Object reference not set to an instance of an object.\r\n at Stratis.Features.SQLiteWalletRepository.SQLiteWalletRepository.GetTransactionCount(String walletName, String accountName) in D:\a\1\s\StratisFullNode\src\Stratis.Features.SQLiteWalletRepository\SQLiteWalletRepository.cs:line 1378\r\n at Stratis.Bitcoin.Features.Wallet.WalletManager.GetTransactionCount(String walletName, String accountName) in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin.Features.Wallet\WalletManager.cs:line 381\r\n at Stratis.Bitcoin.Features.Wallet.Controllers.WalletController.b__14_0(WalletTransactionCountRequest req, CancellationToken token) in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin.Features.Wallet\Controllers\WalletController.cs:line 283\r\n at Stratis.Bitcoin.Builder.Feature.FeatureControllerBase.<>c__DisplayClass3_11.<ExecuteAsAsync>b__1() in D:\\a\\1\\s\\StratisFullNode\\src\\Stratis.Bitcoin\\Builder\\Feature\\FeatureControllerBase.cs:line 58\r\n at System.Threading.Tasks.Task1.InnerInvoke()\r\n at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at Stratis.Bitcoin.Builder.Feature.FeatureControllerBase.Execute[TRequest](TRequest request, CancellationToken token, Func`3 action, Boolean checkModelState) in D:\a\1\s\StratisFullNode\src\Stratis.Bitcoin\Builder\Feature\FeatureControllerBase.cs:line 39"
}
]
}

Can't build transaction

Hello. Trying to build transaction and got an error:

fail: Stratis.Bitcoin.Features.Wallet.Controllers.WalletController[0]
      Exception occurred: System.ArgumentNullException: Value cannot be null. (Parameter 'key')
         at Microsoft.Extensions.Caching.Memory.MemoryCache.ValidateCacheKey(Object key)
         at Microsoft.Extensions.Caching.Memory.MemoryCache.TryGetValue(Object key, Object& result)
         at Microsoft.Extensions.Caching.Memory.CacheExtensions.TryGetValue[TItem](IMemoryCache cache, Object key, TItem& value)
         at Stratis.Bitcoin.Features.Wallet.WalletManager.GetExtKey(WalletAccountReference accountReference, String password) in /root/StratisFullNode/src/Stratis.Bitcoin.Features$
Wallet/WalletManager.cs:line 1306
         at Stratis.Bitcoin.Features.Wallet.WalletTransactionHandler.AddSecrets(TransactionBuildContext context, IEnumerable`1 coinsSpent) in /root/StratisFullNode/src/Stratis.Bit$
oin.Features.Wallet/WalletTransactionHandler.cs:line 257
         at Stratis.Bitcoin.Features.Wallet.WalletTransactionHandler.BuildTransaction(TransactionBuildContext context) in /root/StratisFullNode/src/Stratis.Bitcoin.Features.Wallet$
WalletTransactionHandler.cs:line 79
         at Stratis.Bitcoin.Features.Wallet.Services.WalletService.<>c__DisplayClass26_0.<BuildTransaction>b__0() in /root/StratisFullNode/src/Stratis.Bitcoin.Features.Wallet/Serv$
ces/WalletService.cs:line 728
         at System.Threading.Tasks.Task`1.InnerInvoke()
         at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
      --- End of stack trace from previous location where exception was thrown ---
         at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
      --- End of stack trace from previous location where exception was thrown ---
         at Stratis.Bitcoin.Features.Wallet.Services.WalletService.BuildTransaction(BuildTransactionRequest request, CancellationToken cancellationToken) in /root/StratisFullNode/$
rc/Stratis.Bitcoin.Features.Wallet/Services/WalletService.cs:line 647
         at Stratis.Bitcoin.Features.Wallet.Controllers.WalletController.<BuildTransaction>b__20_0(BuildTransactionRequest req, CancellationToken token) in /root/StratisFullNode/s$
c/Stratis.Bitcoin.Features.Wallet/Controllers/WalletController.cs:line 413
         at Stratis.Bitcoin.Builder.Feature.FeatureControllerBase.Execute[TRequest](TRequest request, CancellationToken token, Func`3 action, Boolean checkModelState) in /root/Str$
tisFullNode/src/Stratis.Bitcoin/Builder/Feature/FeatureControllerBase.cs:line 39

Request body:
{
"password": "MY_PASSWORD",
"walletName": "WALLET_NAME",
"feeType": "Low",
"recipients": [{
"destinationAddress": "RECIPIENT_ADDRESS",
"amount": 1
}]
}

dotnet-version 3.1.404
account restored via /api/Wallet/recover-via-extpubkey

Strax Wallet

Hi team,
I am experiencing two issues:

  1. I've submitted my token swap csv a while ago and haven't received any confirmation
  2. My Strax Wallet 1.1.0 (Using Mac 11.2.2) is not initialising. The error message keeps saying: "connected to API. Waiting for node to initialise"

Thanks

DevMode - Get Raw Transaction is null

When running with -devmode=miner the /getrawtransaction endpoint returns null for valid transaction hashes.

Testnet works as expected, retrieving and returning the raw transaction details.

Calls to GET api/Federation/members return 400 Bad Request

Steps to reproduce:

  1. Run Stratis.CirrusMinerD
  2. Make a request to GET /api/Federation/members

This results in a 400 Bad Request which contains an error describing a NullReferenceException

{
  "errors": [
    {
      "status": 400,
      "message": "Object reference not set to an instance of an object.",
      "description": "System.NullReferenceException: Object reference not set to an instance of an object.\n   at Stratis.Bitcoin.Features.PoA.Voting.FederationController.GetMembers() in /Users/drmathias/projects/Stratis/StratisFullNode/src/Stratis.Bitcoin.Features.PoA/Voting/FederationController.cs:line 170"
    }
  ]
}

How about porting the repo to .net 7.0?

Hello:
I can see the repo is targeting .net core 3.1. But from the Visual Studio 2022 version 17.6.0 preview, it seems .net core 3.1 is out of support, may be it is still supported for some time, but later it will be out of support.
Microsoft already realease .net 5.0 which was already out of support, but .net 6.0 is under long term support, now we have .net 7.0, by the end of this year, there will be .net 8.0.
I think at least port to .net 6.0 or .net 7.0 is necessary to keep the repo updated.
Thanks,

Inconsistent naming of signalrport/signalport affecting StraxUI use case

The discussion on discord re RPi staking reminded me of an issue with a specific use case.

I run a headless RPi for strax staking and connect to it with StraxUI through the daemonip flag. Daemon runs on the RPi and then I connect to it from a local device when I want to make a transaction, etc. This issue would also affect Cirrus/InterFlux if used in the same manner.

When StraxUI was changed to use signalR, certain elements on the UI didn't show (i.e. balance, transactions) when used with daemonip. I was able to track this down to a difference in naming the signalRport between StraxUI and the StratisFullNode, which resulted in the SignalRPort interface in StraxUI being null on inspection.

StratisFullNode
SignalRController.cs
L#35
this.signalRSettings.SignalPort

SignalRSettings.cs
L#45, L#50
this.SignalPort = port;
Does not affect the above, just another area where naming is inconsistent.

StraxUI
signalrs-service.ts
L#15
signalRPort: string; This is null when getConnectionInfo is called (if uncommented), expecting signalrport, but signalport is received from signalrcontroller.

A small change in the StratisFullNode SignalRController fixes the issue and then this line in StraxUI could be uncommented to allow that functionality.

May I submit a PR to update?

Transaction metadata endpoint

As an API user, I would like to be able to retrieve metadata for a transaction in the mempool. This would allow a dApp to verify that a transaction id supplied by a 3rd party (such as a wallet), relates to a specific transaction that it built and expects to be present in the mempool.

Stratis.BitcoinD unable to restart

A Windows upgrade caused a termination in Stratis.BitcoinD which will not allow the program to restart.

Errors:

    Consensus at height 310983-000000000000000029be5dfc455f9c82735fdf78ba4e31e2c591f424b83cf679-HeaderValidated is ahead of the block store at height 271535-00000000000000007cd966207ee36f86cdd8a05d6578f92fe35b208dd3d97d3c-HeaderValidated, rewinding consensus.

[error] Stratis.Bitcoin.Builder.FullNodeFeatureExecutor
An error occurred starting full node feature 'BaseFeature' : 'System.InvalidOperationException: No rewind data found for block 310983-000000000000000029be5dfc455f9c82735fdf78ba4e31e2c591f424b83cf679
at Stratis.Bitcoin.Features.Consensus.CoinViews.LevelDbCoindb.Rewind() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\CoinViews\Coindb\LeveldbCoindb.cs:line 202
at Stratis.Bitcoin.Features.Consensus.CoinViews.CachedCoinView.Rewind() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\CoinViews\CachedCoinView.cs:line 622
at Stratis.Bitcoin.Features.Consensus.Rules.PowConsensusRuleEngine.RewindAsync() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\Rules\PowConsensusRuleEngine.cs:line 57
at Stratis.Bitcoin.Consensus.ConsensusManager.InitializeAsync(ChainedHeader chainTip) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Consensus\ConsensusManager.cs:line 255
at Stratis.Bitcoin.Base.BaseFeature.InitializeAsync() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Base\BaseFeature.cs:line 237
at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.b__4_1(IFullNodeFeature feature) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 64
at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action1 callback, Boolean disposing) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 138' [error] Stratis.Bitcoin.Builder.FullNodeFeatureExecutor An error occurred starting the application: System.AggregateException: One or more errors occurred. (No rewind data found for block 310983-000000000000000029be5dfc455f9c82735fdf78ba4e31e2c591f424b83cf679) ---> System.InvalidOperationException: No rewind data found for block 310983-000000000000000029be5dfc455f9c82735fdf78ba4e31e2c591f424b83cf679 at Stratis.Bitcoin.Features.Consensus.CoinViews.LevelDbCoindb.Rewind() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\CoinViews\Coindb\LeveldbCoindb.cs:line 202 at Stratis.Bitcoin.Features.Consensus.CoinViews.CachedCoinView.Rewind() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\CoinViews\CachedCoinView.cs:line 622 at Stratis.Bitcoin.Features.Consensus.Rules.PowConsensusRuleEngine.RewindAsync() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\Rules\PowConsensusRuleEngine.cs:line 57 at Stratis.Bitcoin.Consensus.ConsensusManager.InitializeAsync(ChainedHeader chainTip) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Consensus\ConsensusManager.cs:line 255 at Stratis.Bitcoin.Base.BaseFeature.InitializeAsync() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Base\BaseFeature.cs:line 237 at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.<Initialize>b__4_1(IFullNodeFeature feature) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 64 at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action1 callback, Boolean disposing) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 138
--- End of inner exception stack trace ---
at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action1 callback, Boolean disposing) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 159 at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Initialize() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 60 There was a problem initializing the node. Details: 'System.AggregateException: One or more errors occurred. (No rewind data found for block 310983-000000000000000029be5dfc455f9c82735fdf78ba4e31e2c591f424b83cf679) ---> System.InvalidOperationException: No rewind data found for block 310983-000000000000000029be5dfc455f9c82735fdf78ba4e31e2c591f424b83cf679 at Stratis.Bitcoin.Features.Consensus.CoinViews.LevelDbCoindb.Rewind() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\CoinViews\Coindb\LeveldbCoindb.cs:line 202 at Stratis.Bitcoin.Features.Consensus.CoinViews.CachedCoinView.Rewind() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\CoinViews\CachedCoinView.cs:line 622 at Stratis.Bitcoin.Features.Consensus.Rules.PowConsensusRuleEngine.RewindAsync() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin.Features.Consensus\Rules\PowConsensusRuleEngine.cs:line 57 at Stratis.Bitcoin.Consensus.ConsensusManager.InitializeAsync(ChainedHeader chainTip) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Consensus\ConsensusManager.cs:line 255 at Stratis.Bitcoin.Base.BaseFeature.InitializeAsync() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Base\BaseFeature.cs:line 237 at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.<Initialize>b__4_1(IFullNodeFeature feature) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 64 at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action1 callback, Boolean disposing) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 138
--- End of inner exception stack trace ---
at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action`1 callback, Boolean disposing) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 159
at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Initialize() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Builder\FullNodeFeatureExecutor.cs:line 60
at Stratis.Bitcoin.FullNode.Start() in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\FullNode.cs:line 227
at Stratis.Bitcoin.Utilities.FullNodeExtensions.RunAsync(IFullNode node, CancellationToken cancellationToken) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Utilities\FullNodeExtensions.cs:line 90
at Stratis.Bitcoin.Utilities.FullNodeExtensions.RunAsync(IFullNode node) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.Bitcoin\Utilities\FullNodeExtensions.cs:line 54
at Stratis.BitcoinD.Program.Main(String[] args) in C:\Users\randalstout\source\repos\StratisFullNode\src\Stratis.BitcoinD\Program.cs:line 40'
Application is shutting down...
The CancellationTokenSource has been disposed.

Can't restart Stratis.BitcoinD...

[Cirrus] Transaction Receipt Return Value

Support for returning an array in the returnValue, a delimited string, or escaped json string when retrieving a transaction receipt.

Current responses show like: "returnValue": "Stratis.SmartContracts.UInt256[]"

Running latest release/1.0.9.0.

Error in console when running straxui - loading failed in UI

When I run straxui on MacOS I get the loading failed problem which several people seem to have. So I tried to run it from the terminal, and I get the following more output:

      Full node initialized on StraxMain.

Stratis: 
Application starting, press Ctrl+C to cancel.


Stratis: info: Stratis.Bitcoin.FullNode[0]
      Starting node.

Stratis: info: Stratis.Bitcoin.Features.Api.ApiFeature[0]
      API starting on URL 'http://localhost:17103/'.

Stratis: info: Stratis.Bitcoin.Base.BaseFeature[0]
      Loading finalized block height.

Stratis: info: Stratis.Bitcoin.Base.BaseFeature[0]
      Loading chain.

Stratis: info: Stratis.Bitcoin.Base.BaseFeature[0]
      Chain loaded at height 186300.

Stratis: info: Stratis.Bitcoin.AsyncWork.AsyncProvider[0]
      FlushChain starting in 60 seconds.

Stratis: info: Stratis.Bitcoin.Base.BaseFeature[0]
      Loading peers from : /Users/myusername/.stratisnode/strax/StraxMain.

Stratis: info: Stratis.Bitcoin.AsyncWork.AsyncProvider[0]
      Periodic peer flush starting in 300 seconds.

Stratis: fail: Stratis.Bitcoin.Builder.FullNodeFeatureExecutor[0]
      An error occurred: 'Stratis.Bitcoin.Consensus.ConsensusException: Violation of finality on height 169295 for RewindDataIndex.
         at Stratis.Bitcoin.Features.Consensus.ProvenBlockHeaders.RewindDataIndexCache.Initialize(Int32 tipHeight, ICoinView coinView) in /Users/runner/work/1/s/StratisFullNode/src/Stratis.Bitcoin.Features.Consensus/ProvenBlockHeaders/RewindDataIndexCache.cs:line 66
         at Stratis.Bitcoin.Features.Consensus.Rules.PosConsensusRuleEngine.Initialize(ChainedHeader chainTip) in /Users/runner/work/1/s/StratisFullNode/src/Stratis.Bitcoin.Features.Consensus/Rules/PosConsensusRuleEngine.cs:line 62
         at Stratis.Bitcoin.Base.BaseFeature.InitializeAsync() in /Users/runner/work/1/s/StratisFullNode/src/Stratis.Bitcoin/Base/BaseFeature.cs:line 229
         at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.<>c.<Initialize>b__3_1(IFullNodeFeature service) in /Users/runner/work/1/s/StratisFullNode/src/Stratis.Bitcoin/Builder/FullNodeFeatureExecutor.cs:line 56
         at Stratis.Bitcoin.Builder.FullNodeFeatureExecutor.Execute(Action`1 callback, Boolean disposing) in /Users/runner/work/1/s/StratisFullNode/src/Stratis.Bitcoin/Builder/FullNodeFeatureExecutor.cs:line 130'

Stratis: fail: Stratis.Bitcoin.Builder.FullNodeFeatureExecutor[0]
      An error occurred starting the application.

I'm not sure how to get it working from here and would appreciate any assistance and advice.

For reference, this is with the latest release (1.1.0) but also happens with the 1.2.0 community support release which I tried. I'm using MacOS 10.14.6.

imho bad things about strax / stratis

written in C#

  • you see this maybe as advantage, but as pure linux server user, I just hate it.
  • you can run it with docker, but it is not really stable, has memory problems (better since the switch to strax, but when blockchain grows this will be again a problem) and staking is somehow ending for no reasons, happening every few weeks.
  • hundreds of warnings during compile - honestly is this the way of building trustworthy software ?
  • I bet nerds do not trust or like this language, so I would consider to switch to golang, rust or whatever is working natively on linux.

not having a fixed main address

  • this is by far the most annoying thing if you reinstall your wallet, it just uses new addresses (without possibility to use the old one) and your coins are soon spread around. The only and best way I found was moving all coins to a new address with could bring you in a lot of problems explaining this to tax office.
  • backup of the wallet file is by far the better method and works at least.

Stratis.CirrusMinerD: stops processing Tx after about an hour...

Any idea why Tx stop being processed after about an hour (see the log below). I'm running the following against the most recent release (cloned today).

cd src\Stratis.CirrusMinerD
dotnet run -devmode=miner 

After about an hour doing very little, Tx stack up in the mempool and nothing is processed. This is the only item of note I see in the console log;

       >> Miner
        Mining information for the last 1 blocks.
        Note that '<' and '>' surrounds a slot where a miner didn't produce a block.
        <█████> ...
        Miner hits              : 0 of 1(0.00%)
        Miner idle time         : 00:00:16

        >> Mempool
        Tx Count                : 1 (Dynamic Size: 0 kb) (Orphan Size: 0)

        >> Wallets
        cirrusdev/account 0     : Confirmed balance: 999999.89900000         Unconfirmed balance: 0.00000000

[info]  Stratis.Bitcoin.Features.PoA.PoAMiner
        <<==============================================================>>
        Can't mine due to the key in 'federationKey.dat' not being a federation member.
        <<==============================================================>>

Is this is a bug? Is there a work around?

Outdated and missing NuGet packages

We are unable to create a Cirrus node that can work with smart contracts, by building it using the packages available on NuGet.org. The node will run, however any smart contract call will result in an exception occurring from a failed call to Stratis.SmartContracts.CLR, for example:

System.MissingMethodException: Method not found: 'Void Stratis.SmartContracts.CLR.ContractTxData..ctor(Int32, UInt64, Stratis.SmartContracts.RuntimeObserver.Gas, NBitcoin.uint160, System.String, System.Object[], System.String[])'.

The following packages are used:

<ItemGroup>
  <PackageReference Include="Stratis.Features.Api" Version="1.0.9.4" />
  <PackageReference Include="Stratis.Features.Collateral" Version="4.0.1" />
  <PackageReference Include="Stratis.Features.Notifications" Version="1.0.9.4" />
  <PackageReference Include="Stratis.Features.SmartContracts" Version="1.0.9.4" />
  <PackageReference Include="Stratis.Features.SQLiteWalletRepository" Version="1.0.9.4" />
  <PackageReference Include="Stratis.Features.Wallet" Version="1.0.9.4" />
  <PackageReference Include="Stratis.Sidechains.Networks" Version="1.0.9.4" />
  <PackageReference Include="Stratis.SmartContracts.CLR" Version="2.0.1" />
  <PackageReference Include="Stratis.SmartContracts.Core" Version="2.0.3" />
  <PackageReference Include="Stratis.SmartContracts.Networks" Version="2.0.1" />
</ItemGroup>

Building a new version of Stratis.SmartContracts.CLR package from the 1.0.9.4 release branch seems to resolve the issue, so it looks as though the current version is simply outdated.

There are a couple of features which are unavailable on NuGet.org as well, including:

  • Stratis.Features.SignalR
  • Stratis.Features.Diagnostic

Being able to build and run a node by importing packages from NuGet is far simpler for us than maintaining a fork of the project. It will allow us to configure logging targets so we can get structured logging end-to-end, as well as build some neat extensions.

Is there a plan to upgrade the master branch to .net 6 or 7?

Cause I found it hard to build this project on my Apple M1 MacBook :)
I noticed a feature/dotnet6 branch with some commits behind the master branch, actually, I'm using this branch in my local env. Just wondering if is there a plan to upgrade the master to .net 6 or 7.
Thx for your answers.

[Masternode] Strax Main crash

Please move accordingly if this is not the appropriate place. I received an email from uptime robot that StraxMain is down. I login and confirm that StraxMain has stopped, but CirrusMain is still running. I have stopped the masternode and relaunch the Masternode script. Both are launched.

Here are the logs:
[2021-06-08 17:40:37.3724 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync DiscoverPeersAsync stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync Periodic peer flush stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync PeerConnectorDiscovery.ConnectAsync stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync PeerConnectorAddNode.ConnectAsync stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync PeriodicBenchmarkLog stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync PeriodicLog stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync MemoryPool.RelayWorker stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync DiscoverFromDnsSeedsAsync stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync OrchestrateWalletSync stopping.
[2021-06-08 17:40:37.3837 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync Notify stopping.
[2021-06-08 17:40:37.3892 42] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.StartAsync FlushChain stopping.
[2021-06-08 17:40:37.3892 18] INFO: Stratis.Bitcoin.FullNode.Dispose Closing node pending.
[2021-06-08 17:40:37.3892 18] INFO: Stratis.Bitcoin.FullNode.Dispose Disposing connection manager.
[2021-06-08 17:40:37.3892 18] INFO: Stratis.Bitcoin.Connection.ConnectionManager.Dispose Stopping peer discovery.
[2021-06-08 17:40:37.4120 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for DiscoverPeersAsync to finish or be cancelled.
[2021-06-08 17:40:37.4120 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for DiscoverFromDnsSeedsAsync to finish or be cancelled.
[2021-06-08 17:40:37.4120 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for PeerConnectorAddNode.ConnectAsync to finish or be cancelled.
[2021-06-08 17:40:37.4120 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for PeerConnectorDiscovery.ConnectAsync to finish or be cancelled.
[2021-06-08 17:40:37.4120 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:77.68.127.214]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:51.83.186.68]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:192.111.37.113]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:206.72.203.150]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:116.202.241.73]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:135.125.205.54]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:173.249.57.211]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:178.165.53.146]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:138.201.122.116]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:51.178.25.186]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:139.180.187.117]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:168.119.212.249]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:82.146.153.136]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:173.225.99.72]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:162.250.122.183]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4206 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:51.38.71.152]:17105' (outbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.P2P.Peer.NetworkPeerServer.Dispose Waiting for 71 connected clients to dispose...
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.P2P.Peer.NetworkPeerServer.Dispose [0.0.0.0:17105] Waiting for 71 connected clients to dispose...
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:76.122.80.198]:62839' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:86.107.197.102]:62070' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:87.65.63.203]:39530' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:136.144.33.133]:63886' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:51.75.145.30]:61685' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:94.206.203.138]:53639' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:188.134.77.229]:29401' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4416 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:108.185.33.28]:61459' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:51.79.157.243]:57430' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:96.42.78.210]:57766' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:173.214.171.187]:52167' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:54.215.26.50]:49724' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:69.204.228.153]:56982' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:174.138.190.196]:57076' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:185.59.220.230]:65519' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:89.26.241.106]:55893' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:156.146.41.5]:49876' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:89.212.103.205]:51965' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:52.73.66.214]:54497' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:163.182.172.141]:64512' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:66.23.226.136]:59193' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:103.224.117.182]:60865' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:82.169.40.85]:56684' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:93.42.248.12]:60391' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4518 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:47.198.26.9]:55915' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:54.210.56.238]:55882' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:175.223.49.110]:40144' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:52.231.152.78]:54460' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:3.121.247.139]:52893' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:13.95.143.90]:1216' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:118.189.189.165]:52773' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:73.219.192.19]:59455' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:49.195.44.156]:43309' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:81.82.64.229]:52439' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:178.84.3.164]:49982' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:85.216.154.51]:60985' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:206.220.197.50]:53335' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:82.45.14.106]:61687' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:170.130.125.141]:50411' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:139.99.88.209]:58711' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:77.122.83.42]:61279' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4673 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:13.209.60.161]:24951' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:185.156.174.115]:50471' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:86.229.27.196]:64762' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:212.187.97.96]:60477' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:194.165.230.33]:11316' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:163.158.83.205]:58600' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:185.170.213.182]:56344' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:66.220.117.226]:64944' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:175.116.5.92]:57949' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:185.229.152.239]:31803' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:67.164.36.143]:55424' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:199.19.61.62]:58750' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:161.97.119.138]:49862' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:95.91.255.220]:13659' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:98.10.178.108]:50728' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:136.52.99.185]:57243' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:45.153.186.146]:62166' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4828 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:216.15.21.83]:44870' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:81.165.158.202]:58573' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:173.77.238.114]:51906' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:78.141.208.209]:55762' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:54.38.157.47]:50419' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:81.232.90.234]:63101' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:89.188.168.177]:3094' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:51.195.47.81]:49434' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:209.159.153.56]:53697' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:178.251.70.153]:53064' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:91.150.178.180]:6924' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:192.64.85.190]:58234' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Connection.ConnectionManagerBehavior.OnStateChangedAsync Peer '[::ffff:217.225.106.186]:63656' (inbound) offline, reason: 'Node shutdown.'
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.FullNode.Dispose Disposing RPC host.
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.FullNode.Dispose Disposing periodic logging loops.
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for PeriodicLog to finish or be cancelled.
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for PeriodicBenchmarkLog to finish or be cancelled.
[2021-06-08 17:40:37.4985 18] INFO: Stratis.Bitcoin.FullNode.Dispose Disposing the full node feature executor.
[2021-06-08 17:40:37.5230 18] INFO: Stratis.Bitcoin.Features.Miner.MiningFeature.StopMining Mining stopped.
[2021-06-08 17:40:37.5230 18] INFO: Stratis.Bitcoin.Features.Miner.MiningFeature.StopStaking Staking stopped.
[2021-06-08 17:40:37.5230 18] INFO: Stratis.Bitcoin.Features.Wallet.WalletSyncManager.Stop WalletSyncManager stopped.
[2021-06-08 17:40:37.5406 18] INFO: Stratis.Bitcoin.Features.Wallet.WalletManager.Stop WalletManager stopped.
[2021-06-08 17:40:37.5487 18] INFO: Stratis.Bitcoin.Features.MemoryPool.MempoolFeature.Dispose Saving Memory Pool.
[2021-06-08 17:40:37.5487 18] INFO: Stratis.Bitcoin.Features.MemoryPool.MempoolFeature.Dispose Memory Pool Saved 0 transactions
[2021-06-08 17:40:37.5487 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for MemoryPool.RelayWorker to finish or be cancelled.
[2021-06-08 17:40:37.5669 18] INFO: Stratis.Bitcoin.Features.Api.ApiFeature.Dispose API stopping on URL 'http://localhost:17103/'.
[2021-06-08 17:40:37.6036 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for Notify to finish or be cancelled.
[2021-06-08 17:40:37.6036 18] INFO: Stratis.Bitcoin.Features.BlockStore.BlockStoreFeature.Dispose Stopping BlockStoreSignaled.
[2021-06-08 17:40:37.6084 18] INFO: Stratis.Bitcoin.Features.BlockStore.BlockStoreFeature.Dispose Stopping AddressIndexer.
[2021-06-08 17:40:37.6295 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Flushing peers.
[2021-06-08 17:40:37.6295 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for Periodic peer flush to finish or be cancelled.
[2021-06-08 17:40:37.6295 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing peer address manager.
[2021-06-08 17:40:37.8216 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Flushing headers chain.
[2021-06-08 17:40:37.8216 18] INFO: Stratis.Bitcoin.Utilities.AsyncLoop.Dispose Waiting for FlushChain to finish or be cancelled.
[2021-06-08 17:40:37.8216 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing time sync behavior.
[2021-06-08 17:40:37.8216 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing consensus manager.
[2021-06-08 17:40:37.8216 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing block puller.
[2021-06-08 17:40:37.8216 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing partial validator.
[2021-06-08 17:40:37.8216 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing consensus rules.
[2021-06-08 17:40:37.8295 18] INFO: Stratis.Bitcoin.Features.Consensus.Rules.PowConsensusRuleEngine.Dispose Flushing Cache CoinView.
[2021-06-08 17:40:37.8914 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Saving chain repository.
[2021-06-08 17:40:38.0998 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Saving proven header store.
[2021-06-08 17:40:38.1985 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing finalized block info repository.
[2021-06-08 17:40:38.1985 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing address indexer.
[2021-06-08 17:40:38.1985 18] INFO: Stratis.Bitcoin.Base.BaseFeature.Dispose Disposing block store.
[2021-06-08 17:40:38.3251 18] INFO: Stratis.Bitcoin.FullNode.Dispose Disposing settings.
[2021-06-08 17:40:38.3999 18] INFO: Stratis.Bitcoin.FullNode.Dispose Notify application has stopped.

Wrong balance on my Raspberry PI

Hello. I using the official tutorial from academy.stratisplatform.com to init my Stratis node on My Raspberry PI 3b.

What i already did:

  1. Fully synced with blockchain
  2. Added a wallet from my seed phrase.

But now i wanna to start staking. My real wallet balance is 1227 STRAX coins. But node show me that balance is zero. What i'm doing wrong?

GetHistory API returns incorrect values for transactions to two addresses in the same wallet - updated for 1.1.0.0

Using /api/Wallet/history (Cirrus Full Node 1.0.6.4) returned incorrect values for some transactions. These transactions turned out to be ones where the transaction was one like https://cirrusexplorer.stratisplatform.com/transactions/00b4cfead03ab2bda66738c3fe0fbfbb422def725f448c518647075704e826ca where two addresses from the same wallet received funds in the same transaction (in this case they also had the same amount - this might be caused by excess deduplication).
Previously (in 1.0.4.2), the total amount for both lines was returned, now only the amount for one line was returned. The difference was first seen in 1.0.5

*** After further testing, this issue appears between 1.0.4.3 and 1.0.4.4

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.