In the function queuePermutationGeneration(), it queues groups of entities 15 at a time per queue item. When processed from the queue by cron, if a queue item halts with a fatal error due to a single entity, nothing is logged to watchdog, and the other entities in the group will not be indexed, even if there's nothing wrong with them.
This is causing issues in production for me, I think, because items become missing from the search index due to another item's failure, and it's not possible to index them easily. I have to either re-save each item manually that is missing, or I have to clear out the entire search index and try again, which won't work if the same items fail again.
bash-4.4# drush sapi-gpq
The queue has currently 3 items. Processing will process all items possible. [ok]
Items processed 0 left items 3.
In the example above, three queue items are failing. This means that because of one (or more) entity per item, the other 14 entities cannot be indexed.
Comments
Comment #2
solideogloria commented