Ticket #1045: only-cache-last-seen-seqnum.darcs.patch

File only-cache-last-seen-seqnum.darcs.patch, 4.3 KB (added by davidsarah, at 2010-10-23T01:27:27Z)

mutable/common.py: make the ResponseCache? only cache shares with the last-seen seqnum for a given storage index. No unit tests; do not apply to trunk yet.

Line 
11 patch for repository davidsarah@dev.allmydata.org:/home/darcs/tahoe/trunk:
2
3Sat Oct 23 02:00:43 GMT Daylight Time 2010  david-sarah@jacaranda.org
4  * mutable/common.py: make the ResponseCache only cache shares with the last-seen seqnum for a given storage index. refs #1045
5
6New patches:
7
8[mutable/common.py: make the ResponseCache only cache shares with the last-seen seqnum for a given storage index. refs #1045
9david-sarah@jacaranda.org**20101023010043
10 Ignore-this: d162d68cf78ee16fa9fa34ce79a78a06
11] {
12hunk ./src/allmydata/mutable/common.py 73
13 
14     def __init__(self):
15         self.cache = DictOfSets()
16+        self.seqnum = None
17 
18     def _clear(self):
19hunk ./src/allmydata/mutable/common.py 76
20-        # used by unit tests
21+        # also used by unit tests
22         self.cache = DictOfSets()
23 
24     def _does_overlap(self, x_start, x_length, y_start, y_length):
25hunk ./src/allmydata/mutable/common.py 112
26         return True
27 
28     def add(self, verinfo, shnum, offset, data, timestamp):
29+        seqnum = verinfo[0]
30+        if seqnum > self.seqnum:
31+            self._clear()
32+            self.seqnum = seqnum
33         index = (verinfo, shnum)
34         self.cache.add(index, (offset, data, timestamp) )
35 
36}
37
38Context:
39
40[doc: add explanation of the motivation for the surprising and awkward API to erasure coding
41zooko@zooko.com**20101015060202
42 Ignore-this: 428913ff6e1bf5b393deffb1f20b949b
43]
44[setup: catch and log ValueError from locale.getdefaultlocale() in show-tool-versions.py
45zooko@zooko.com**20101015054440
46 Ignore-this: 827d91490562c32ed7cf6526dfded773
47 I got a bug report from Mathias Baert showing that locale.getdefaultlocale() raises an exception on his Mac OS X system. Heh.
48]
49[docs: update how-to-make-a-release doc with a few tweaks from the 1.8.0 process
50zooko@zooko.com**20101015054413
51 Ignore-this: ca5e9478531a3393792ae283239549dd
52]
53[docs: update NEWS ref: #1216
54zooko@zooko.com**20101015053719
55 Ignore-this: 2e0b92e4145d667cdf075e64b7965530
56]
57[docs: fix tab-vs-spaces, make some CLI examples <tt>/"literal", wrap some to
58Brian Warner <warner@lothar.com>**20101015060606
59 Ignore-this: eae08bdf0afb19a2fbf41c31e70a8122
60 80-cols, remove spurious whitespace. Add rst2html.py rule to Makefile.
61]
62[docs: add Peter Secor, Shawn Willden, and Terrell Russell as signatories to docs/backdoors.rst
63zooko@zooko.com**20101015053242
64 Ignore-this: c77adf819d664f673e17c4aaeb353f33
65]
66[docs: convert all .txt docs to .rst thanks to Ravi Pinjala
67zooko@zooko.com**20101015052913
68 Ignore-this: 178a5122423189ecfc45b142314a78ec
69 fixes #1225
70]
71[docs: add statement on our refusal to insert backdoors
72zooko@zooko.com**20101006051147
73 Ignore-this: 644d308319a7b80c4434bdff9760404a
74]
75[setup: add --multi-version to the "setup.py develop" command-line
76zooko@zooko.com**20101005182350
77 Ignore-this: 709155cc21caff29826b8d41a8c8d63d
78 fixes #530. I earlier tried this twice (see #530 for history) and then twice rolled it back due to some problems that arose. However, I didn't write down what the problems were in enough detail on the ticket that I can tell today whether those problems are still issues, so here goes the third attempt. (I did write down on the ticket that it would not create site.py or .pth files in the target directory with --multi-version mode, but I didn't explain why *that* was a problem.)
79]
80[setup: use execfile to access _auto_deps.py in its proper location of src/allmydata/ instead of copying it into place when setup.py is executed
81zooko@zooko.com**20100906055714
82 Ignore-this: c179b42672d775580afad40121f86812
83]
84[trivial: M-x whitespace-cleanup
85zooko@zooko.com**20100903144712
86 Ignore-this: 1bb764d11ac69b4a35ea091cfb13158a
87]
88[minor: remove unused interface declaration, change allmydata.org to tahoe-lafs.org in email address, fix wording in relnotes.txt
89zooko@zooko.com**20100930153708
90 Ignore-this: a452969228afed2774de375e29fa3048
91]
92[immutable/repairer.py: don't use the default happiness setting when repairing
93Kevan Carstensen <kevan@isnotajoke.com>**20100927200102
94 Ignore-this: bd704d9744b970849da8d46a16b8089a
95]
96[NEWS: note dependency updates to pycryptopp and pycrypto.
97david-sarah@jacaranda.org**20100924191207
98 Ignore-this: eeaf5c9c9104f24c450c2ec4482ac1ee
99]
100[TAG allmydata-tahoe-1.8.0
101zooko@zooko.com**20100924021631
102 Ignore-this: 494ca0a885c5e20c883845fc53e7ab5d
103]
104Patch bundle hash:
105d8bbc47e8e4b663c182d2d23e030361cb7703371