-
Notifications
You must be signed in to change notification settings - Fork 502
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
Serialized transaction does not match original txJSON due to wrong serialization / deserialization of paths #1347
Comments
This looks like a serious regression, that makes often impossible to use the result of the |
If you use ripple-lib 1.8.2, does everything work fine? |
@alexdupre @intelliot this was issue in I already opened PR and PR was also merged. Should be fixed in next release. |
Hey guys, was running into this issue with 1.9 and just found this thread. I'm assuming it isn't fixed in 1.9.1 because I just upgraded and it's still occurring. Do you have a time frame as to when this will be released? |
Yes. I'm surprised you released another version that includes this severe issue. |
Apparently there is already a pull request #1376 |
@intelliot Hi Elliot, I was hoping you could give us some insight as to when this will be released. I see that this issue has been open since January and the PR to fix this has been out there for 14 days. I agree with Alex that this is a critical piece of functionality, it is what the XRPL was designed to do, payments and right now 1.9 and 1.9.1 can't make them. Thanks, Nick |
Thank you all for reporting this, especially @tadejgolobic for the code sample. This should be fixed in version 1.9.2 |
@intelliot Hey Elliot, thank you for getting this fix in and with an immediate release. I very much appreciate it. Nick |
Hi, intelliot.
this is NFTokenOffer accept tx.
Please let me know the reason. Thanks. |
@Satosh-J I think the issue is that you have a field "SellOffer", when it should be "NFTokenSellOffer" - https://xrpl.org/nftokenacceptoffer.html#nftokenacceptoffer (This was a recent change to the NFT naming conventions to standardize it) |
@Satosh-J If the problem persists, please create a new issue here. (This existing issue is an old one which was resolved/closed) n/m, just noticed #2002 😆 |
We have an issue with signing transaction that has paths field specified. It looks like that paths object needs to have all three fields specified (account, issuer and currency). In case one of them is not defined / not provided, then ripple-lib will throw following error:
Serialized transaction does not match original txJSON. See error.data
.Lets look at this example:
With this example we get error as described above. We also found out, that this happens because of
ripple-binary-codec
.If we check following code:
this is the output:
So issue is that everytime, paths will be defined and one of the PathFind fields will not be defined, we cannot sign transaction. I would also like to point out, that in paths, we cannot pass undefined values from our side, to ripple-lib, because txJSON must be passed as string, and we cannot stringify undefined values.
I would also like to ask following question:
Is it absolutely necessary to do encode, and then immediately decode here: https://github.com/ripple/ripple-lib/blob/develop/src/transaction/sign.ts#L59 (decode is performed inside checkTxSerialization function)
The text was updated successfully, but these errors were encountered: