2133 size = r.length(rev) |
2135 size = r.length(rev) |
2134 if delta == nullrev: |
2136 if delta == nullrev: |
2135 chainlengths.append(0) |
2137 chainlengths.append(0) |
2136 chainbases.append(r.start(rev)) |
2138 chainbases.append(r.start(rev)) |
2137 chainspans.append(size) |
2139 chainspans.append(size) |
2138 numfull += 1 |
2140 if size == 0: |
2139 addsize(size, fullsize) |
2141 numempty += 1 |
|
2142 else: |
|
2143 numfull += 1 |
|
2144 addsize(size, fullsize) |
2140 else: |
2145 else: |
2141 chainlengths.append(chainlengths[delta] + 1) |
2146 chainlengths.append(chainlengths[delta] + 1) |
2142 baseaddr = chainbases[delta] |
2147 baseaddr = chainbases[delta] |
2143 revaddr = r.start(rev) |
2148 revaddr = r.start(rev) |
2144 chainbases.append(baseaddr) |
2149 chainbases.append(baseaddr) |
2145 chainspans.append((revaddr - baseaddr) + size) |
2150 chainspans.append((revaddr - baseaddr) + size) |
2146 addsize(size, deltasize) |
2151 if size == 0: |
2147 if delta == rev - 1: |
2152 numempty += 1 |
2148 numprev += 1 |
2153 else: |
2149 if delta == p1: |
2154 addsize(size, deltasize) |
2150 nump1prev += 1 |
2155 if delta == rev - 1: |
|
2156 numprev += 1 |
|
2157 if delta == p1: |
|
2158 nump1prev += 1 |
|
2159 elif delta == p2: |
|
2160 nump2prev += 1 |
|
2161 elif delta == p1: |
|
2162 nump1 += 1 |
2151 elif delta == p2: |
2163 elif delta == p2: |
2152 nump2prev += 1 |
2164 nump2 += 1 |
2153 elif delta == p1: |
2165 elif delta != nullrev: |
2154 nump1 += 1 |
2166 numother += 1 |
2155 elif delta == p2: |
|
2156 nump2 += 1 |
|
2157 elif delta != nullrev: |
|
2158 numother += 1 |
|
2159 |
2167 |
2160 # Obtain data on the raw chunks in the revlog. |
2168 # Obtain data on the raw chunks in the revlog. |
2161 segment = r._getsegmentforrevs(rev, rev)[1] |
2169 segment = r._getsegmentforrevs(rev, rev)[1] |
2162 if segment: |
2170 if segment: |
2163 chunktype = bytes(segment[0:1]) |
2171 chunktype = bytes(segment[0:1]) |
2174 # Adjust size min value for empty cases |
2182 # Adjust size min value for empty cases |
2175 for size in (datasize, fullsize, deltasize): |
2183 for size in (datasize, fullsize, deltasize): |
2176 if size[0] is None: |
2184 if size[0] is None: |
2177 size[0] = 0 |
2185 size[0] = 0 |
2178 |
2186 |
2179 numdeltas = numrevs - numfull |
2187 numdeltas = numrevs - numfull - numempty |
2180 numoprev = numprev - nump1prev - nump2prev |
2188 numoprev = numprev - nump1prev - nump2prev |
2181 totalrawsize = datasize[2] |
2189 totalrawsize = datasize[2] |
2182 datasize[2] /= numrevs |
2190 datasize[2] /= numrevs |
2183 fulltotal = fullsize[2] |
2191 fulltotal = fullsize[2] |
2184 fullsize[2] /= numfull |
2192 fullsize[2] /= numfull |
2185 deltatotal = deltasize[2] |
2193 deltatotal = deltasize[2] |
2186 if numrevs - numfull > 0: |
2194 if numdeltas > 0: |
2187 deltasize[2] /= numrevs - numfull |
2195 deltasize[2] /= numdeltas |
2188 totalsize = fulltotal + deltatotal |
2196 totalsize = fulltotal + deltatotal |
2189 avgchainlen = sum(chainlengths) / numrevs |
2197 avgchainlen = sum(chainlengths) / numrevs |
2190 maxchainlen = max(chainlengths) |
2198 maxchainlen = max(chainlengths) |
2191 maxchainspan = max(chainspans) |
2199 maxchainspan = max(chainspans) |
2192 compratio = 1 |
2200 compratio = 1 |
2215 fmt2 = dfmtstr(totalsize) |
2223 fmt2 = dfmtstr(totalsize) |
2216 ui.write(('revisions : ') + fmt2 % numrevs) |
2224 ui.write(('revisions : ') + fmt2 % numrevs) |
2217 ui.write((' merges : ') + fmt % pcfmt(nummerges, numrevs)) |
2225 ui.write((' merges : ') + fmt % pcfmt(nummerges, numrevs)) |
2218 ui.write((' normal : ') + fmt % pcfmt(numrevs - nummerges, numrevs)) |
2226 ui.write((' normal : ') + fmt % pcfmt(numrevs - nummerges, numrevs)) |
2219 ui.write(('revisions : ') + fmt2 % numrevs) |
2227 ui.write(('revisions : ') + fmt2 % numrevs) |
|
2228 ui.write((' empty : ') + fmt % pcfmt(numempty, numrevs)) |
2220 ui.write((' full : ') + fmt % pcfmt(numfull, numrevs)) |
2229 ui.write((' full : ') + fmt % pcfmt(numfull, numrevs)) |
2221 ui.write((' deltas : ') + fmt % pcfmt(numdeltas, numrevs)) |
2230 ui.write((' deltas : ') + fmt % pcfmt(numdeltas, numrevs)) |
2222 ui.write(('revision size : ') + fmt2 % totalsize) |
2231 ui.write(('revision size : ') + fmt2 % totalsize) |
2223 ui.write((' full : ') + fmt % pcfmt(fulltotal, totalsize)) |
2232 ui.write((' full : ') + fmt % pcfmt(fulltotal, totalsize)) |
2224 ui.write((' deltas : ') + fmt % pcfmt(deltatotal, totalsize)) |
2233 ui.write((' deltas : ') + fmt % pcfmt(deltatotal, totalsize)) |