Production indices often require indexing operations that involves larges amount of data. We recommend to perform these operations using a temporary index to ensure that the index is always up, live, and updated without interruption. Then, you can replace the original index with the temporary one.
If you need to perform these kind of operations, the recommended way is to use the method replaceAllObjects, which handles this process behind the scenes.
The index used by this process will have the same name as your main index with _tmp at the end (for example myindex_tmp). If you see a tmp index like this it means that replaceAllObjects was triggered and the reindex is running.
If you find that the tmp index is not increasing in size for a long period of time (over an hour), this might mean that your reindex is not running any more. In such case we recommend checking that you did not trigger any other reindexing processes. You can also check that you have not created any indexes of your own with _tmp at the end as this might cause a conflict with the one we create automatically.
When using temporary indices, you should keep in mind that the records contained in these indices will be taken into account when measuring your records usage. You can find more information about this on this article: How records usage is measured?