System Restore Causes Data Loss - Developers BEWARE

G

Guest

I applied a System.Data.dll hotfix today and it did not solve the problem so
I went to a restore point from yesterday. It restored and rebooted. I then
went back to work on a C# Windows application in Visual Studio. Out of habit,
I verified that all of my source files were in sync with SourceSafe.

Lo and behold, the files on my disk were older than those I had checked in
late yesterday. What does this mean? It means that System Restore includes
..cs and who knows what else in the list of files that it feels free to
clobber.

How many bugs have been reintroduced and how much work has been lost to this
problem?!?!?!

To round out this report, I undid the last restore, and suddenly my files
were back in sync with SourceSafe. I still have a useless hotfix (hopefully
it is *only* useless - KB 887549 ) but at least I have all of my source and
who knows what files back.

Finally, I followed the Microsoft web site to try to report this BUG and got
some blithering idiot who insisted that I needed to pay $35 to report it -
and that besides, the lines were down and I would have to call back. What
crap!

Now, I can go back to trying to develop a workaround for
"System.Data.VersionNotFoundException" - yet another Microsoft bug that I
can't get any support for.

David Rogers
Fred Hutchinson Cancer Research Center
 
B

Bert Kinney

Hi David,
I applied a System.Data.dll hotfix today and it did not solve the
problem so I went to a restore point from yesterday. It restored and
rebooted. I then went back to work on a C# Windows application in
Visual Studio. Out of habit, I verified that all of my source files
were in sync with SourceSafe.

Lo and behold, the files on my disk were older than those I had
checked in late yesterday. What does this mean? It means that System
Restore includes .cs and who knows what else in the list of files
that it feels free to clobber.

Yes, System Restore monitors .cs file types. To work around this, keep
any of these files in the My Documents folder. SR will not touch
anything in this folder.

List of Files and Folders System Restore Monitors
http://bertk.mvps.org/html/filesfolders.html

Once the .cs files are moved, and backed up, reapply the patch.

Create a new restore point then try restoring back to it. Report back
with you finding.
 
G

Guest

Thanks, this was enlightening. Do you know if this "filelist" can be
customized? Are the inclusions and/or exclusions only for backup or are they
also examined during a restore operation?

If the latter, since what I want to do is to go to a previous restore point
without munging any code files, I could just remove the include for "CS" - or
perhaps add a directory exclusion for "C:\MyProject" - which is where my
source tree resides.

Or... Is there any possible interaction with
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\BackupRestore\KeysNotToRestore?

Perhaps I could add my project directory there? AS in:
"Davids Project Directory"
REG_MULTI_SZ
"C:\MyProject\* /s"

David
 
B

Bert Kinney

David said:
Thanks, this was enlightening. Do you know if this "filelist" can be
customized?

Microsoft advises against customizing filelist.xml. I don't know if it
would work and had not tested it.
Are the inclusions and/or exclusions only for backup or
are they also examined during a restore operation?

System Restore monitors all files in the "Included" section of
filelist.xml. Each of these files are monitored while Windows is running
and before a change is made to any one of these files a copy is made and
stored in a folder located in the System Volume Information folder. At
that time a log is created reflecting the changes made.
If the latter, since what I want to do is to go to a previous restore
point without munging any code files, I could just remove the include
for "CS" - or perhaps add a directory exclusion for "C:\MyProject" -
which is where my source tree resides.

Or... Is there any possible interaction with
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\BackupRestore\KeysNotToRestore?

Perhaps I could add my project directory there? AS in:
"Davids Project Directory"
REG_MULTI_SZ
"C:\MyProject\* /s"

I have not tested either of these scenarios, so I can not say either
way.

It may be a better solution would be to change the path of the .cs files
to the My Documents folder.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top