Issue 1339: annot lookup com.google.gerrit.server.project.ProjectCacheImpl$ListKey in "project_list"
Status:  New
Owner: ----
Reported by matejic...@gmail.com, Apr 18, 2012
Affected Version:
2.3
What steps will reproduce the problem?
1.mkdir P:\git\Git\gerrit-git-repo
2.cd P:\git\Git\gerrit-git-repo
4.git init
5.c:\Program Files (x86)\Java\jre6\bin\java.exe" -jar gerrit.war init -d P:\git\Git\Gerrit
6. use defaults except set git repo to P:\git\Git\gerrit-git-repo
7. P:\git\Git\Gerrit\bin>"c:\Program Files (x86)\Java\jre6\bin\java.exe" -jar gerrit.war daemon -d P:\git\Git\Gerrit
8. Open browser
9. Create accout and log in.
9. Click on Admin -> Projects

What is the expected output? What do you see instead?
I would expect to see web page with no projects.
I see "Application Error Server Error Internal server error"

Please provide any additional information below.

ERROR com.google.gerrit.ehcache.PopulatingCache : Cannot lookup com.google.gerrit.server.project.ProjectCacheImpl$ListKey@11185e7 in "project_list"
net.sf.ehcache.CacheException: Could not fetch object for cache entry with key "com.google.gerrit.server.project.ProjectCacheImpl$ListKey@11185e7".
	at net.sf.ehcache.constructs.blocking.SelfPopulatingCache.get(SelfPopulatingCache.java:88)
	at com.google.gerrit.ehcache.PopulatingCache.get(PopulatingCache.java:84)
	at com.google.gerrit.server.cache.ProxyCache.get(ProxyCache.java:26)
	at com.google.gerrit.server.project.ProjectCacheImpl.all(ProjectCacheImpl.java:132)
	at com.google.gerrit.httpd.rpc.project.VisibleProjects.getProjects(VisibleProjects.java:58)
	at com.google.gerrit.httpd.rpc.project.VisibleProjects.call(VisibleProjects.java:51)
	at com.google.gerrit.httpd.rpc.project.VisibleProjects.call(VisibleProjects.java:31)
	at com.google.gerrit.httpd.rpc.Handler.to(Handler.java:65)
	at com.google.gerrit.httpd.rpc.project.ProjectAdminServiceImpl.visibleProjects(ProjectAdminServiceImpl.java:74)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at com.google.gwtjsonrpc.server.MethodHandle.invoke(MethodHandle.java:91)
	at com.google.gwtjsonrpc.server.JsonServlet.doService(JsonServlet.java:382)
	at com.google.gwtjsonrpc.server.JsonServlet.service(JsonServlet.java:268)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:216)
	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:141)
	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:93)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:63)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
	at com.google.gwtexpui.server.CacheControlFilter.doFilter(CacheControlFilter.java:76)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:129)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
	at com.google.gerrit.httpd.RequestCleanupFilter.doFilter(RequestCleanupFilter.java:54)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:129)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:134)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:59)
	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:122)
	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:110)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:921)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
	at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:59)
	at com.google.gerrit.pgm.http.jetty.JettyServer$1.handle(JettyServer.java:139)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
	at org.eclipse.jetty.server.Server.handle(Server.java:352)
	at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
	at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1069)
	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:805)
	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218)
	at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
	at java.lang.String.substring(Unknown Source)
	at com.google.gerrit.server.git.LocalDiskRepositoryManager.getProjectName(LocalDiskRepositoryManager.java:303)
	at com.google.gerrit.server.git.LocalDiskRepositoryManager.scanProjects(LocalDiskRepositoryManager.java:286)
	at com.google.gerrit.server.git.LocalDiskRepositoryManager.list(LocalDiskRepositoryManager.java:272)
	at com.google.gerrit.server.project.ProjectCacheImpl$Lister.createEntry(ProjectCacheImpl.java:230)
	at com.google.gerrit.server.project.ProjectCacheImpl$Lister.createEntry(ProjectCacheImpl.java:220)
	at com.google.gerrit.ehcache.PopulatingCache$1.createEntry(PopulatingCache.java:54)
	at net.sf.ehcache.constructs.blocking.SelfPopulatingCache.get(SelfPopulatingCache.java:72)
	... 55 more