in test_download.Corruption.test_each_byte, catalog_detection = True has bitrotted #1559

Open
opened 2011-10-13 01:35:37 +00:00 by davidsarah · 0 comments
davidsarah commented 2011-10-13 01:35:37 +00:00
Owner

[test_download.Corruption.test_each_byte]source:src/allmydata/test/test_download.py@5251#L941 has a disabled option that is described as follows:

        # Setting catalog_detection=True performs an exhaustive test of the
        # Downloader's response to corruption in the lsb of each byte of the
        # 2070-byte share, with two goals: make sure we tolerate all forms of
        # corruption (i.e. don't hang or return bad data), and make a list of
        # which bytes can be corrupted without influencing the download
        # (since we don't need every byte of the share). That takes 50s to
        # run on my laptop and doesn't have any actual asserts, so we don't
        # normally do that.

Setting catalog_detection = True results in the exception:

[ERROR]: allmydata.test.test_download.Corruption.test_each_byte

Traceback (most recent call last):
  File "/home/davidsarah/tahoe/ticket999/src/allmydata/test/test_download.py", line 1019, in _uploaded
    corrupt_me = [(i, "") for i in range(len(self.sh0_orig))]
exceptions.AttributeError: 'Corruption' object has no attribute 'sh0_orig'

This happens also for the 1.8.2 release, so the bitrot must have occurred at some point before that. To close this ticket, either fix or remove the catalog_detection code.

[test_download.Corruption.test_each_byte]source:src/allmydata/test/test_download.py@5251#L941 has a disabled option that is described as follows: ``` # Setting catalog_detection=True performs an exhaustive test of the # Downloader's response to corruption in the lsb of each byte of the # 2070-byte share, with two goals: make sure we tolerate all forms of # corruption (i.e. don't hang or return bad data), and make a list of # which bytes can be corrupted without influencing the download # (since we don't need every byte of the share). That takes 50s to # run on my laptop and doesn't have any actual asserts, so we don't # normally do that. ``` Setting `catalog_detection = True` results in the exception: ``` [ERROR]: allmydata.test.test_download.Corruption.test_each_byte Traceback (most recent call last): File "/home/davidsarah/tahoe/ticket999/src/allmydata/test/test_download.py", line 1019, in _uploaded corrupt_me = [(i, "") for i in range(len(self.sh0_orig))] exceptions.AttributeError: 'Corruption' object has no attribute 'sh0_orig' ``` This happens also for the 1.8.2 release, so the bitrot must have occurred at some point before that. To close this ticket, either fix or remove the `catalog_detection` code.
tahoe-lafs added the
code
minor
defect
1.8.2
labels 2011-10-13 01:35:37 +00:00
tahoe-lafs added this to the undecided milestone 2011-10-13 01:35:37 +00:00
tahoe-lafs added
normal
and removed
minor
labels 2012-04-01 04:38:13 +00:00
tahoe-lafs modified the milestone from undecided to eventually 2012-04-01 04:38:13 +00:00
Sign in to join this conversation.
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Reference: tahoe-lafs/trac-2024-07-25#1559
No description provided.