What's new
Xen Factory

Register today to become a member! Once signed in, you'll be able to start purchasing our products, ask questions, request support and suggest new ideas!

  • This area is dedicated to the support of our xF1 add-ons. For xF2, please use the dedicated area: HERE.
  • We are aware that a no permission error was shown when you tried to purchase in the last 2 days, this is now fixed.

Bug Fixed Multiple buyers, race condition

apsmith21

Member
If the marketplace listing is close to selling out, there have been a couple of times where the physical product listing is oversold.

It happens when there are still items listed for sale, but the buyers enter the transaction around the same time, but have not completed the paypal payment yet.

When they return to the forums, they were allowed to purchase the item, even though the listing was sold out.

Now the listing is "oversold" even though the box to oversell the listing is not checked.
 

apsmith21

Member
I experienced this with "Forum Sales" add-on. It's a critical thing (more with Marketplace of course).

Just a +1 to this - we had a listing oversell by a number of copies because of this exact problem. Had a very limited supply, a crap ton of people went after the listing to purchase, and a very large number of them got to paypal and were able to pay for a copy, even though the supply did not warrant it.

I don't know what the best solution here is, but it's a bigger deal for me.
 

Clement

Freaky Coder
Staff member
Hum, I may have to put some sort of on-hold timeout system.

Though it was somehow what I had before and people weren't that happy.
 

Freelancer

Member
Just thinking out loud: what about having a limit of sending a request to PayPal from the particular sale depending on the quantity there. No timing limiter but a communication limiter with PayPal, and the second request gets an error message like "Sorry, someone else purchased this item". If possible. A "Timer" could provoke other issues.
 

Freelancer

Member
Can you detect the amount of purchase requests made versus the amount of items available (quantity of the sale offer)? If so if the purchase is requested the same amount of quantity of the item sold you could block any excess purchase requests by an error message.

I think this works better than a timer?
 

Clement

Freaky Coder
Staff member
Yes this is what I suggested here above, the only issue is that it needs to have a timeout on the purchase request because one could go to paypal and decide not to continue the purchase and just leave like that.
 

apsmith21

Member
This issue was definitely not resolved for us, still a major problem. If there is a small quantity, say 3-4 items, and multiple buyers want it, we've seen the potential to oversell the listing by 10+ items, even though the listing is not allowed to oversell.

Did this get resolved in the Xenforo 2.0 version, or are there more checks beyond what is installed in this version...?
 

Clement

Freaky Coder
Staff member
I didn't integrate further check, I am just not sure when this happen.
I think it's cases when the user have reached the payment page because the sale is effective only once the redirection has been done.

I could put an additional security that block quantity for a defined timeout.
 

apsmith21

Member
I didn't integrate further check, I am just not sure when this happen.
I think it's cases when the user have reached the payment page because the sale is effective only once the redirection has been done.

I could put an additional security that block quantity for a defined timeout.

I think that seems likely - a number of people reach the payment page before the listing is showing sold out.

At my forums, we literally could have 30 members vying for 10 physical items at the same time.

Would you be able to implement this additional security in the Xenforo 1.x version?

Thanks
 
Top