On my way to Shanghai this week, I had a layover in SFO that was originally supposed to be around 4 hours. Normally I would fly through Chicago on my way to Shanghai, but my boss and a co-worker were traveling as well and they wanted me to meet up with them in San Francisco. 4 hours is a bit longer than the typical layover for me and part of it was my fault -- I had booked an early morning flight from Dulles because it was internationally configured and so the upgrade to business class was so much better.
When I got to SFO I received a text message from United that the flight to Shanghai was delayed 1/2 hour (to 2:20 rather than 1:50) -- no big deal.
However, that wasn't the end. Around 2:00, they told us that the delay was now changed to 6:40PM (another 4 hours) and they provided us with a meal voucher.
Later (around 5:30PM), they delayed the flight to the next day at 9:00 AM. This wasn't a cancellation, but a delay -- and given how full flights are nowadays, I'm glad they did the delay or it might have taken us days to get to Shanghai. They gave us dinner and breakfast meal vouchers as well as putting us up at the local Hyatt.
So, almost 24 hours after arriving in SFO, we took off for Shanghai and the rest of the flight was uneventful. Luckily, I was upgraded into business class the entire way.
Of course, the Chicago to Shanghai flight that I normally would have flown went off without a hitch and I would have arrived in Shanghai almost 24 hours earlier. For some reason, I find it necessary to remind my boss of that every few minutes :-).