##// END OF EJS Templates
verify: call ui.progress()
Augie Fackler -
r10433:767fbacb default
parent child Browse files
Show More
@@ -120,7 +120,9 b' def _verify(repo):'
120 ui.status(_("checking changesets\n"))
120 ui.status(_("checking changesets\n"))
121 seen = {}
121 seen = {}
122 checklog(cl, "changelog", 0)
122 checklog(cl, "changelog", 0)
123 total = len(repo)
123 for i in repo:
124 for i in repo:
125 ui.progress('changelog', i, total=total)
124 n = cl.node(i)
126 n = cl.node(i)
125 checkentry(cl, i, n, seen, [i], "changelog")
127 checkentry(cl, i, n, seen, [i], "changelog")
126
128
@@ -131,11 +133,14 b' def _verify(repo):'
131 filelinkrevs.setdefault(f, []).append(i)
133 filelinkrevs.setdefault(f, []).append(i)
132 except Exception, inst:
134 except Exception, inst:
133 exc(i, _("unpacking changeset %s") % short(n), inst)
135 exc(i, _("unpacking changeset %s") % short(n), inst)
136 ui.progress('changelog', None)
134
137
135 ui.status(_("checking manifests\n"))
138 ui.status(_("checking manifests\n"))
136 seen = {}
139 seen = {}
137 checklog(mf, "manifest", 0)
140 checklog(mf, "manifest", 0)
141 total = len(mf)
138 for i in mf:
142 for i in mf:
143 ui.progress('manifests', i, total=total)
139 n = mf.node(i)
144 n = mf.node(i)
140 lr = checkentry(mf, i, n, seen, mflinkrevs.get(n, []), "manifest")
145 lr = checkentry(mf, i, n, seen, mflinkrevs.get(n, []), "manifest")
141 if n in mflinkrevs:
146 if n in mflinkrevs:
@@ -151,22 +156,31 b' def _verify(repo):'
151 filenodes.setdefault(f, {}).setdefault(fn, lr)
156 filenodes.setdefault(f, {}).setdefault(fn, lr)
152 except Exception, inst:
157 except Exception, inst:
153 exc(lr, _("reading manifest delta %s") % short(n), inst)
158 exc(lr, _("reading manifest delta %s") % short(n), inst)
159 ui.progress('manifests', None)
154
160
155 ui.status(_("crosschecking files in changesets and manifests\n"))
161 ui.status(_("crosschecking files in changesets and manifests\n"))
156
162
163 total = len(mflinkrevs) + len(filelinkrevs) + len(filenodes)
164 count = 0
157 if havemf:
165 if havemf:
158 for c, m in sorted([(c, m) for m in mflinkrevs
166 for c, m in sorted([(c, m) for m in mflinkrevs
159 for c in mflinkrevs[m]]):
167 for c in mflinkrevs[m]]):
168 count += 1
169 ui.progress('crosscheck', count, total=total)
160 err(c, _("changeset refers to unknown manifest %s") % short(m))
170 err(c, _("changeset refers to unknown manifest %s") % short(m))
161 mflinkrevs = None # del is bad here due to scope issues
171 mflinkrevs = None # del is bad here due to scope issues
162
172
163 for f in sorted(filelinkrevs):
173 for f in sorted(filelinkrevs):
174 count += 1
175 ui.progress('crosscheck', count, total=total)
164 if f not in filenodes:
176 if f not in filenodes:
165 lr = filelinkrevs[f][0]
177 lr = filelinkrevs[f][0]
166 err(lr, _("in changeset but not in manifest"), f)
178 err(lr, _("in changeset but not in manifest"), f)
167
179
168 if havecl:
180 if havecl:
169 for f in sorted(filenodes):
181 for f in sorted(filenodes):
182 count += 1
183 ui.progress('crosscheck', count, total=total)
170 if f not in filelinkrevs:
184 if f not in filelinkrevs:
171 try:
185 try:
172 fl = repo.file(f)
186 fl = repo.file(f)
@@ -175,6 +189,8 b' def _verify(repo):'
175 lr = None
189 lr = None
176 err(lr, _("in manifest but not in changeset"), f)
190 err(lr, _("in manifest but not in changeset"), f)
177
191
192 ui.progress('crosscheck', None)
193
178 ui.status(_("checking files\n"))
194 ui.status(_("checking files\n"))
179
195
180 storefiles = set()
196 storefiles = set()
@@ -185,7 +201,9 b' def _verify(repo):'
185 storefiles.add(f)
201 storefiles.add(f)
186
202
187 files = sorted(set(filenodes) | set(filelinkrevs))
203 files = sorted(set(filenodes) | set(filelinkrevs))
188 for f in files:
204 total = len(files)
205 for i, f in enumerate(files):
206 ui.progress('files', i, item=f, total=total)
189 try:
207 try:
190 linkrevs = filelinkrevs[f]
208 linkrevs = filelinkrevs[f]
191 except KeyError:
209 except KeyError:
@@ -263,6 +281,7 b' def _verify(repo):'
263 fns = [(lr, n) for n, lr in filenodes[f].iteritems()]
281 fns = [(lr, n) for n, lr in filenodes[f].iteritems()]
264 for lr, node in sorted(fns):
282 for lr, node in sorted(fns):
265 err(lr, _("%s in manifests not found") % short(node), f)
283 err(lr, _("%s in manifests not found") % short(node), f)
284 ui.progress('files', None)
266
285
267 for f in storefiles:
286 for f in storefiles:
268 warn(_("warning: orphan revlog '%s'") % f)
287 warn(_("warning: orphan revlog '%s'") % f)
General Comments 0
You need to be logged in to leave comments. Login now