lnrpc: fix the existing routing fee inaccuracy

When updating the channel routing policy, we encounter an inaccurate
precision error when calculating the routing fee. The issue stems from
the way the IEEE 754 standard works.

The solution here is to add a uint64 parameter (as mentioned in the
issue) and keep the float64 fee_rate parameter but rounding the product
of the base and fee rate.
This commit is contained in:
ErikEk authored and Olaoluwa Osuntokun committed 2022-01-25 15:42:57 -08:00
1 parent 234fdc6c9c
commit ef1eff1058
6 files changed
+837 -770

No files matched your search

+5
View File
@@ -5767,6 +5767,11 @@
"format": "double",
"description": "The effective fee rate in milli-satoshis. The precision of this value\ngoes up to 6 decimal places, so 1e-6."
},
"fee_rate_ppm": {
"type": "integer",
"format": "int64",
"description": "The effective fee rate in micro-satoshis (parts per million)."
},
"time_lock_delta": {
"type": "integer",
"format": "int64",