You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
print>>sys.stderr, "%s: Retrieved %i commits from ObjectStore in %g s ( %f commits / s )"% (type(repo.odb), nc, elapsed, nc/elapsed)
31
+
32
+
# GET TREES
33
+
# walk all trees of all commits
34
+
st=time()
35
+
blobs_per_commit=list()
36
+
nt=0
37
+
forcommitincommits:
38
+
tree=commit.tree
39
+
blobs=list()
40
+
foritemintree.traverse():
41
+
nt+=1
42
+
ifitem.type=='blob':
43
+
blobs.append(item)
44
+
# direct access for speed
45
+
# END while trees are there for walking
46
+
blobs_per_commit.append(blobs)
47
+
# END for each commit
48
+
elapsed=time() -st
49
+
50
+
print>>sys.stderr, "%s: Retrieved %i objects from %i commits in %g s ( %f objects / s )"% (type(repo.odb), nt, len(commits), elapsed, nt/elapsed)
51
+
52
+
# GET BLOBS
53
+
st=time()
54
+
nb=0
55
+
too_many=15000
56
+
data_bytes=0
57
+
forblob_listinblobs_per_commit:
58
+
forblobinblob_list:
59
+
data_bytes+=len(blob.data_stream.read())
60
+
# END for each blobsha
61
+
nb+=len(blob_list)
62
+
ifnb>too_many:
63
+
break
64
+
# END for each bloblist
65
+
elapsed=time() -st
66
+
67
+
print>>sys.stderr, "%s: Retrieved %i blob (%i KiB) and their data in %g s ( %f blobs / s, %f KiB / s )"% (type(repo.odb), nb, data_bytes/1000, elapsed, nb/elapsed, (data_bytes/1000) /elapsed)
0 commit comments