My current multinode blockchain is running with nodeos configuration as :

nodeos \
        --genesis-json $DATADIR"/../../genesis.json" \
        --signature-provider PUBKEY=KEY:PRIVKEY\
        --plugin eosio::producer_plugin \
        --plugin eosio::producer_api_plugin \
        --plugin eosio::chain_plugin \
        --plugin eosio::chain_api_plugin \
        --plugin eosio::http_plugin \
        --plugin eosio::history_api_plugin \
        --plugin eosio::history_plugin \
        --plugin eosio::net_api_plugin \
        --data-dir $DATADIR"/data" \
        --blocks-dir $DATADIR"/blocks" \
        --config-dir $DATADIR"/config" \
        --producer-name accountnum1 \
        --http-server-address 192.168.**.**:8889 \
        --p2p-listen-endpoint 192.168.**.**:8888 \
        --access-control-allow-origin=* \
        --contracts-console \
        --http-validate-host=false \
        --verbose-http-errors \
        --enable-stale-production \
        --p2p-peer-address 192.168.**.**:8888 \
        --p2p-peer-address 192.168.**.**:8888 \
        --p2p-peer-address 192.168.**.**:8888 \
        --p2p-peer-address 192.168.**.**:8888 \
        --max-transaction-time 1000 \
        --filter-on=* \
        >> $DATADIR"/nodeos.log" 2>&1 & \
        echo $! > $DATADIR"/eosd.pid"

But I am facing RAM problems and unclean nodeos shutdown which needs replay and increasing --chain-state-db-size-mb again and again. To avoid this I want to switch to either the MongoDB plugin or State History Plugin. My basic requirement from blockchain is to save/delete data in blockchain tables. Get accounts, tables, tables data, actions, blocks, transactions, connected peers info and basic information using C#. Please guide which one is better to use? And can I use c# library eos-sharp with them?

3 Answers 3


This article may provide some alternative solutions: https://cc32d9.medium.com/history-and-notifications-in-eosio-blockchain-8255194af93


As you are comfortable with C#, combined with SHiP (state_history_plugin) you can also use GraphEosStreamer and modify it for your needs.

It's a work in progress, ping me on telegram if you want to give it a try and need help.


Neither mongodb nor state history plugin (also known as "ship") is a direct replacement for the obsolete history plugin.

ship is used by hyperion and chronicle to save data to other databases. Hyperion has APIs thare are mostly compatible with the history plugin APIs.

Other history solutions include dfuse.

I do not personally know anyone using mongodb solution. The other solutions are more popular (and not developed by block.one)

  • Thank you for the reply. I am stuck here. None of the solutions seems easy to use.
    – Varsh
    Jul 7, 2021 at 2:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.