Years ago, Movietech Solutions created ticketing and management software for movie theatres. The DOS version of their flagship app had been quite popular with smaller and mid-sized chains throughout North America for years, so it was no surprise that when the Windows 95 version was announced - with its integration with front-line touch screens, self-service kiosks, and boatloads of management reporting - that it was quickly adopted. For the most part, the upgrades happened without issue. New hardware would be ordered and installed by a local IT person, data migrated and business carried on as usual. Except for when it didn't. When this happened, corporate sent out James. A.K.A. 'The Cleaner'.

While there is definitely a Bad @$$ sound to the title, being a cleaner is just a combination of trainer, installer and jack-of-all-trades. James would spend a few days on-site putting the pieces together, followed by a couple of days training the staff on the new system, handling any hardware issues that arose and basically getting the software through the teething stage.

So, it was of little surprise that during this hectic time, James came into the office one morning and before he could reach his desk, was immediately met by his manager who appeared more caffeinated than normal.

"I'm afraid you have to go out to Annapolis, Nova Scotia, ASAP. Their entire system is down and after working with the backline engineers all night, we can't figure what's happening. It seems like the on-board network has failed on the server. But only after the system has worked for a few minutes."

"Did they fail back to their legacy box in the meantime?" James replied in a very serious tone while mentally suppressing an eye roll.

"That's just it - their local IT guy had a 'change of heart' and decided to walk off with their old server. James, they're a 6 site installation who just paid for our premium support and are running their business like it's the 1950's."

James straightened up a bit. "OK - that is a little different. I'm on it."

Once he got into Annapolis, the next step was to find the client's first cinema that was experiencing the problems. The map he had picked up at the airport was decent, but as he got closer to the address, the surrounding area became more suspect. Not ghetto, but definitely with a touch of film noir. While parked at the side of a street in the downtown area consulting a map, James was approached by the hooker. Given the size of Annapolis, there was likely to be just the one. Her appearance immediately brought to mind that famous big screen purveyor of sex for money. No, not Julia Roberts...visualize Jon Voight.

After dispatching the hooker, James made his way to the theatre. The area had improved, but still had a downtrodden feel to it. Not that James was overly concerned. He had been to his share of seedy places. And this was Canada, where even the muggers are polite enough to say "thank you' after they've taken your wallet.

The side entrance to the theatre was down a dank alley. James made his way to the door and knocked. After a brief moment, it cracked open slightly.

"Are you the cleaner?" came a gruff voice from inside.

"Yeah, that's me...I'm here to fix things."

James made his way to the front of the theatre. Apparently, with no other way to operate, the staff had resorted to distributing paper raffle tickets to the patrons. Which made it challenging to show management the money, much less the more interesting details. But the staff was relieved to see him and he was taken immediately to the server room.

At first glance, nothing appeared to be a problem. James logged into the server and checked out the usual suspects. No issues at all. Still, erring on the side of caution, James shut the server down, replaced the network card and brought the system back up. In a matter of moments, it was completely functional. The staff got back to the job of selling tickets.

A phone call was made to Mark to let him know the situation. It did not take a genius to suggest that James might want to stick around for a while to see if anything unexpected happened. So James went downstairs and starting talking to the staff about what happened. Apparently, the system just stopped working. They turned it off and own, which fixed the problem. But only momentarily. After about 10 minutes, the system would again go off-line.

Right about then, it happened. Suddenly the front-line ticketing system started throwing errors. What they had was a failure to communicate. With a sigh, the staff grabbed the raffle tickets while James hustled back to the server room. Nothing appeared to be wrong with the server at all.

Then, one of the staff came in.

"The system is working again."

James was puzzled. He hadn't actually done anything. Most certainly nothing to make the system start working. He logged out of the system, picked up a phone and placed a call to the IT support at his company. Moments later, the same staffer entered the room.

"System's down."

James looked up at the server. An interesting, yet familiar pattern of colors and shapes danced over the screen. We had all seen the noodle pipes screen saver before. It was beautifully rendered and hypnotic in its own way. He hit a key and the pattern disappeared. As he hurried to the ticketing area, he met the staffer coming the other way.

"System seems fine now."

If one can mentally facepalm, that's exactly what James did. The pipes screen saver. It uses OpenGL. And because of that, when it was active it took 100% of the server's CPU. Letting every other request to the server time out.

Going back to the server room, James logged in, changed the screen saver from the beautiful tubes to a blank screen. In other words, from a screen saver that took 100% of the server's CPU to one that didn't. As he sat down, waiting the requisite 10 minutes to make sure his hunch was correct.

As James made his way to the next site, the thought about how he was going to explain to his manager to explain that he had just flown 500 miles to turn off a screen saver.


Photo credit: ilovememphis / Foter / CC BY-ND

[Advertisement] BuildMaster allows you to create a self-service release management platform that allows different teams to manage their applications. Explore how!