[Box Backup] PATCH: Fix compile on FC3 (was Re: Some problems)

Ben Summers boxbackup@fluffy.co.uk
Fri, 12 Nov 2004 17:58:38 +0000


On 12 Nov 2004, at 16:40, Martin Ebourne wrote:

> Ben Summers <ben@fluffy.co.uk> wrote:
>> I want to sort out compilation on Fedora 3 (downloading now!) then fix
>> a couple of minor problems, then I'll do another preview release.
>
> Didn't realise it was broken!
>
> Anyhow, here's a patch to fix it.

Very kind of you, applied!

>  I'm sure installing FC3 will still be fun
> though.

Hmmm. Yet another variant of Linux, but of course, now you can't get a 
basic text only installation unless you download all four CDs. 
Wonderful.

>
> Compiled and checked tests on i686, all ok.

Great!

>
> Side note: I've mostly done the solaris port. Turned out to be a lot 
> more
> than I'd bargained for. So far tests in common, compress, crypto, 
> raidfile,
> and basicserver have passed. Now trying to solve a fail in 
> backupstore. This
> test at testbackupstore.cpp:1276 fails sometimes:
>
> TEST_THAT(dir.GetAttributesModTime() == 329483209443598LL);
>
> If it does then the next test at 1278 also fails:
>
> TEST_THAT(dir.GetAttributes() == attrtest);
>
> Either way, these tests at 1354-5 always fail:
>
> TEST_THAT(foundCurrent);
> TEST_THAT(foundOld);
>
> Looks like some data is getting corrupted during the protocol transfer 
> or
> something. I've not been able to find a good way of debugging this 
> after an
> hour or so. Any ideas?

Since the query runs on a different connection to the one which made 
the change, this suggests that the cache on the readonly connection 
isn't noticing the change to the file on disc.

This is probably down to the resolution of file times, which is what is 
used to detect these changes. Look in RaidFileUtil::RaidFileExists() in 
lib/raidfile/RaidFileUtil.cpp and try enabling the PLATFORM_LINUX code. 
It's not nice, but then, Linux isn't nice either.

Suggestions for a better way of achieving the same thing would be 
gratefully received. In real life use this is unlikely to be a big 
problem, which is why I haven't done too much work on making it better 
so far.


>  Are there tests in any of the other directories I
> should run before this one?

You are trying them in a sensible order. Thanks for doing all this work 
for me. :-)

Ben