mercurial/revlog.py
changeset 47136 84b176ad2860
parent 47134 1b33e38d4b6d
child 47139 f58a13c52726
equal deleted inserted replaced
47135:1352cc14cce2 47136:84b176ad2860
   713 
   713 
   714     def length(self, rev):
   714     def length(self, rev):
   715         return self.index[rev][1]
   715         return self.index[rev][1]
   716 
   716 
   717     def sidedata_length(self, rev):
   717     def sidedata_length(self, rev):
   718         if self.version & 0xFFFF != REVLOGV2:
   718         if not self.hassidedata:
   719             return 0
   719             return 0
   720         return self.index[rev][9]
   720         return self.index[rev][9]
   721 
   721 
   722     def rawsize(self, rev):
   722     def rawsize(self, rev):
   723         """return the length of the uncompressed text for a given revision"""
   723         """return the length of the uncompressed text for a given revision"""
  1769 
  1769 
  1770         # ``rawtext`` is the text as stored inside the revlog. Might be the
  1770         # ``rawtext`` is the text as stored inside the revlog. Might be the
  1771         # revision or might need to be processed to retrieve the revision.
  1771         # revision or might need to be processed to retrieve the revision.
  1772         rev, rawtext, validated = self._rawtext(node, rev, _df=_df)
  1772         rev, rawtext, validated = self._rawtext(node, rev, _df=_df)
  1773 
  1773 
  1774         if self.version & 0xFFFF == REVLOGV2:
  1774         if self.hassidedata:
  1775             if rev is None:
  1775             if rev is None:
  1776                 rev = self.rev(node)
  1776                 rev = self.rev(node)
  1777             sidedata = self._sidedata(rev)
  1777             sidedata = self._sidedata(rev)
  1778         else:
  1778         else:
  1779             sidedata = {}
  1779             sidedata = {}
  2244 
  2244 
  2245         revinfo = _revisioninfo(node, p1, p2, btext, textlen, cachedelta, flags)
  2245         revinfo = _revisioninfo(node, p1, p2, btext, textlen, cachedelta, flags)
  2246 
  2246 
  2247         deltainfo = deltacomputer.finddeltainfo(revinfo, fh)
  2247         deltainfo = deltacomputer.finddeltainfo(revinfo, fh)
  2248 
  2248 
  2249         if sidedata and self.version & 0xFFFF == REVLOGV2:
  2249         if sidedata and self.hassidedata:
  2250             serialized_sidedata = sidedatautil.serialize_sidedata(sidedata)
  2250             serialized_sidedata = sidedatautil.serialize_sidedata(sidedata)
  2251             sidedata_offset = offset + deltainfo.deltalen
  2251             sidedata_offset = offset + deltainfo.deltalen
  2252         else:
  2252         else:
  2253             serialized_sidedata = b""
  2253             serialized_sidedata = b""
  2254             # Don't store the offset if the sidedata is empty, that way
  2254             # Don't store the offset if the sidedata is empty, that way
  3070             )
  3070             )
  3071 
  3071 
  3072         return d
  3072         return d
  3073 
  3073 
  3074     def rewrite_sidedata(self, helpers, startrev, endrev):
  3074     def rewrite_sidedata(self, helpers, startrev, endrev):
  3075         if self.version & 0xFFFF != REVLOGV2:
  3075         if not self.hassidedata:
  3076             return
  3076             return
  3077         # inline are not yet supported because they suffer from an issue when
  3077         # inline are not yet supported because they suffer from an issue when
  3078         # rewriting them (since it's not an append-only operation).
  3078         # rewriting them (since it's not an append-only operation).
  3079         # See issue6485.
  3079         # See issue6485.
  3080         assert not self._inline
  3080         assert not self._inline