Ticket #1170: spans.py.diff

File spans.py.diff, 677 bytes (added by davidsarah, at 2010-08-16T21:54:35Z)

Short-term hack to test for asymptotic inefficiency of DataSpans?.get_spans

  • .8/src/allmydata/util/spans.py

    old new  
    255255
    256256    def get_spans(self):
    257257        """Return a Spans object with a bit set for each byte I hold"""
    258         return Spans([(start, len(data)) for (start,data) in self.spans])
     258        # XXX This is not the right long-term fix, because it depends on an undocumented
     259        # invariant of Spans.
     260        s = Spans()
     261        s._spans = [(start, len(data)) for (start,data) in self.spans]
     262        s._check()
     263        return s
    259264
    260265    def assert_invariants(self):
    261266        if not self.spans: