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

Track dropped trade protocol messages #84

Closed
cbeams opened this issue Mar 17, 2018 · 15 comments
Closed

Track dropped trade protocol messages #84

cbeams opened this issue Mar 17, 2018 · 15 comments

Comments

@cbeams
Copy link
Contributor

cbeams commented Mar 17, 2018

@cbeams commented on Wed Jan 10 2018

Per details in the description of #1172, this issue exists for tracking arbitration cases where we believe that trade protocol messages have been dropped due to P2P network stability / reliability issues.

The classic example here is that a buyer and seller are engaged in a trade, the buyer completes their payment to the seller per protocol, and clicks "Payment Started" in Bisq, but the seller's Bisq client never transitions to the state where the seller is "Waiting for payment to arrive", and the seller can therefore never click "Payment Received", even after they have in fact received the payment.

We hypothesize that the reason this happens is that message sent when the buyer clicks "Payment Started" never propagates to the seller's Bisq client. This could happen because the seller was offline when the buyer clicked the button, causing the buyer's Bisq client to send the message to a seed node to be stored as a mailbox message, and then when the seller comes back online, they for some reason do not retrieve that message, e.g. because of a (temporary) P2P network partitioning in which they cannot communicate with the seed node where the message was stored.

Again, the above is just a hypothesis. The most important thing right now is to track how frequently these issues are occurring. We believe they are still rather infrequent, but more prevalent recently than they have been in the past.

To make note of an incident, add a comment to this issue as soon as possible, mention the Trade ID, who the arbitrator is, and explain what happened as best as you can. Do not include identifying details about the trade or traders involved.

Note: this issue and the instructions are primarily intended for @bisq-network/arbitrators, but individual traders are also welcome to follow these instructions if they believe they're experiencing a dropped message problem during arbitration.

In any case, by keeping close track of how often this problem is happening, we'll be able to know when we've solved it.

This issue is closely related to, but distinct from #1173. Please do not confuse the two.


@cbeams commented on Wed Jan 10 2018

One of my arbitration cases today (ID VEJPOYIW) seems to have been due to this problem. The buyer confirmed with me that they did in fact click "Payment Started" after sending their payment to the seller, but the seller was never able to click "Payment Received" on their side, because the option to click it never became available. It seems that the "Payment Started" message simply never made it to the seller's client. I've asked the buyer to send me their bisq.log file for analysis.


@Yummis commented on Wed Jan 10 2018

Oh yeah I'm the buyer you are talking about,
I'm using Bisq for more than 1 year already without any problems, but lately I've had this problem continually, I would really like this issue to be solved because in my eyes Bisq is the best way (in theory) to trade unanimously and securely between the Crypto world, I would really like to see at least 1000 users and I wanna see Bisq as the number one place where people go to trade Crypto, and for this to happen it has to be as simple and smooth as possible, and we need to do some marketing and advertising as well
Thanks for this amazing project


@cbeams commented on Tue Jan 16 2018

Trade QUC0H just showed up in my queue. The buyer sent payment per protocol, and the seller received it, but even though the buyer clicked "payment started" on their side when they made the payment, the seller was never able to click "payment received" on their side. This would appear to be because the payment started message never made it across the network from buyer to seller. I've asked the buyer to attach their bisq.log here for analysis.


@cbeams commented on Wed Jan 17 2018

Note that the buyer in QUC0H did upload their log, and it's available in my client. Can upload / analyze later.


@cbeams commented on Sun Jan 21 2018

Trade ID CSeRT may have been an incidence of this problem.


@cbeams commented on Wed Jan 24 2018

Trade ID o5BEc appears to be an incidence as well. Buyer clicked 'Payment Started' but it never took, making it impossible to progress through the trade process. We handled it in arbitration.


@cbeams commented on Mon Jan 29 2018

Trade ID XiRFr may have been an incidence. Buyer was unable to click 'Payment Started' button and got the popup following "failed trade" popup on restarting https://imgur.com/a/cDzhR. We handled the payout successfully in arbitration.


@cbeams commented on Wed Jan 31 2018

Trade ID zBfXyrw seems to have had this problem. Buyer clicked 'Payment Started', and saw it take effect on their side, but the seller was never able to click 'Payment Received' on theirs.

The buyer explained that trade ID 73886 may be having the same problem as well, but I am unable to confirm, as that trade has not yet shown up in my queue, nor do I know if I'm the assigned arbitrator. @keo-bisq, heads-up.


@jenechka1 commented on Wed Jan 31 2018

Both of these are mine, in addition to this one: AqPQiHw, which appears to be having the same issue, because the funds should have been received by the seller yesterday morning at the latest, but they still haven't confirmed. Is it just my luck or could I be doing something wrong?

Also, may I suggest adding a button / function to check if the message(s) generated by the client have been consumed by the intended recipient, and to resubmit the messages that have not.


@jenechka1 commented on Wed Jan 31 2018

Now that I can't get into the app (see #60 (comment) I won't even know if any of these other trades went to arbitration and what, if anything, is going on with them.


@jenechka1 commented on Sat Feb 03 2018

Can someone please look at the three transactions mentioned above: AqPQiHw, 73886, zBfXyrw, and let me know if they have completed or if there are outstanding issues? I have paid for these, but since I can't get into the app, there is no way for me to see if they have come to a successful completion or if there is anything that requires my attention.


@cbeams commented on Sat Feb 03 2018

@jenechka1, I was your arbitrator for trade zBfXyrw, and it was closed out with you receiving the BTC trading amount, as per the chat we had about it in-app. The other trades have not shown up in my queue, meaning they either have not yet gone to arbitration, or that @keo-bisq has them in their arbitration queue.


@jenechka1 commented on Sat Feb 03 2018

You are right about the zBfXyrw. How would I go about finding out about the other two? Can I contact @keo-bisq directly?


@cbeams commented on Sun Feb 04 2018

@jenechka1, @keo-bisq will receive that message directly, because you @mentioned them.


@cbeams commented on Sun Feb 04 2018

Trade ID LG3n2u6 just exhibited dropped trade protocol message behavior. From the seller's opening arbitration message to me:

Hello! I have received full fiat payment for this trade, however, I am unable to confirm payment in Bisq because on my end it shows that the buyer still had not marked the payment as sent. I have been messaging with the buyer, and he sent me a screenshot indicating that he did indeed mark the payment as sent in Bisq. This is a technical glitch that I have run into a few times. Please mark as paid and close this transaction. Thanks!


@cbeams commented on Sat Feb 10 2018

Trade 14929177 appears to have dropped its payment sent message (or perhaps not dropped but otherwise was just unable to send), and then had the strange behavior of giving the user this error message.

image

In actual fact, the trade was not a failed trade at all. Bitcoin transactions related to the trade were all in good order, and the trade made it into arbitration, and has now been closed out from arbitration. I'm not sure what triggered the "failed trade" message, but the user explained that they saw this pop up many times, and that restarting Bisq made no difference.

In any case, this is the first time we (or I anyway) have seen this particular behavior. It's an isolated incident, but it's documented here, so we'll keep an eye out for it.

Here is the affected traders log, truncated such that the messages related to the failed "payment sent" message are at the top:

i.e. you'll see these messages right at the top:

Feb-09 01:02:46.818 [JavaFX Application Thread] WARN  i.b.c.t.p.TradeProtocol: cleanupTradableOnFault tradeState=BUYER_SEND_FAILED_FIAT_PAYMENT_INITIATED_MSG 
Feb-09 01:02:46.818 [JavaFX Application Thread] WARN  i.b.g.m.MainViewModel: You have locked up funds from a failed trade.

truncated_bisq_log.log


@jenechka1 commented on Sat Feb 10 2018

I'm away from my computer right now. I'll check the trade when I get back
in a few hours and report back.

Best regards,

Jean

On Feb 10, 2018 2:45 AM, "Chris Beams" [email protected] wrote:

Trade 14929177 appears to have dropped its payment sent message (or perhaps
not dropped but otherwise was just unable to send), and then had the
strange behavior of giving the user this error message.

[image: image]
https://user-images.githubusercontent.com/301810/36059732-cf02a882-0e3d-11e8-96db-62214099d06a.png

In actual fact, the trade was not a failed trade at all. Bitcoin
transactions related to the trade were all in good order, and the trade
made it into arbitration, and has now been closed out from arbitration. I'm
not sure what triggered the "failed trade" message, but the user explained
that they saw this pop up many times, and that restarting Bisq made no
difference.

In any case, this is the first time we (or I anyway) have seen this
particular behavior. It's an isolated incident, but it's documented here,
so we'll keep an eye out for it.

Here is the affected traders log, truncated such that the messages related
to the failed "payment sent" message are at the top:

i.e. you'll see these messages right at the top:

Feb-09 01:02:46.818 [JavaFX Application Thread] WARN
i.b.c.t.p.TradeProtocol: cleanupTradableOnFault
tradeState=BUYER_SEND_FAILED_FIAT_PAYMENT_INITIATED_MSG
Feb-09 01:02:46.818 [JavaFX Application Thread] WARN
i.b.g.m.MainViewModel: You have locked up funds from a failed trade.

truncated_bisq_log.log
https://github.com/bisq-network/exchange/files/1713166/truncated_bisq_log.log


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
bisq-network/bisq#1174 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AiFK_wJtR-EWWhPX3LKVPZfu-Gz4l1mtks5tTUkQgaJpZM4RZYwg
.


@jenechka1 commented on Sat Feb 10 2018

I'm sorry, I forgot this goes out to everyone watching a topic, even if a
particular trade is someone else's. My bad.

Best regards,

Jean

On Feb 10, 2018 02:45, "Chris Beams" [email protected] wrote:

Trade 14929177 appears to have dropped its payment sent message (or
perhaps not dropped but otherwise was just unable to send), and then
had the strange behavior of giving the user this error message.

[image: image]
https://user-images.githubusercontent.com/301810/36059732-cf02a882-0e3d-11e8-96db-62214099d06a.png

In actual fact, the trade was not a failed trade at all. Bitcoin
transactions related to the trade were all in good order, and the trade
made it into arbitration, and has now been closed out from arbitration. I'm
not sure what triggered the "failed trade" message, but the user explained
that they saw this pop up many times, and that restarting Bisq made no
difference.

In any case, this is the first time we (or I anyway) have seen this
particular behavior. It's an isolated incident, but it's documented here,
so we'll keep an eye out for it.

Here is the affected traders log, truncated such that the messages related
to the failed "payment sent" message are at the top:

i.e. you'll see these messages right at the top:

Feb-09 01:02:46.818 [JavaFX Application Thread] WARN i.b.c.t.p.TradeProtocol: cleanupTradableOnFault tradeState=BUYER_SEND_FAILED_FIAT_PAYMENT_INITIATED_MSG
Feb-09 01:02:46.818 [JavaFX Application Thread] WARN i.b.g.m.MainViewModel: You have locked up funds from a failed trade.

truncated_bisq_log.log
https://github.com/bisq-network/exchange/files/1713166/truncated_bisq_log.log


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
bisq-network/bisq#1174 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AiFK_wJtR-EWWhPX3LKVPZfu-Gz4l1mtks5tTUkQgaJpZM4RZYwg
.


@cbeams commented on Mon Feb 12 2018

Trade vNYbeG appears to have dropped its 'payment started' message; I got screenshot proof that the buyer clicked the button, but the seller said they were unable to click 'payment received'.

NOTE: I accidentally added the above as a comment at bisq-network/bisq#1173 (comment) several days ago. I meant to add it here, on this issue, not on that one.


@cbeams commented on Fri Mar 09 2018

Trade 74918309 appears to have dropped its 'payment started' message, causing the trade to go to arbitration unnecessarily.


@cbeams commented on Sun Mar 11 2018

Trade KEHENQM may have dropped the "Payment Started" message on the buyer's side, such that the seller never knew to check for payment.


@cbeams commented on Sat Mar 17 2018

Trade SQ48RPHA looks like another incident. Seller received payment, but was unable to indicate that they did because the buyer never clicked "Payment started", or did click it but the message never made it through. I'm confirming with the buyer what happened now.

I wonder if there's any reason we couldn't allow seller's to click "Payment Received" even if the buyer never clicked "Payment Started". I see no game theoretical reason not to allow this. Not sure whether there might be a technical / protocol reason that would prohibit it or make it unduly difficult.


@cbeams commented on Sat Mar 17 2018

Confirmed: trade SQ48RPHA was a dropped protocol message on the buyer's side. They did click the "Payment started" button, but it never reached the buyer's client.

@cbeams
Copy link
Contributor Author

cbeams commented Mar 22, 2018

Trade mfsvjm dropped the buyer's "Payment Started" message, such that the seller was unable to click "Payment Received".

@cbeams
Copy link
Contributor Author

cbeams commented Mar 24, 2018

Trade mdg3g9 suffered from this issue.

@cbeams
Copy link
Contributor Author

cbeams commented Mar 25, 2018

Trade IVDRI may have been an instance of the 'Payment Started' message being dropped. I was unable to confirm with the buyer.

@cbeams
Copy link
Contributor Author

cbeams commented Apr 3, 2018

Trade mggdvkex may have been an instance of this problem.

@cbeams
Copy link
Contributor Author

cbeams commented Apr 24, 2018

Trade 19272 appears to have dropped the buyer's "Payment Sent" message..

@cbeams
Copy link
Contributor Author

cbeams commented Apr 28, 2018

Trade JvGgApHr dropped the buyer's "Payment Sent" message.

@cbeams
Copy link
Contributor Author

cbeams commented May 1, 2018

Looks like trade 639776 dropped the seller's "Payment Received" message, causing the trade to end up in arbitration.

UPDATE: I was incorrect about my assessment of the situation above. The payout transaction DID in fact take place, but the trade itself was never closed out for some reason. I'm not sure I've seen this happen before. Will keep an eye out for future such incidences.

@cbeams
Copy link
Contributor Author

cbeams commented May 6, 2018

Trade NX5C4W5F was probably an incidence of this bug (I was unable to get confirmation from the buyer).

@cbeams
Copy link
Contributor Author

cbeams commented May 6, 2018

Trade 54500 was probably related to this bug. Responses from the buyer as to what happened on their side with the "Payment Started" button were a bit ambiguous, but in all likelihood, it's this problem.

@cbeams
Copy link
Contributor Author

cbeams commented May 11, 2018

Trade RQQOGI was probably an instance of this issue. I've stopped asking buyers if they forgot to click the "Payment Started" button, because in virtually all of the cases documented above, they have indeed clicked the button, and this back-and-forth creates considerable delays. I am now just assuming that when the seller is unable to confirm receipt, that it is because of this issue, and I just close the trade out immediately.

@cbeams
Copy link
Contributor Author

cbeams commented May 23, 2018

Trade vckdskia was an instance of this issue.

@cbeams
Copy link
Contributor Author

cbeams commented Jun 12, 2018

Trade albkipzy was likely an instance of this issue.

@cbeams
Copy link
Contributor Author

cbeams commented Jun 14, 2018

Trade 40834468 was likely an instance of this issue.

@cbeams
Copy link
Contributor Author

cbeams commented Jun 18, 2018

Trade LHBLBRLV was an instance of this issue, where the seller's Payment Received message caused closure of the trade on the seller's side, but never made it to the buyer.

@pazza83
Copy link

pazza83 commented Aug 28, 2021

Closing as stale

@pazza83 pazza83 closed this as completed Aug 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants