mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-06-06 09:31:43 +00:00
mutable/retrieve.py: stop reaching into private MutableFileNode attributes
This commit is contained in:
parent
aa3caf812d
commit
47cba4b51a
@ -151,6 +151,8 @@ class MutableFileNode:
|
|||||||
self._encprivkey = encprivkey
|
self._encprivkey = encprivkey
|
||||||
def _add_to_cache(self, verinfo, shnum, offset, data, timestamp):
|
def _add_to_cache(self, verinfo, shnum, offset, data, timestamp):
|
||||||
self._cache.add(verinfo, shnum, offset, data, timestamp)
|
self._cache.add(verinfo, shnum, offset, data, timestamp)
|
||||||
|
def _read_from_cache(self, verinfo, shnum, offset, length):
|
||||||
|
return self._cache.read(verinfo, shnum, offset, length)
|
||||||
|
|
||||||
def get_write_enabler(self, peerid):
|
def get_write_enabler(self, peerid):
|
||||||
assert len(peerid) == 20
|
assert len(peerid) == 20
|
||||||
|
@ -83,9 +83,9 @@ class Retrieve:
|
|||||||
|
|
||||||
def __init__(self, filenode, servermap, verinfo, fetch_privkey=False):
|
def __init__(self, filenode, servermap, verinfo, fetch_privkey=False):
|
||||||
self._node = filenode
|
self._node = filenode
|
||||||
assert self._node._pubkey
|
assert self._node.get_pubkey()
|
||||||
self._storage_index = filenode.get_storage_index()
|
self._storage_index = filenode.get_storage_index()
|
||||||
assert self._node._readkey
|
assert self._node.get_readkey()
|
||||||
self._last_failure = None
|
self._last_failure = None
|
||||||
prefix = si_b2a(self._storage_index)[:5]
|
prefix = si_b2a(self._storage_index)[:5]
|
||||||
self._log_number = log.msg("Retrieve(%s): starting" % prefix)
|
self._log_number = log.msg("Retrieve(%s): starting" % prefix)
|
||||||
@ -95,13 +95,13 @@ class Retrieve:
|
|||||||
self._bad_shares = set()
|
self._bad_shares = set()
|
||||||
|
|
||||||
self.servermap = servermap
|
self.servermap = servermap
|
||||||
assert self._node._pubkey
|
assert self._node.get_pubkey()
|
||||||
self.verinfo = verinfo
|
self.verinfo = verinfo
|
||||||
# during repair, we may be called upon to grab the private key, since
|
# during repair, we may be called upon to grab the private key, since
|
||||||
# it wasn't picked up during a verify=False checker run, and we'll
|
# it wasn't picked up during a verify=False checker run, and we'll
|
||||||
# need it for repair to generate the a new version.
|
# need it for repair to generate the a new version.
|
||||||
self._need_privkey = fetch_privkey
|
self._need_privkey = fetch_privkey
|
||||||
if self._node._privkey:
|
if self._node.get_privkey():
|
||||||
self._need_privkey = False
|
self._need_privkey = False
|
||||||
|
|
||||||
self._status = RetrieveStatus()
|
self._status = RetrieveStatus()
|
||||||
@ -198,8 +198,8 @@ class Retrieve:
|
|||||||
got_from_cache = False
|
got_from_cache = False
|
||||||
datavs = []
|
datavs = []
|
||||||
for (offset, length) in readv:
|
for (offset, length) in readv:
|
||||||
(data, timestamp) = self._node._cache.read(self.verinfo, shnum,
|
(data, timestamp) = self._node._read_from_cache(self.verinfo, shnum,
|
||||||
offset, length)
|
offset, length)
|
||||||
if data is not None:
|
if data is not None:
|
||||||
datavs.append(data)
|
datavs.append(data)
|
||||||
if len(datavs) == len(readv):
|
if len(datavs) == len(readv):
|
||||||
@ -395,7 +395,7 @@ class Retrieve:
|
|||||||
self._status.timings["fetch"] = elapsed
|
self._status.timings["fetch"] = elapsed
|
||||||
|
|
||||||
d = defer.maybeDeferred(self._decode)
|
d = defer.maybeDeferred(self._decode)
|
||||||
d.addCallback(self._decrypt, IV, self._node._readkey)
|
d.addCallback(self._decrypt, IV, self._node.get_readkey())
|
||||||
d.addBoth(self._done)
|
d.addBoth(self._done)
|
||||||
return d # purely for test convenience
|
return d # purely for test convenience
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user