diff --git a/mercurial/scmutil.py b/mercurial/scmutil.py
--- a/mercurial/scmutil.py
+++ b/mercurial/scmutil.py
@@ -503,7 +503,7 @@
         except KeyError:
             pass
 
-        node = repo.unfiltered().changelog._partialmatch(symbol)
+        node = resolvehexnodeidprefix(repo, symbol)
         if node is not None:
             rev = repo.changelog.rev(node)
             return repo[rev]