Suspects remain on the run after theft of high street ATM
Cheapskates wouldn't pay for security help, got hit by ransomware, and went bust months later
Celebrity Traitors producers forced to ditch plans for a future episode after an 'unthinkable' incident... which was even MORE chaotic than Richard E Grant's gaffe
From the 'drama queens' of Reform to the 'Paddington Bear PM': Kemi's formidable speech unpacked
Embedding the human factor into AI agent adoption
'Bridget's death changed everything': Sir Alex Ferguson speaks for the first time on his decision to quit Man United because of his grief-stricken wife - and how he broke down after telling his players
Teen arrested after police called to reports of person with knife
Teen arrested after police called to reports of person with knife
Want to smell expensive? This new M&S perfume already has all the beauty editors talking - and it's just £22.50
Spider season is here! Experts reveal how to keep eight-legged critters from moving into your home - including shutting windows at sunset and using natural 'scent deterrents'
Red Bull pays Geri Halliwell's husband Christian Horner £33.5million in compensation for 'loss of office' after texting scandal
The euro's in freefall. France is going bust - fast. What a time for Andy Burnham to plot to rejoin the EU: ALEX BRUMMER
Zara Tindall reveals how her tough-love upbringing with Princess Anne and 'critical' Mark Phillips has shaped the way she raises her own children
It's a bird, it's a plane...well, more of a spinning parachute, but really it's a droppable robot boat
OpenAI Unleashes Hundreds More Math Results Upon a Field Already In Shock
Read more of this story at Slashdot.
Dua Lipa and Callum Turner prove they're still in the honeymoon period as they pack on the PDA at a New York Yankees game
The best beauty advent calendars for 2026 from John Lewis, M&S and more, reviewed and ranked by experts for value and standout products - and they're selling fast
Former CDC director questions whether Russian researcher was working with 'manipulated' strain of plague before death
Christa Pike 'angry and confused' when she woke up after Tennessee's failed execution as victim's mom gives dejected statement
Racing Trains
Robert G sends us a WTF from the outside, but I think we can come up with some hypotheses about what actually happened.
Robert was traveling by train. For complicated train reasons, the car he was seated on was not actually scheduled to continue with the train he was booked to ride, the replacement car missed its scheduled arrival, and the result was that Robert was left at a station needing to rebook his travel.
Now, given that this is in a region of the world with a fairly robust train network, this represented a hiccup of thirty minutes in a many hour trip. Not a particularly big deal. But Robert didn't want to get stranded any longer than he had to, so he took out his phone, fired up the train company's app, and made sure he had a reservation on the next train. He got the confirmation, and grabbed a coffee while he waited.
Not quite thirty minutes later, Robert boarded the train and went towards his reserved seat. Another passenger approached from the opposite direction, and they met at the seat. "Excuse me," Robert said, "but I reserved this one."
"No, I reserved this one."
Being reasonable people, they both pulled out their phones and pulled up their apps. Sure enough, each one of them was confirmed for that seat. Since the email confirmation had more details than the app provided, they both pulled up the email. Same seat. Both confirmed. The timestamp of the reservation? The same, down to the second.
"I don't think the conductor will let us sit in each other's laps," the other passenger said.
As it turned out, there was enough room on the train that no lap sitting was required. Everyone got a seat, even if it wasn't the one they reserved.
But the story stuck with Robert. A major transit provider had a reservation system that clearly had a race condition. It seemed like the most basic example of race conditions too, the kind you're shown in college to explain the basic concept.
"Check if the seat is reserved, and if it's not, reserve it." Because that sequence isn't atomic, two different threads could do the check, see it's not reserved, and then reserve it. I suppose it's at least something that one reservation doesn't overwrite the other, which at least indicates that a reservation is its own record.
The real question is this: this has to happen with some frequency, so how has nobody fixed it?
The real answer: they probably just don't care, either because they literally don't care, or because their software is such a trashfire that this doesn't even rise to the top ten bugs. It's likely a mix of both.