environment for testing we are having BIG performance problems.
Our environment is:
OpenaACS 5.1 (from CVS)
Postgres 7.4.3 (the same with previous 7.4.x and Oracle 9i with the same results)
Linux Debian stable kernel 2.4.20
Files in file system (not in DB)
Opteron Dual for AOLServer (2 Gb RAM)
Opteron Dual for Postgres (2 Gb RAM)
Our data are like this magnitude:
dotlrn users: --- 50.000
classes: --- 6.000
acs_objects --- 1.000.000
cas_permissions --- 700.000
acs_object_paths --- 2.600.000
Before load the data the same processes has a good, reasonably time cost.
After the load of data, all the system has slowed down very much.
-The login page costs 3 - 5 seconds.
-The administration pages are impossible to navigate.
-Many packages have the same problem like administration
but in minor scale.
We think that the main problems arises from the permissions subsystem (mainly we are
detected bad performance in acs_object__name and acs_permission__permission_p or too
many checking instructions, there are many rows to access).
Are there any way to avoid this problem?
If not possible, how could we minimize that big numbers?
Are the subsites a solution?
Minimizing the package number?
Cut the permissions check in administration pages?
Anybody have similar numbers in his installation?
If anybody would like to test our installation, tell us to give him an user/pw.
Any pointer will be welcomed.
PS: We are too detecting that in some case swapping the predicate "exists (subselect)"
with "in (subselect)" is many times better. ????