duplicity-talk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Duplicity-talk] Re: Macports & Duplicity 0.4.10


From: Kenneth Loafman
Subject: Re: [Duplicity-talk] Re: Macports & Duplicity 0.4.10
Date: Mon, 31 Mar 2008 11:03:21 -0500
User-agent: Thunderbird 2.0.0.12 (X11/20080227)

Darik Horn wrote:
>> and it was causing regression to break.
> 
> On which regression test was it breaking?
> 
> I am interested in properly fixing this glitch, but run-all-tests.sh
> currently reports "OK" for me.
> 
> 
>> If you need the prefix to list() the file, then you
>> need to add the prefix when you put()/get() the file
>> so it will be there when you list it.
> 
> The +'d' in list() is used as a filter, so it does not compose a key
> name.  The behavior of file_naming.py should always result in the 'd'
> appearing in the remote_filename parameter to put() and get().
> 
> I added this code primarily to reduce 500 and 503 errors from Amazon S3
> on large buckets, and secondarily as a work-around for an early boto
> bug.  The duplicity retry mechanism gets choked when a bucket goes past
>  past 100,000 keys (ish).
> 
> Relying on the stable behavior of file_naming.py is unwholesome, but my
> environment is large enough to need the optimization.  (I should have
> commented it, so my bad.)

I misspoke earlier, it was not in verify, it was list that fails (see
below).  The fix will probably have to be to the test harness, and not
to the code itself.

You are right in the optimization, so what I'm going to do is release a
patch to put the "+ 'd'" back with a warning comment that this is an
optimization that needs to be considered when writing test cases.

Thanks for the explanation.  I should have asked first.

...Ken

======================================================================
FAIL: Test basic backend operations
----------------------------------------------------------------------
Traceback (most recent call last):
  File "backendtest.py", line 24, in test_basic
    self.try_basic(backends.get_backend(self.url_string))
  File "backendtest.py", line 58, in try_basic
    cmp_list([normal_file])
  File "backendtest.py", line 44, in cmp_list
    ("Got list: %s\nWanted: %s\n" % (repr(blist), repr(l)))
AssertionError: Got list: []
Wanted: ['testfile']






reply via email to

[Prev in Thread] Current Thread [Next in Thread]