Revive ripple-client-desktop

Update: as of Jan 15, 2019, trading is working.

The first goal is to make it fully functional with RippleAPI.

Current status is most read only operations are working except order book.

Please follow this twitter thread for the most recent updates:
This weekend I tried to revive ripple-client-desktop. l I have reached a point at which I can run gulp without any warning on the command line. However, the app stuck at loading. Then I figured out that the client uses an ancient ripple-lib API. — r0bertz (@r0bertz) December 17, 2018 Ripple validator returns normal since two day ago

There's been some problems with the validator ever since it crashed about a week ago. It doesn't crash any more since I added much more disk space. But it easily falls behind and needs to play catch up several hours after each restart. I learned this from state_accounting field in the output of "rippled server_info". I created a metric and a chart from it. This is what the chart looks for the last week.
The "Full" mode state means it is fully synced and participating in consensus process. You can see it is now asymptotically approaching 100 now. The value means the percentage of uptime the validator stays in each mode.

I figured out why the disk was out of space. It was because the validator fell behind. When that happens, online delete is disabled. See this code:

I saw some "Not deleting" messages in the log which led me to the above code.

I still can't determine the exact reason why it fell behind. I suspect it was caused by some "insane" testnet peer. So I blocked some peers with iptables. But now it's almost 100% full and it still has an insane testnet peer.

However I do know why it didn't recover after disk is enlarged. I believe it's because I changed the db to NuDB from RocksDB and still have online_delete set in the config. I changed it because I learned NuDB works better on SSD. But it doesn't support update or delete. It is meant to be used in full history validator. It appears that when it tries to do online_delete, it starts to fall behind. Now I have switched back to RocksDB and everything is fine.


Popular posts from this blog

How exactly is XRP going to work as a bridging digital asset?