We are running a jasper server instance with many roles and it are running into performance problems when running the run report or schedule report flow. jasperserver-pro v 2.1.0. Can someone please tell me why the DetachedCriteria is being used. I'm thinking of removing this to increase performance. I think this is causing a couple of problems: 1) I'm guessing DetachedCriteria disables lazy instantiation, thus when the hibernate class RepoUser via the UserAuthorityServiceImpl.getRepoUser(), it is very sluggish since it proactively loads (not lazy instantiation) all the roles 1 round trip query at a time. I fixed this bottleneck by changing the RepoUser.hbm.xml to changed lazy="true" to be batch-size="1000" and it works much, much faster, like 5x faster. 2) I'm guessing that this doesn't use the hibernate cash and thus I'm seeing multiple loads of the same objects which obviously have not changed in the repository, for example the same RepoUser will be loaded several times as in (1) when creating input control wrappers. 3) Also I'm seeing pretty bad performance in HibernateRepositoryServiceImpl.findByName which gets called in a loop via a hibernate filter, I'm not sure this is a problem caused by DetachedCriteria, but I'm still trying to figure out how to fix this and if anyone has any ideas, I would appreciate it. Keith