[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[rdiff-backup-users] Fatal Error: Mirror metadata not found - answer
From: |
viczh |
Subject: |
[rdiff-backup-users] Fatal Error: Mirror metadata not found - answer |
Date: |
Fri, 19 Mar 2004 03:28:54 -0500 (EST) |
Hi,
my name is Victor Joukov and I started porting rdiff-backup to native Windows
Python, no Cygwin etc.
I found that rdiff-backup is written mainly to Unix API, and relies on stuff
that even when present in Python/Windows, usually
not implemented (many fields of stat structure are zero or bogus)
Up to now, I managed to make a local backup by modifying release 0.13.4. It
lacks any permission/ACL/user/group stuff,
despite Windows has almost all of these structures. When trying to compare
backup and original, I faced with the same problem
David Kempe did in February - I got misterious message - see subject. I believe
the answer is in incorrect code in metadata.py, line 407.
When you try to find an appropriate point in time it is pointless to try to
find EXACT match, you should be extremely lucky ;-)
So if you change == into <= in the mentioned line, so that it reads
if rp.getinctime() <= time:
cls._rp = rp
...
etc. it will work. I though need somebody to verify my hypothesis - I am new to
the code, and it is not too small to figure out for sure.
I have couple notes about other parts of the system in regard to
Windows. First, to treat Windows filesystem as just case insensitive
and escape every uppercase letter leads to complete visual garbage
in backup directory if your original files had uppercases. We'd
better check for name clashes on backup system, because Windows
filesystem preserves the case. Second, why to use such long, unnesessarily
detailed (timezone?) and Windows unfriendly timestamp?
It contains several colons AND uppercase T which is escaped!
Can we just translate into UTC and use something like
current_mirror.20040319082117.data
which is MUCH MORE readable than what is ACTUALLY produced on my
computer:
current_mirror.2004-03-19;08402;05821;05817-06;05800.data
It definitely should read old escaped format (or unescaped - depends
on your platform) for compatibility.
So, I am now trying to solve uid/gid/chown/inode and all other Unix
stuff. It all should work eventually on NTFS at least.
Hope this helps,
sorry for long post,
Victor.
_______________________________________________
No banners. No pop-ups. No kidding.
Introducing My Way - http://www.myway.com
- [rdiff-backup-users] Fatal Error: Mirror metadata not found - answer,
viczh <=