1311 Crash

Started by TomTaylor

free_radical Lv 1

Hi Everyone,

Thank you for the crash reports. I was able to reproduce the wiggle crash and I have a working theory as how to fix things.

1) The crash happens only for me if I use an old binary for Foldit. After updating Foldit (letting it update in the client), hitting wiggle at the start of the puzzle does not result in a crash.

2) If it does crash, I deleted all the old puzzle files in my directory and that seemed to stop it from crashing.

With this being said, I am not sure what the actual root of the problem is. I havent had it crash on me yet running recipes or doing hand movements. I will continue trying to get it to crash to find the bug. Thank you for the patience.

free_radical

TomTaylor Lv 1

I was able to crash resetting the puzzle and only using Pull Mode->Wiggle. Unfortunately two times it crashed and two times it didn't crash.

  1. Reset puzzle
  2. Pull Mode->Wiggle segments 12-18
  3. Wait a few minutes

TomTaylor Lv 1

Did some more testing. Crashed 8 out of 10 times. Latest crashes are more consistent taking less than 10 seconds to crash.

Susume Lv 1

People who are experiencing crashes, try setting your undo graph properties to something less than 100. I have graph length 80, memory 50%, and I rarely crash on very large puzzles that seem to cause many crashes for others. Just something to try.

TomTaylor Lv 1

Tried Susume's settings and the first time when I started Wiggle foldit immediately shut down. No error message just gone. The second time crashed after starting Wiggle. The good news is there is now something in the error log.

alcor29 Lv 1

Crashed using pull tool this time. Log below

No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
No object matching key 0.
SRVR_THRD getting notifications…
Sending SOPs:

delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
*** STARTING THREAD ActionLocalMinimizePull
core.conformation.symmetry.SymmData: Setting weight of master jump ( jump-id=12 ) to 1.0 (was undefined)
core.conformation.symmetry.SymmData: Setting jump_group JGS: [master 12] 13:0 14:0 15:0 16:0 17:0
core.conformation.symmetry.SymmData: Setting weight of master jump ( jump-id=1 ) to 1.0 (was undefined)
core.conformation.symmetry.SymmData: Setting jump_group JGSS: [master 1] 2:0 3:0 4:0 5:0 6:0
delta_score: 0
Playing sound: 4
**
* ENDING THREAD ActionLocalMinimizePull
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
rotate mouse down
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
Sending SOPs:

delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
rotate mouse down
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
SRVR_THRD getting notifications…
Sending SOPs:

delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
rotate mouse down
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
rotate mouse down
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
rotate mouse down
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
*** STARTING THREAD ActionLocalMinimizePull
Tool on_action_complete called
Tool on_action_complete called
**
* STARTING THREAD ActionLocalMinimizePull
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
rotate mouse down
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
rotate mouse down
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
Sending SOPs:

delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
delta_score: 0
Playing sound: 4
Tool on_action_complete called
Tool on_action_complete called
SRVR_THRD getting notifications…
Sending SOPs:

***** STARTING THREAD ActionLocalMinimizePull

saksoft2 Lv 1

I don't know the code but I have a theory (actually three)…

The full hexamer has a ton of graphical objects on it that a normal puzzle won't have (5 extra copies of every motion). That's 6x more flow into the rendering engine. If the CPU/GPU combination can't keep pace and render all of that within a certain frame rate, how does Foldit respond? Are you properly catching frame buffer underflow messages?

If you miss a number of render frames in a row, what is the code designed to do? If the routines used in pumping those objects to the graphics library take too long, are there other timer-based threads (like chat) that freak out because they missed their normal read cycle?

And theory #3: if the manipulation routines (like shake and wiggle) are working faster than the graphics engine can render, are you overflowing some buffer somewhere? Memory block exhaustion, stack exhaustion, or simple overflows have been the bane of many programs. Foldit may not be an exception.

I know from my day job that the thread that "crashed" isn't always the thread that caused the crash. Other threads could have created the condition that simply didn't let that other thread operate properly.

Susume Lv 1

Crashed during script - log.txt says it was during ActionBuild, scriptlog says it was during Remix.
Event viewer says exception code 0xe06d7363 in KERNELBASE.dll.