Guangzhou, China (CNN) -- It was 2 a.m. on a stormy summer morning.
As the thunder rumbled in the sky, we were led out of a sprawling terminal building through a narrow side door and down a staircase into the pouring rain.
A waiting bus quickly filled up with soaked passengers dragging carry-on luggage.
After a short ride across the dark tarmac followed by another storm-battered trek, we finally entered the freezing cabin of an Airbus 330 jetliner.
Smiling China Southern Airlines flight attendants welcomed us on board, greeting us as if we were excited vacationers about to take off for our dream destination, instead of frustrated, tired and grumpy passengers.
As we settled into our randomly assigned new seats, things turned eerily quiet.
Half of the plane -- the original passengers booked onto the airline's 8 p.m. flight -- seemed to have long fallen asleep during their agonizing wait, while the other half -- those of us re-booked from a canceled 7 p.m. flight and moved onto this one -- were too exhausted to make a sound.
The arrival of a second busload of drenched passengers was followed by a lengthy, silent wait on board -- with no updates from the cockpit.
It was almost 3 a.m. when the pilot announced our impending departure thanks to improving weather.
Our plane finally roared into the starless skies at 3:08 a.m. -- more than eight hours after the scheduled departure time printed on my air ticket.
All signs pointed to a smooth journey when I checked in for flight CZ3547 to Shanghai on a recent Tuesday evening at the bustling Baiyun International Airport in Guangzhou, a southern Chinese metropolis long known as Canton in the West due to its former spelling -- which also explains the airport code CAN.
Keenly aware of the country's notorious flight delays, I kept checking a popular flight-tracking app geared toward air travelers in China installed on my phone.
Its information echoed that of the check-in agent: inbound aircraft had already arrived and weather conditions looked good at both origin and destination airports.
More promisingly, the app's algorithm put the probability of an on-time departure at 90% -- "What a lucky break," I thought, for a flight whose average delay had been 108 minutes in the past month.
Looking forward to a late night reunion with old friends over street snacks in Shanghai after an easy two-hour hop, I arrived at Gate B231 shortly before the 6:20 p.m. boarding time.
Across the tarmac in the distance, a cluster of tower cranes dominated the horizon.
An even bigger new terminal is under construction and slated to open in 2016 at China's second-busiest airport, which saw more than 50 million fliers pass through its existing terminal last year.
Decades of breakneck economic development have brought exponential commercial aviation growth, quickly propelling China to the No. 2 position in the global flight market, trailing only the United States.
But all the shiny terminals and airplanes aside, China's reputation among frequent fliers continues to sink thanks to the country's abysmal on-time performance, with the busiest hubs in Beijing, Shanghai and -- to a lesser degree -- Guangzhou often competing for the title of the world's most delayed airport.
Meanwhile, nothing happened as our scheduled boarding time came and went.
As our 7 p.m. departure time approached, some passengers started gathering around the counter to inquire about the flight status -- and only then did we hear the most dreaded of all Chinese airport phrases: "air traffic restrictions."
It's an all-purpose, vague term that can mean anything from bad weather to radar malfunctions, which may lead to less efficient aircraft movements ordered by China's already overly cautious controllers.
Lately, however, it's apparently meant only one thing: military drills.
The Chinese air force controls the vast majority of the country's increasingly crowded airspace, leaving only narrow corridors for commercial airliners to take off, land and navigate -- and even those passages can be closed with little advance warning when the military conducts exercises.
Hundreds of flights to and from eastern China -- including Shanghai -- were canceled or severely delayed for days in late July during a wave of air drills.
Amid a huge public backlash, the military declared an early end to its exercises while blaming summer thunderstorms for most of the flight disruptions.
Back at my gate, an hour passed when ground staff mumbled something to a few passengers near the counter -- and just like that, boarding commenced.
By 8:15 p.m. everyone had been seated on the aircraft.
Stretching my legs from the coveted exit row seat, I secretly congratulated myself for taking a slightly delayed flight that could still overcome its historically dismal performance.
My hopes were dashed within minutes.
Soon after I promised a flight attendant I'd help her evacuate the plane in the event of an emergency, the purser broke the bad news over the public address system: Everyone has to deplane as the pilot failed to obtain a departure slot due to continuing air traffic restrictions.
Amid much grumbling and groaning, we returned to the gate area where the monitor still showed an "on time" departure.
By now my flight-tracking app had warned me of delays for my flight as well as the next -- also last -- China Southern flight to Shanghai with no estimated new departure times.
As the busy terminal slowly turned empty and shops began to close, our two gate agents -- speaking little English -- remained clueless about the flight status, much to the chagrin of non-Chinese passengers on the flight, who appeared to be at a total loss.
Tensions were somewhat deflated when the agents started handing out food.
A bottle of water, a pack of digestive crackers and a can of "eight-treasure porridge" bought the agents some peace and quiet as frustrated passengers ate and drank.
Boarding started abruptly at 10:20 p.m. and completed swiftly for the second time.
I sensed a collective sigh of relief as the airplane started taxiing -- but it soon stopped and the wait resumed.
As we sat on the tarmac, the cabin staff sounded less optimistic about the flight leaving the airport.
Then, lightning flashed and rain started falling.
An hour after we boarded the plane for the second time, the pilot finally broke his total silence: "Ladies and gentlemen, we are going back to the gate because of weather."
The cabin exploded with expletives, while my app alerted me about the cancellation of the flight.
Back in the deserted terminal, the only airline representative around explained that the last China Southern flight to Shanghai -- though badly delayed -- still had a chance of taking off and the carrier could accommodate all passengers wishing to continue their travel on that flight.
"You're such a liar!" yelled a man in a black T-shirt, pointing his finger at the agent. "Where's your conscience? Look at all the kids and elderly stranded here!"
Pounding the counter with his hand, another middle-aged man wearing glasses and a blue shirt demanded financial compensation. When the agent refused, the man barked: "You call your boss now! Call him in front of all of us now!"
In between his outbursts, the man also chastised fellow travelers for not answering his battle cry: "How do you expect to be compensated without banding together and making a scene? Each of us is entitled to at least 200 yuan ($32)!"
The mutiny of our flight was relatively subdued by Chinese standards.
In recent years state media has recorded numerous dramatic incidents involving irate passengers after flight delays or cancellations, ranging from blocking moving aircraft on an active runway to fistfights with airport employees.
Surprisingly, in the name of preserving "social harmony," Chinese police often turn a blind eye to such egregious behavior that would certainly land the offenders in jail in many other countries.
As the man with glasses carried on with his fight, he continued to express his disappointment at the onlookers: "You guys are too weak to defend your rights!"
Most of us "weaklings" simply wanted to fly to Shanghai as soon as possible.
When several agents eventually arrived after rebooking us on CZ3595, the final Shanghai-bound flight of the day and our last hope, we took the new boarding passes -- and walked past the "fighters" and into the rain.
At the break of dawn, we landed at Shanghai's Hongqiao airport and, as promised, checked luggage from our canceled flight promptly appeared on the conveyer belt.
Moving past the long line at the taxi stand outside the terminal without a single cab in sight, I walked straight to the subway station as the first train pulled in at 5:35 a.m.
"Maybe I can grab some delicious soupy dumplings for breakfast with a few friends before they head to work," I thought as the train raced downtown.