##// END OF EJS Templates
revlog: change _inline from a function to a variable
Matt Mackall -
r4982:9672e3c4 default
parent child Browse files
Show More
@@ -460,13 +460,14 b' class revlog(object):'
460 460 raise RevlogError(_("index %s unknown format %d")
461 461 % (self.indexfile, fmt))
462 462 self.version = v
463 self._inline = v & REVLOGNGINLINEDATA
463 464 self.nodemap = {nullid: nullrev}
464 465 self.index = []
465 466 self._io = revlogio()
466 467 if self.version == REVLOGV0:
467 468 self._io = revlogoldio()
468 469 if i:
469 self.index, self.nodemap = self._io.parseindex(f, st, self._inline())
470 self.index, self.nodemap = self._io.parseindex(f, st, self._inline)
470 471 # add the magic null revision at -1
471 472 self.index.append((0, 0, 0, -1, -1, -1, -1, nullid))
472 473
@@ -488,8 +489,6 b' class revlog(object):'
488 489 self.nodemap.p.loadmap()
489 490 self.nodemap = self.nodemap.p.map
490 491
491 def _inline(self):
492 return self.version & REVLOGNGINLINEDATA
493 492 def tip(self):
494 493 return self.node(len(self.index) - 2)
495 494 def count(self):
@@ -844,7 +843,7 b' class revlog(object):'
844 843
845 844 def chunk(self, rev, df=None, cachelen=4096):
846 845 start, length = self.start(rev), self.length(rev)
847 inline = self._inline()
846 inline = self._inline
848 847 if inline:
849 848 start += (rev + 1) * self._io.size
850 849 end = start + length
@@ -899,7 +898,7 b' class revlog(object):'
899 898 rev = self.rev(node)
900 899 base = self.base(rev)
901 900
902 if self._inline():
901 if self._inline:
903 902 # we probably have the whole chunk cached
904 903 df = None
905 904 else:
@@ -929,7 +928,7 b' class revlog(object):'
929 928 return text
930 929
931 930 def checkinlinesize(self, tr, fp=None):
932 if not self._inline():
931 if not self._inline:
933 932 return
934 933 if not fp:
935 934 fp = self.opener(self.indexfile, 'r')
@@ -958,6 +957,7 b' class revlog(object):'
958 957 df.close()
959 958 fp = self.opener(self.indexfile, 'w', atomictemp=True)
960 959 self.version &= ~(REVLOGNGINLINEDATA)
960 self._inline = False
961 961 if self.count():
962 962 x = self.index[0]
963 963 e = struct.pack(indexformatng, *x)[4:]
@@ -987,7 +987,7 b' class revlog(object):'
987 987 d - an optional precomputed delta
988 988 """
989 989 dfh = None
990 if not self._inline():
990 if not self._inline:
991 991 dfh = self.opener(self.datafile, "a")
992 992 ifh = self.opener(self.indexfile, "a+")
993 993 return self._addrevision(text, transaction, link, p1, p2, d, ifh, dfh)
@@ -1030,7 +1030,7 b' class revlog(object):'
1030 1030 if not curr:
1031 1031 entry = struct.pack(versionformat, self.version) + entry[4:]
1032 1032
1033 if not self._inline():
1033 if not self._inline:
1034 1034 transaction.add(self.datafile, offset)
1035 1035 transaction.add(self.indexfile, curr * len(entry))
1036 1036 if data[0]:
@@ -1118,7 +1118,7 b' class revlog(object):'
1118 1118 ifh = self.opener(self.indexfile, "a+")
1119 1119 ifh.seek(0, 2)
1120 1120 transaction.add(self.indexfile, ifh.tell(), self.count())
1121 if self._inline():
1121 if self._inline:
1122 1122 dfh = None
1123 1123 else:
1124 1124 transaction.add(self.datafile, end)
@@ -1167,7 +1167,7 b' class revlog(object):'
1167 1167 text = self.patches(text, [delta])
1168 1168 chk = self._addrevision(text, transaction, link, p1, p2, None,
1169 1169 ifh, dfh)
1170 if not dfh and not self._inline():
1170 if not dfh and not self._inline:
1171 1171 # addrevision switched from inline to conventional
1172 1172 # reopen the index
1173 1173 dfh = self.opener(self.datafile, "a")
@@ -1180,11 +1180,11 b' class revlog(object):'
1180 1180 link, self.rev(p1), self.rev(p2), node)
1181 1181 self.index.insert(-1, e)
1182 1182 self.nodemap[node] = r
1183 if self._inline():
1183 if self._inline:
1184 1184 ifh.write(struct.pack(indexformatng, *e))
1185 1185 ifh.write(cdelta)
1186 1186 self.checkinlinesize(transaction, ifh)
1187 if not self._inline():
1187 if not self._inline:
1188 1188 dfh = self.opener(self.datafile, "a")
1189 1189 ifh = self.opener(self.indexfile, "a")
1190 1190 else:
@@ -1221,7 +1221,7 b' class revlog(object):'
1221 1221
1222 1222 # first truncate the files on disk
1223 1223 end = self.start(rev)
1224 if not self._inline():
1224 if not self._inline:
1225 1225 df = self.opener(self.datafile, "a")
1226 1226 df.truncate(end)
1227 1227 end = rev * self._io.size
@@ -1261,7 +1261,7 b' class revlog(object):'
1261 1261 s = self._io.size
1262 1262 i = actual / s
1263 1263 di = actual - (i * s)
1264 if self._inline():
1264 if self._inline:
1265 1265 databytes = 0
1266 1266 for r in xrange(self.count()):
1267 1267 databytes += self.length(r)
General Comments 0
You need to be logged in to leave comments. Login now