Details
-
Bug
-
Resolution: Timed out
-
Low
-
2.10.4
-
None
-
Severity 3 - Minor
-
Description
Due to non-existent/deleted users in a group used in Crucible Project Allowed Reviewers setting, user can't access the old reviews anymore and create review.
2013-07-16 07:51:18,221 ERROR - Exception "javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.el.ELException: Problems calling function 'crev:showJoinReview'" (javax.servlet.ServletException) while processing "/source/cru/CR-5" (Referer:"https://localhost:8060/source/") javax.servlet.ServletException: javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.el.ELException: Problems calling function 'crev:showJoinReview' at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:285) at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:111) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669) at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1526) at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:46) ... Caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.el.ELException: Problems calling function 'crev:showJoinReview' ... Caused by: javax.servlet.jsp.JspException: javax.el.ELException: Problems calling function 'crev:showJoinReview' ... Caused by: javax.el.ELException: Problems calling function 'crev:showJoinReview' ... Caused by: java.lang.NullPointerException at com.cenqua.crucible.model.managers.CrucibleUserManager$1.compare(CrucibleUserManager.java:95) at com.cenqua.crucible.model.managers.CrucibleUserManager$1.compare(CrucibleUserManager.java:93) at java.util.TimSort.countRunAndMakeAscending(TimSort.java:324) at java.util.TimSort.sort(TimSort.java:203) at java.util.TimSort.sort(TimSort.java:173) at java.util.Arrays.sort(Arrays.java:659) at java.util.Collections.sort(Collections.java:217) at com.cenqua.crucible.model.managers.CrucibleUserManager.usernamesToUsers(CrucibleUserManager.java:93) at com.cenqua.crucible.model.managers.CrucibleUserManager.getGroupOfUsers(CrucibleUserManager.java:106) at com.cenqua.crucible.model.Project.getAllowedReviewers(Project.java:114) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Workaround
- Remove all the groups from Crucible Project settings
- Remove non-existent/deleted users from all the groups
Suggestion
Would like to have database integrity checker that will detect this integrity issue