XRPLF / rippled

Decentralized cryptocurrency blockchain daemon implementing the XRP Ledger protocol in C++
https://xrpl.org
ISC License
4.52k stars 1.47k forks source link

Improve support for full history servers #5139

Open bachase opened 1 month ago

bachase commented 1 month ago

Summary

Recent issues related to the size and maintenance of sqlite databases (#5102 and #5095) highlight infrastructure challenges for users that operate full history servers.

Solution

This issue does not propose a solution, but is meant as a spot for ongoing discussion of requirements and corresponding solutions, continuing the conversation that had started in #5102.

MarkusTeufelberger commented 1 month ago

Some pain points off the top of my head:

Bronek commented 1 month ago

@MarkusTeufelberger we are considering refreshing RocksDB dependency to a more recent version (it will require code changes), would that help with the last point ?

MarkusTeufelberger commented 1 month ago

I'm not sure if it is usable for full history servers, I ran into issues with it years ago, switched to NuDB and never looked back tbh. In general it would help somewhat, if it were indeed a viable option, yes.

MarkusTeufelberger commented 1 month ago

Since it is (too) easy to criticize, here are some potential solutions for the points I brought up:

bachase commented 1 month ago

Coming in cold after a few years away from rippled development ...

cindyyan317 commented 1 month ago

I still see History Sharding from this link. Is it the same thing removed in https://github.com/XRPLF/rippled/pull/5066 🤔 ?

Clio 's full history node uses less than 7TB data storage and maintains more off-chain indexes. But FH Clio needs another full history rippled and months of time to setup 🥲 .

Bronek commented 1 month ago

I still see History Sharding from this link. Is it the same thing removed in #5066 🤔 ?

Yes. It wasn't working very well and added fair amount of complexity, so we decided to remove it.