ApplicationLogs and RpcNep17Tracker should not depend on LevelDB
StateStore doesn't take a dependency on LevelDB, instead it loads an IStore instance from the NeoSystem instance:
public StateStore(StatePlugin system, string path)
{
if (singleton != null) throw new InvalidOperationException(nameof(StateStore));
this.system = system;
this.store = StatePlugin.System.LoadStore(path);
singleton = this;
StatePlugin.System.ActorSystem.EventStream.Subscribe(Self, typeof(Blockchain.RelayResult));
UpdateCurrentSnapshot();
}
Can we update ApplicationLogs and RpcNep17Tracker to work this way?
@superboyiii @devhawk any news about this issue?
This makes it very challenging (not to say impossible) to use rocksdb.
Either we come up with a config in the node level to specify which DB it should use, OR each plugin should have a config to change the DB.
The new token tracker plugin works like state store. So it's just app logs that still has this issue
is this still an issue? gosh.....
So... should we close this one?
Reference: https://github.com/neo-project/neo-modules/pull/761
PR #807 depends on IStore, Hope this fixes issue.