-
Notifications
You must be signed in to change notification settings - Fork 411
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: Separate daemon + rocksdb from electrs interface #1030
Comments
+1 rust trait are really good for this, would be cool if you could choose your own storage backend (like started on in the linked pr) and choose the interface (electrum rpc, or something else?) |
@antonilol, you could even have no interface, and have your workers open rocksdb directly. RocksDB supports concurrent reads, most on disk KVs do. This is related in the way that it is a nice way to decouple the two entities/apps. One that deals with keeping an updated database, and the other as the electrum interface. |
Concept ACK :) I'll be happy to help with the design and review of this idea. |
(and sorry for the delayed response...) |
This is somewhat related to my idea of having an alternative chain-storing backend. The backend could maybe store some indices on its own and provide a stable interface to retrieve the data locally and remotely. electrs itself doesn't do that much on top of storing data so I'm not convinced it's worth splitting up into individual daemons if one of them would be just translating json RPC to something else. It'd make more sense to have it as a crate that people could develop new stuff on top of. |
Is your feature request related to a problem? Please describe.
I am considering forking the repository, but I only need the backend: The bitcoind daemon and rocksdb schema + configuration.
electrs
is monolithic, it shouldn't be.Describe the solution you'd like
A package focused entirely on the bitcoind daemon, and its storage. Currently, the only storage option is
rocksdb
; however, there could be other ones. The new package could beelectrs-daemon
.Describe alternatives you've considered
Just forking, and removing the components that I don't need.
Additional context
None.
The text was updated successfully, but these errors were encountered: