##// END OF EJS Templates
lfs: access revlog directly...
Gregory Szorc -
r39891:62a53204 default
parent child Browse files
Show More
@@ -115,19 +115,19 b' def _islfs(rlog, node=None, rev=None):'
115 if node is None:
115 if node is None:
116 # both None - likely working copy content where node is not ready
116 # both None - likely working copy content where node is not ready
117 return False
117 return False
118 rev = rlog.rev(node)
118 rev = rlog._revlog.rev(node)
119 else:
119 else:
120 node = rlog.node(rev)
120 node = rlog._revlog.node(rev)
121 if node == nullid:
121 if node == nullid:
122 return False
122 return False
123 flags = rlog.flags(rev)
123 flags = rlog._revlog.flags(rev)
124 return bool(flags & revlog.REVIDX_EXTSTORED)
124 return bool(flags & revlog.REVIDX_EXTSTORED)
125
125
126 def filelogaddrevision(orig, self, text, transaction, link, p1, p2,
126 def filelogaddrevision(orig, self, text, transaction, link, p1, p2,
127 cachedelta=None, node=None,
127 cachedelta=None, node=None,
128 flags=revlog.REVIDX_DEFAULT_FLAGS, **kwds):
128 flags=revlog.REVIDX_DEFAULT_FLAGS, **kwds):
129 # The matcher isn't available if reposetup() wasn't called.
129 # The matcher isn't available if reposetup() wasn't called.
130 lfstrack = self.opener.options.get('lfstrack')
130 lfstrack = self._revlog.opener.options.get('lfstrack')
131
131
132 if lfstrack:
132 if lfstrack:
133 textlen = len(text)
133 textlen = len(text)
@@ -144,7 +144,7 b' def filelogaddrevision(orig, self, text,'
144
144
145 def filelogrenamed(orig, self, node):
145 def filelogrenamed(orig, self, node):
146 if _islfs(self, node):
146 if _islfs(self, node):
147 rawtext = self.revision(node, raw=True)
147 rawtext = self._revlog.revision(node, raw=True)
148 if not rawtext:
148 if not rawtext:
149 return False
149 return False
150 metadata = pointer.deserialize(rawtext)
150 metadata = pointer.deserialize(rawtext)
@@ -157,7 +157,7 b' def filelogrenamed(orig, self, node):'
157 def filelogsize(orig, self, rev):
157 def filelogsize(orig, self, rev):
158 if _islfs(self, rev=rev):
158 if _islfs(self, rev=rev):
159 # fast path: use lfs metadata to answer size
159 # fast path: use lfs metadata to answer size
160 rawtext = self.revision(rev, raw=True)
160 rawtext = self._revlog.revision(rev, raw=True)
161 metadata = pointer.deserialize(rawtext)
161 metadata = pointer.deserialize(rawtext)
162 return int(metadata['size'])
162 return int(metadata['size'])
163 return orig(self, rev)
163 return orig(self, rev)
@@ -57,7 +57,7 b' class filelog(object):'
57 def linkrev(self, rev):
57 def linkrev(self, rev):
58 return self._revlog.linkrev(rev)
58 return self._revlog.linkrev(rev)
59
59
60 # Used by LFS, verify.
60 # Used by verify.
61 def flags(self, rev):
61 def flags(self, rev):
62 return self._revlog.flags(rev)
62 return self._revlog.flags(rev)
63
63
@@ -207,7 +207,7 b' class filelog(object):'
207 def indexfile(self, value):
207 def indexfile(self, value):
208 self._revlog.indexfile = value
208 self._revlog.indexfile = value
209
209
210 # Used by LFS, repo upgrade.
210 # Used by repo upgrade.
211 @property
211 @property
212 def opener(self):
212 def opener(self):
213 return self._revlog.opener
213 return self._revlog.opener
@@ -692,7 +692,7 b" absence doesn't cause an abort.)"
692 > continue
692 > continue
693 > sizes = [fl.rawsize(i) for i in fl]
693 > sizes = [fl.rawsize(i) for i in fl]
694 > texts = [fl.revision(i, raw=True) for i in fl]
694 > texts = [fl.revision(i, raw=True) for i in fl]
695 > flags = [int(fl.flags(i)) for i in fl]
695 > flags = [int(fl._revlog.flags(i)) for i in fl]
696 > hashes = [hash(t) for t in texts]
696 > hashes = [hash(t) for t in texts]
697 > print(' %s: rawsizes=%r flags=%r hashes=%r'
697 > print(' %s: rawsizes=%r flags=%r hashes=%r'
698 > % (name, sizes, flags, hashes))
698 > % (name, sizes, flags, hashes))
General Comments 0
You need to be logged in to leave comments. Login now