Redisearch concurrency in Lua and Multi-Exec

How does Redisearch concurrency work in Lua or Multi-Exec transactions?

This old post suggests that FT.SEARCH was not allowed inside a Lua script in non-safe mode. I tried it now with Redis 5.0.7 + Redisearch 1.6.8 and FT.SEARCH works in both Lua and Multi-Exec.

Is the concurrency disabled inside a transaction? Or is it “relaxed” somehow? The latter seems to be unlikely because it would invalidate the very semantics of Lua or Multi-Exec transaction.


When you are using RediSearch commands from Lua/Multi-Exec those commands are running on the main thread, i.e no concurrency.