diff mercurial/revset.py @ 18411:8b0f0dd56cec

bundlerepo: improve performance for bundle() revset expression Create the set of revision numbers directly instead of creating a list of nodes first.
author Mads Kiilerich <madski@unity3d.com>
date Wed, 16 Jan 2013 20:41:34 +0100
parents f3b21beb9802
children 692cbda1eb50
line wrap: on
line diff
--- a/mercurial/revset.py	Wed Jan 16 20:41:32 2013 +0100
+++ b/mercurial/revset.py	Wed Jan 16 20:41:34 2013 +0100
@@ -450,11 +450,10 @@
     Bundle must be specified by the -R option."""
 
     try:
-        bundlenodes = repo.changelog.bundlenodes
+        bundlerevs = repo.changelog.bundlerevs
     except AttributeError:
         raise util.Abort(_("no bundle provided - specify with -R"))
-    revs = set(repo[n].rev() for n in bundlenodes)
-    return [r for r in subset if r in revs]
+    return [r for r in subset if r in bundlerevs]
 
 def checkstatus(repo, subset, pat, field):
     m = None