Thank you! On 07.05.2013 20:17, Gabor Szabo wrote: > After some use of Trac the we encountered slowness of the system. > Lately I noticed it happens when someone tries to access the user list, > but only now did I check the database: > > sqlite> select count(*) from session_attribute; > 781194 > sqlite> select count(*) from session_attribute where authenticated <> 1; > 774670 > sqlite> select count(*) from session_attribute where authenticated = 1; > 6538 > > sqlite> select count(*) from session; > 300174 > sqlite> select count(*) from session where authenticated <> 1; > 298771 > sqlite> select count(*) from session where authenticated = 1; > 1403 > > In other words, about 99-99.5% of the sessions tables are used for information > about people who are not authenticated users. > > My solution: clean up the session tables, remove not-so-important entries: > delete from session_attribute where authenticated <> 1; > delete from session where authenticated <> 1; > > And now the user list loads fast again. > > BTW here are the schemas of the the two tables: > > > sqlite> .schema session > CREATE TABLE session ( > sid text, > authenticated integer, > last_visit integer, > UNIQUE (sid,authenticated) > ); > CREATE INDEX session_authenticated_idx ON session (authenticated); > CREATE INDEX session_last_visit_idx ON session (last_visit); > sqlite> .schema session_attribute > CREATE TABLE session_attribute ( > sid text, > authenticated integer, > name text, > value text, > UNIQUE (sid,authenticated,name) > ); > > > Gabor > _______________________________________________ > Padre-dev mailing list > Padre-dev@perlide.org > http://mail.perlide.org/mailman/listinfo/padre-dev >
_______________________________________________ Padre-dev mailing list Padre-dev@perlide.org http://mail.perlide.org/mailman/listinfo/padre-dev