Comments (7)
A temporal workaround would be to prune everything before the sidetree genesis, this way allows to keep a Bitcoin node with small space requirements for a good amount of time.
from ion.
@AlexITC I agree that we should automatically prune all txns before Sidetree genesis - @thehenrytsai, perhaps we can take a look at this to avoid even iterating those txns to inspect for sidetree hashes?
I wonder if @jlopp has any experience using the prune utilities in Core to prune txns selectively?
from ion.
I'm only familiar with the high-level setting of "keep X megabytes of trailing blocks"
Regarding not pruning specific transactions, I suspect that it won't prune any transactions that are added to the wallet, though I'm not sure if you could add sidetree transactions as watch-only in order to achieve that goal.
from ion.
It looks like you MAY be able to achieve this with the 'importPrunedFunds' RPC https://bitcoin.org/en/developer-reference#importprunedfunds
from ion.
If you store the raw transaction for each side tree transaction, you shouldn't care if bitcoind prunes those transactions, and you can setup bitcoind to just prune blocks where a rollback is improbable (keeping last 100 blocks on bitcoin is more than enough, which should take around 500 MB on disk).
from ion.
@csuwildcat Sidetree core only inspect bitcoin transactions for Sidetree hashes from the Sidetree genesis block already. But pruning Bitcoin transaction before Sidetree genesis block is a good idea.
from ion.
@csuwildcat to propose a solution on the issue, and get this ready for a reference implementation PR.
from ion.
Related Issues (20)
- can we use this in production?
- docker-compose fix
- Security Vulnerabilities HOT 2
- Support Descriptor Wallets for Bitcoin Core
- Some question about sidetree protocal HOT 9
- Add support for bitcoinRpcTimeout
- Add support for bitcoinRpcAuth
- Error: Invalid network - Support for alternative networks HOT 1
- Fix random BitcoinProcessor test failure in pipeline
- Should valueTimeLockTransactionFeesAmountInBitcoins default to 0.25? HOT 1
- Handle corrupt blk data in bitcoinRawDataParser
- Remove references to the bitcore-lib from the IBitcoinWallet
- Convert bitcoin transactions to Segragated Witness (SegWit) to reduce the data size
- BitcoinClient should check for if the 'bitcoinWalletOrImportString' parameter is undefined
- Batch GET api
- Faster version with taproot lightning integration ? HOT 1
- How to confirm the local testnet installtion sucessfully and local explorer HOT 1
- Dead link to Sidetree repo in install-guide
- Recommended MongoDB version
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ion.