Closed nikakhov closed 9 years ago
Due to parsing input as floating point. Should be addressed to help prevent dust.
I don't think this is due to floating point parsing; I think this is an inherent limitation of the fixed-point representation we use in the backend. This is a known limitation, and unfortunately we don't have any plans to fix this at present.
Actually this is not due to price computations like #792 seems to be, as this was a straight asset transfer with the input parsed as a double from the command line and then converted to an asset. There should be no floats anywhere near our asset code and in fact we should probably really be representing assets and prices as rationals using an established library like GMP: https://gmplib.org/
In Python:
>>> 5120.9 * 100000
512089999.99999994
This is now fixed. It was due to processing the input as a double and doing math on it. Doubles are no longer used anywhere in user input processing of market orders.
https://github.com/BitShares/web_wallet/issues/221