mercurial/revlogutils/nodemap.py
changeset 44697 0792ad55e533
parent 44696 ed475420e0af
child 44745 b4537125eb3c
equal deleted inserted replaced
44696:ed475420e0af 44697:0792ad55e533
    46     docket.tip_node = pdata[offset : offset + tip_node_size]
    46     docket.tip_node = pdata[offset : offset + tip_node_size]
    47     docket.data_length = data_length
    47     docket.data_length = data_length
    48     docket.data_unused = data_unused
    48     docket.data_unused = data_unused
    49 
    49 
    50     filename = _rawdata_filepath(revlog, docket)
    50     filename = _rawdata_filepath(revlog, docket)
    51     use_mmap = revlog.opener.options.get("exp-persistent-nodemap.mmap")
    51     use_mmap = revlog.opener.options.get(b"exp-persistent-nodemap.mmap")
    52     try:
    52     try:
    53         with revlog.opener(filename) as fd:
    53         with revlog.opener(filename) as fd:
    54             if use_mmap:
    54             if use_mmap:
    55                 data = util.buffer(util.mmapread(fd, data_length))
    55                 data = util.buffer(util.mmapread(fd, data_length))
    56             else:
    56             else:
   130         raise error.ProgrammingError(msg)
   130         raise error.ProgrammingError(msg)
   131 
   131 
   132     can_incremental = util.safehasattr(revlog.index, "nodemap_data_incremental")
   132     can_incremental = util.safehasattr(revlog.index, "nodemap_data_incremental")
   133     ondisk_docket = revlog._nodemap_docket
   133     ondisk_docket = revlog._nodemap_docket
   134     feed_data = util.safehasattr(revlog.index, "update_nodemap_data")
   134     feed_data = util.safehasattr(revlog.index, "update_nodemap_data")
   135     use_mmap = revlog.opener.options.get("exp-persistent-nodemap.mmap")
   135     use_mmap = revlog.opener.options.get(b"exp-persistent-nodemap.mmap")
   136 
   136 
   137     data = None
   137     data = None
   138     # first attemp an incremental update of the data
   138     # first attemp an incremental update of the data
   139     if can_incremental and ondisk_docket is not None:
   139     if can_incremental and ondisk_docket is not None:
   140         target_docket = revlog._nodemap_docket.copy()
   140         target_docket = revlog._nodemap_docket.copy()