Hi Karl,

I set up two MCF instances (quick setup) on the same machine, using
the same Postgres 9.3 instance (with different databases
"org.apache.manifoldcf.database.name" of course).
After a couple of days I've got a performance issue: one MCF instance
has become very slow - it processes a few docs per hour only. I guess,
the bottleneck is the database:

"normal" instance:
SELECT status, count(*) AS count FROM jobqueue GROUP BY status --
738.311 rows in the table, took 1,2 sec
"G";50674
"F";68
"P";149179
"C";402367
"A";33
"Z";136676

"slow" instance (currently with a single active job):
SELECT status, count(*) AS count FROM jobqueue GROUP BY status --
2.745.329 rows in the table, took 350 sec
"G";337922  --STATUS_PENDINGPURGATORY
"F";449     --STATUS_ACTIVEPURGATORY
"P";25909   --STATUS_PENDING
"C";562772  --STATUS_COMPLETE
"A";9       --STATUS_ACTIVE
"Z";1644927 --STATUS_PURGATORY

Since "count(*)" is terrible slow in Postgres, I used the following
sql to count jobqueue's rows:
SELECT reltuples::bigint AS approximate_row_count FROM pg_class WHERE
relname = 'jobqueue';

Both MCF instances have the same number of working threads, database
handles etc.
Is the database "full"? What could you recommend to improve the performance?

Thank you!
Konstantin

Reply via email to