Overall a great product, but I've found one issue that is affecting us.
We have a process where we remove large numbers of posts and reimport them from a different system.
Since the rewrite of the indexing system, if I go to the Posts screen in the admin area, select a pages worth (i.e. 20 of them). Then from the "Bulk Actions" move them to the Bin (Trash), it will take a good 20 seconds to finish the operation. With larger posts it can be a lot longer than that.
Then going to the Bin and Emptying it, will take even longer. From what I can tell from doing some profiling with xdebug, it's calling curl to do a reindex for every save_post. Which seems fair enough.
To speed things up, I thought we could uncheck the "Auto-index" box in the WP FullText Search Options screen. But unchecking that and saving, or unchecking the "Enable FullText Search" and saving, it still does the curl request and is noticeably slow.
If I deactivate the plugin, then normal processing times return and the bulk operations resume at normal sub 1 second speeds.
This is equally true for importing new posts, or creating them with wp cli.
My work around for the moment, is to deactivate the plugin before I do any bulk delete/creation operations, then do them, then reactivate the plugin, and go to the control panel, then pause and resume indexing and it seems to catch up (usually quite fast!).
Would it be possible to put some sort of functionality in, where a save_post call doesn't block it's completion until it's been indexed, or a option put into the control panel where you could allow for it to asynchronously index posts rather than intercepting every single post save?
Also the unchecking of "Auto-index" option, still seems to leave some of the intercepting of post saving enabled!