0

This is quite theoretical, and I hope it's the right SE site.

A couple of years ago I worked at a company using Maya 2014 (I think that was the version) with a couple of other 3D Artists.

Eventually I figured out that there's a short, reproducible sequence of operations that I can do that will lead to the crash of the program without fail - 100% rate, with a catch.

The Sequence, for the sake of completeness:

Open a fresh Maya, create a polygon cylinder, set the rendering style of the perspective style to shaded if it isn't already, press space twice to get to the side view in wireframe, select all faces, deselect the middle faces, delete the (now selected) caps, select one of the border rings, extrude and pull out the edge, press 3 to set the cylinder to smoothed rendering, then press space to leave the wireframe side view. At this point, the other views would fail to render, Maya would encounter a fatal error and close itself.

I could perform this on any PC, with any Hardware, on a fresh or highly modified Version of that Maya without fail. The catch: Only I could do it.

When I showed this bug to my colleagues and they tried to replicate it, Maya did NOT crash. (I think there was one other person to which this also happened, maybe) We could perform the sequence on the same PC on the same install back to back, it would crash for me but not for them.

We theorized it might be that I'm typing faster than the others, confusing the system. I performed the steps slowly yet it still happened. The sequence was also only the fastest way to replicate the crash. "Tabbing out of a smoothed wireframe view after performing an operation in it" was the only condition, and all projects would crash on me if I didn't pay attention to the conditions.

What we did NOT test was what would happen if I would perform one half of the sequence and a colleague the other, trying to narrow it down to a certain step.

So, the bug occurred reliably: - Independent of Hardware - Independent of it being a fresh install - Independent of context (big or small project) - Independent of operation speed - Apparently, dependent on the person performing it.

I jokingly called it the "Curse of the Maya" and we left it at that - but to this day I wonder, what could theoretically cause a bug to appear seemingly dependent on the user? From all my understanding of software that just doesn't make sense.

5
  • Could you repro just by driving the event sequence but using someone else's account? Or was it only with your account? The account's environment (preferences/settings/options/homedir content/etc) often matters. Jan 27, 2020 at 3:20
  • It was independent of account. As said, we could just launch Maya twice in a row to make this happen, and I could do this on other peoples PCs too, with their logins. Last year I tried it again while I was working in a different country, still worked. I can reproduce it in any condition to this day.
    – anon
    Jan 27, 2020 at 8:29
  • 2
    If your step-by-step description can't be executed by your coworkers resulting in the same failure, it's probably not exactly describing what you really do. In software support, I often experience user reports which are simply not describing what users did but what they think they did, and sometimes looking over their shoulder uncovers the difference. You might want to let someone make a video of your sequence, and try to compare that to your description or to reproduce by truthfully following the video. Jan 27, 2020 at 10:09
  • Is all of this sequence done on the keyboard or was any part of it done with a mouse or other pointer device?
    – JimmyJames
    Jan 27, 2020 at 18:12
  • I've instructed the coworkers sitting by me and I watched them perform it. It's a very basic sequence for us. We have assumed there must be a minute difference. And yes a mouse is involved, to select and deselect. One lead might also be that it's a graphical error. The key operation is one that changes the rendering style in out-of view windows, it crashes once it tries to render the views that have received an update in the background.
    – anon
    Jan 28, 2020 at 0:05

1 Answer 1

3

If it's not difference in hardware, software, or execution of the steps then obviously something non-deterministic is happening and Murphy is having a bit of fun at your expense.

I once spent an entire afternoon sitting at a breadboard wiring up a traffic light simulator that I'd spent a week designing. It was complicated and I was afraid that even after faithfully following my wiring diagram it would need intense debugging. I put the last wire in and hoped it would work first time. It did. Joy! Then I leaned back to show off what I'd done and it stopped working. I went, "Huh?" and leaned forward to look at it closely. It started working again. Wondering if I had somehow invented a proximity sensor, I leaned back again. It stopped working.

I almost believed my invention was watching me. Then I noticed my left hand was still touching the ground wire. While leaning back I pushed down on the wire. LEDs sprang to life. In that moment my proximity sensor died, my traffic light simulator was born, and Murphy snuck out the back door.

All I can say is, welcome to the club.

5
  • Welcome to more magic. Also, bugs can be username-dependent. Jan 27, 2020 at 3:20
  • 1
    Same OS user-account as well? (i.e. otherwise it could be different authorisations or some minor differences in account setup/preferences) ?
    – Christophe
    Jan 27, 2020 at 8:07
  • Nope, I could reproduce it on any account, and also outside the company. Even years later on an entirely different PC in a different location to see if it's still a thing. I could probably make a video of it today on my current PC. How "Murphy" is it when it's a 100% rate?
    – anon
    Jan 27, 2020 at 8:33
  • @anon Murphy is a strange beast. He’ll convince you that you can predict an outcome right up until you try washing your car to make it rain. Jan 27, 2020 at 13:50
  • @anon: ah yes, I see right there on line 32 - if (username == "anon") { throw new Exception("..."); } - it was there the whole time! Jan 29, 2020 at 3:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.