NoPrompt for AutoSave file recovery after crash


#1

I opened an existing file, saved it under a new name (ClampHead.3dm), then spent several hours editing it.

There was a display freeze, then recovery, with the message that the display driver have failed to respond in the required time and Windows had reset it - something that seems to happen far to often with the latest NVIDIA drivers.

Other applications continued on, but Rhino reported it had a problem and had to close.
Latest release of Rhino 5 64-bit:
Version 5 SR6 64-bit
(5.6.31028.18305, 28/10/2013)

Event log application error details:
Faulting application name: Rhino.exe, version: 5.6.31028.18305, time stamp: 0x526ebf38
Faulting module name: opennurbsx64.dll, version: 5.6.31028.18305, time stamp: 0x526ebbc8
Exception code: 0xc0000005
Fault offset: 0x00000000003378e0
Faulting process id: 0x1398
Faulting application start time: 0x01cee1aaeb1b2749
Faulting application path: C:\Program Files\Rhinoceros 5.0 (64-bit)\System\Rhino.exe
Faulting module path: C:\Program Files\Rhinoceros 5.0 (64-bit)\System\opennurbsx64.dll
Report Id: fbfb1857-4e65-11e3-9c6b-0015830cbfeb

Anyway, I reopened Rhino, and there was no prompt about AutoSaved files, and when I opened the file I had been working on, it was back at the original that I had copied from, with none of my edits.

I then looked at the Help info for AutoSave, and found the AutoSave directory. It contained three files, two of which were:
RhinoAutosave.3dm
ClampHead_RhinoAutosave(11688).3dm

RhinoAutosave.3dm and the other file had modified dates over three months old, but ClampHead_RhinoAutosave(11688).3dm was current, and when I opened it directly with Rhino, it had all my edits in it. I then saved it over the top of ClampHead.3dm, and was able to continue.

The AutoSave files are on the local C:\ drive, while the others are on a network share.

I’ve tried closing and opening Rhino several times, and it doesn’t prompt about AutoSaved files at all, although the files remain in the directory, whether Rhino is open or closed.

Does anyone know what is happening here?


(Pascal Golay) #2

@JohnM do you have an idea about this?

thanks,

-Pascal


(John Morse) #3

This is a total geek response which is why I am making it directly to you.
I just looked at the code and near as I can tell this is what happens:

  1. Autosave cicks in and writes a save file in the AutoSave folder
    appending the main Rhino window handle to the end of the file name for
    example: ClampHead_RhinoAutosave(11688).3dm] where “ClampHead” is the file
    name and 11688 is the window handle of the Rhino session used to save the
    file, this will keep multiple Rhino sessions from writing the same file.
  2. When Auto-save kicks in it writes the name of the save file being
    written to the HKEY_CURRENT_USER\Software\McNeel\Rhinoceros\5.0x64\Scheme:
    Default\Options\AutoSave registry key.

When Rhino is closing it will remove any AutoSave regstiry entries ending
with the running Rhino’s window handle. The next time rhino is started it
iterates the AutoSave registry entry and gets a list of AutoSave file
names, it sucks the window handle from the end of the file name and checks
to see if there is currently a window with that handle and if it is in fact
a Rhino window (Windows will recycle unused window handles). If there is a
file name and no Rhino session found with that window handle it is suppose
to prompt the user to recover the file. If the file is still in the folder
my guess would be something happened and the file name got removed from the
registry or there is a rogue Rhino running that is still using the 11688
window handle.

Call me when this does not make sense :slight_smile:


(Pascal Golay) #4

@JohnM , So I guess one thing to check is whether there is another Rhino running but not showing? Maybe Rhino did not actually fully close when it said it did?
@David, just in case I made a valid guess just there, if you see this again can you check Windows TaskManager > Processes page and see if there is a Rhno.Exe running behind the scenes?

-Pascal


#5

This explains why Rhino doesn’t prompt for AutoSave recovery although there are files in the AutoSave directory - the AutoSave registry entry is empty.
Perhaps when Rhino crashed, it removed the registry entry on the way out, but not the file?

Windows has installed patches and rebooted, so no sign of any duplicate Rhino process now.
I did make a minor file modification and watch the AutoSave file and registry entry appear, and subsequent removal on exiting Rhino, so that works correctly.


(Declan Halpin) #6

Hi guys,

I have been having a similar problem, in fact Rhino seems to never prompt for Autosave recovery anymore. It does put a crashdump.exe on the desktop, but there is no prompt whatsoever at the beginning of the next Rhino instance.

I seem to remember a prompt once or twice that was somewhat different from what I’m used to. If I remember correctly, it had a slightly different wording, but implied the normal, “this is your only chance to save this file”, but it automatically reverted the filename back to the original filename (sans crashdump). It definitely used the word “Recover.” I thought it was cool, but then I never saw it again, despite a crash or two since (RhinoGold related). I have to manually open the from the Autosave folder.

dh


(Pascal Golay) #7

@JohnM - fyi - more to look into I guess.


(Declan Halpin) #8

sorry - should’ve mentioned: Win8, 64 Bit.