On the search landing page (Pega Icon -> System -> Settings -> Search), please check that the configuration is correct and the "SystemWorkIndexer” agent is running. This agent should clear up the queue.
I would first check the individual counts for each type of status the items in the Queue Table are; start with something like this:
select distinct(PYITEMSTATUS),count(*) from <schema>.pr_sys_workindexer_queue
group by pyitemstatus order by pyitemstatus
It might take a while to complete.
One possibility is that you have a lot 'Broken-Process' items in there.
If you have; maybe consider the following plan (don't just go ahead and do this though ! if you are unsure - log an SR with GCS and we can work with you!)
- Stop PRPC. (Better not to have new stuff being placed in the table).
- Using Native DB tools: Create a backup table of any 'broken items'; something like this: (As noted in the comment in the SQL: double-check my spelling of 'Broken-Process' here)
CREATE TABLE <schema>.backup_pr_sys_workindexer_queue
as SELECT * from <schema>.pr_sys_workindexer_queue
where pyitemstatus='Broken-Process'; // check this string - I'm typing from memory here !
- Once you have a 'safe' copy of the broken stuff - COMMIT them to DB ; and then you can delete the originals.
delete from <schema>.pr_sys_workindexer_queue
Do another COMMIT here.
Now re-run the original SQL to count the different types of items in the queue; hopefully you should now have significantly less that 30 Million (wow! by the way!) entries you currently have.
You can usually do this sort of thing from SMA / prsysmgmt - but unfortunately the UI will break if there is a really high number of entries like you have here. (As the UI tries to list all the existing entries for you - this doesn't scale past a few hundred items really).