On Tue, Jun 16, 2009 at 4:51 AM, Wendy Smoak <wsm...@gmail.com> wrote:
> The actual system with the performance problem is using MySQL, however > these results and the graph were from a fresh 1.3.3 instance using the > embedded Derby database. > > Another use case that is slow is simply logging in. I've personally > timed it at 3 minutes from clicking the button to log in, before I see > the next page rendered. > > Brett suggested turning on the JPOX sql query logging, and here's what > I see while logging in as admin: > > Continuum 1.3.3 with 20 project groups - 3,192 SELECT queries > Continuum 1.3.3 with 400 project groups - 60,184 SELECT queries > > It's not especially slow to log in as admin (5-6 seconds) with 400 > project groups, but this is with an embedded Derby db, so the queries > aren't going out on the network. > > In any case, why does it need to do *that* many queries simply to > process a login? One of these many queries I saw yesterday from the logs was due to the cache being reset during each login. The cache is cleared first then all the roles/permissions are queried and added to the cache. Since we're using resource-based roles, it takes longer to process the login if there are a lot of resources (e.g. projects).. - Deng > > > -- > Wendy > > On Mon, Jun 15, 2009 at 11:58 AM, Emmanuel > Venisse<emmanuel.veni...@gmail.com> wrote: > > It's very bad. > > > > Do you use an embedded derby DB or an external? I don't think it is good > to > > use an embedded DB for a "big" DB. > > > > Emmanuel > > > > On Mon, Jun 15, 2009 at 6:39 PM, Wendy Smoak <wsm...@gmail.com> wrote: > > > >> I've noticed Continuum getting slower and slower... we're trying to > >> track down exactly why, but one theory relates to there being lots of > >> user roles that have to be checked, which would mean there are lots of > >> project groups. > >> > >> To try to reproduce that, I added 400 groups to a fresh Continuum > >> 1.3.3 instance. I notice that it takes longer and longer to add each > >> group. Here's a graph: > >> > >> > http://people.apache.org/~wsmoak/continuum/continuum-1.3.3-add-400-groups.png<http://people.apache.org/%7Ewsmoak/continuum/continuum-1.3.3-add-400-groups.png> > < > http://people.apache.org/%7Ewsmoak/continuum/continuum-1.3.3-add-400-groups.png > > > >> > >> On trunk it's similar. There in the audit log I can see there are 3 > >> seconds between adding the second and third groups, and 19 seconds > >> between groups 399 and 400. All in all it takes over an hour to add > >> 400 groups to an instance. > >> > >> The test code is in the sandbox: > >> > >> > http://svn.apache.org/repos/asf/continuum/sandbox/continuum-webapp-test-many-roles/ > >> > >> Any ideas? Are we missing an index on some field? > >> > >> -- > >> Wendy > >> > > >