Skip to content
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

Error when making a manual payout #4878

Closed
leo816 opened this issue Dec 2, 2020 · 9 comments
Closed

Error when making a manual payout #4878

leo816 opened this issue Dec 2, 2020 · 9 comments

Comments

@leo816
Copy link

leo816 commented Dec 2, 2020

Description

Error message when making a manual payout

Version

1.5.0

Steps to reproduce

First time the payout was successful, or so it appeared in the final message. After I saw the payout wasn't made I did it again and got this message

Expected behaviour

Actual behaviour

Screenshots

Screen Shot 2020-12-02 at 22 59 34

Device or machine

Additional info

@ghost
Copy link

ghost commented Dec 2, 2020

Was it a payout from a segwit 2-of-2 multisig? If so you have to be sure that the 3 amounts buyer+seller+txFee add up exactly to the value held in the multisig, else the tx will be silently rejected by bitcoin core. I discovered this here: #4859 (comment)

For the second time you did it where you got the error box, can you please provide the call stack of the error which can be found in your log file? Thanks.

@leo816
Copy link
Author

leo816 commented Dec 3, 2020

ok, this information should be added to the bisq.wiki as a reminder (on this case the amount I got by following the regular protocol was bigger than the one in the multisig.) I used and got again the "transaction published correctly" but the payout wasn't made.
Screen Shot 2020-12-03 at 11 13 15

tx id: 9625074b19f8c0be45d973958e2879f65d2729973dde95e5f529672bb78b1b29

@leo816
Copy link
Author

leo816 commented Dec 3, 2020

 > can you please provide the call stack of the error which can be found in your log file? Thanks.

at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush(CodedOutputStream.java:3062)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable(CodedOutputStream.java:3057)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag(CodedOutputStream.java:2885)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag(CodedOutputStream.java:2721)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeBytes(CodedOutputStream.java:2774)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessageNoTag(CodedOutputStream.java:2855)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessage(CodedOutputStream.java:2824)
at com.google.protobuf.AbstractMessageLite.writeDelimitedTo(AbstractMessageLite.java:95)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush(CodedOutputStream.java:3062)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.write(CodedOutputStream.java:2994)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeLazy(CodedOutputStream.java:3013)
at com.google.protobuf.ByteString$LiteralByteString.writeTo(ByteString.java:1373)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeBytesNoTag(CodedOutputStream.java:2801)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeBytes(CodedOutputStream.java:2775)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessageNoTag(CodedOutputStream.java:2855)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessage(CodedOutputStream.java:2824)
at com.google.protobuf.AbstractMessageLite.writeDelimitedTo(AbstractMessageLite.java:95)
at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:679)
at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:679)
at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:679)
at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:679)
at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:679)
at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:679)
at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:679)
Dec-02 22:59:00.432 [JavaFX Application Thread] ERROR b.c.s.CommonSetup: throwableMessage= com.google.common.io.BaseEncoding$DecodingException: Invalid input length 63
java.lang.IllegalArgumentException: com.google.common.io.BaseEncoding$DecodingException: Invalid input length 63
at com.google.common.io.BaseEncoding.decode(BaseEncoding.java:219)
Caused by: com.google.common.io.BaseEncoding$DecodingException: Invalid input length 63
at com.google.common.io.BaseEncoding$Base16Encoding.decodeTo(BaseEncoding.java:922)
at com.google.common.io.BaseEncoding.decodeChecked(BaseEncoding.java:233)
at com.google.common.io.BaseEncoding.decode(BaseEncoding.java:217)
Dec-02 22:59:24.457 [JavaFX Application Thread] ERROR b.c.s.CommonSetup: throwableMessage= com.google.common.io.BaseEncoding$DecodingException: Invalid input length 63
java.lang.IllegalArgumentException: com.google.common.io.BaseEncoding$DecodingException: Invalid input length 63
at com.google.common.io.BaseEncoding.decode(BaseEncoding.java:219)
Caused by: com.google.common.io.BaseEncoding$DecodingException: Invalid input length 63
at com.google.common.io.BaseEncoding$Base16Encoding.decodeTo(BaseEncoding.java:922)
at com.google.common.io.BaseEncoding.decodeChecked(BaseEncoding.java:233)
at com.google.common.io.BaseEncoding.decode(BaseEncoding.java:217)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush(CodedOutputStream.java:3062)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.write(CodedOutputStream.java:2994)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeLazy(CodedOutputStream.java:3013)
at com.google.protobuf.ByteString$LiteralByteString.writeTo(ByteString.java:1373)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeBytesNoTag(CodedOutputStream.java:2801)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeBytes(CodedOutputStream.java:2775)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessageNoTag(CodedOutputStream.java:2855)
at com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessage(CodedOutputStream.java:2824)
at com.google.protobuf.AbstractMessageLite.writeDelimitedTo(AbstractMessageLite.java:95)

@ghost
Copy link

ghost commented Dec 3, 2020

The Invalid input length 63 happens when you're missing a digit on the txid. I'll add validation checks to handle this better in the related work for #4061.


The more important issue, however, is that a transaction was published but rejected silently with no error and no information in the log. This I think is a potential can of worms. It could be the cause of those many user reports that trades are created but the transaction never confirms and never shows up in the mempool.

I think a good start to tracking this down would be to log the hex of all transactions generated by Bisq at the point where they are broadcasted by BitcoinJ. Then when a user experiences the problem at least we'll be able to check the transaction hex and see by comparing it to the blockchain why it was not accepted into the mempool. At the moment only textual "description" of the transaction is logged which is not sufficient for problem solving. I'll work up a PR for this.

@ghost ghost mentioned this issue Dec 3, 2020
@chimp1984
Copy link
Contributor

@oscarguindzberg Can you have a look?

@oscarguindzberg
Copy link
Contributor

  1. make sure there is no error in the fields you enter (eg putting seller priv key in buyer priv key field, etc).
  2. Make sure to run from master or checkout Fix emergency payout #4859
  3. if that does not help, please, send me all the data you are posting on the form. I am oscarguindzberg2 on keybase.

@stale
Copy link

stale bot commented Jun 16, 2021

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale
Copy link

stale bot commented Apr 16, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the was:dropped label Apr 16, 2022
@stale
Copy link

stale bot commented Apr 28, 2022

This issue has been automatically closed because of inactivity. Feel free to reopen it if you think it is still relevant.

@stale stale bot closed this as completed Apr 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants